@ensdomains/ensjs 3.0.0-alpha.41 → 3.0.0-alpha.43
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/dist/cjs/contracts/getContractAddress.js +4 -4
- package/dist/cjs/functions/commitName.js +2 -3
- package/dist/cjs/functions/createSubname.js +2 -8
- package/dist/cjs/functions/getDecryptedName.js +111 -0
- package/dist/cjs/functions/getHistory.js +14 -7
- package/dist/cjs/functions/getNames.js +10 -6
- package/dist/cjs/functions/getOwner.js +28 -15
- package/dist/cjs/functions/getPrice.js +6 -6
- package/dist/cjs/functions/getProfile.js +11 -5
- package/dist/cjs/functions/getWrapperData.js +4 -5
- package/dist/cjs/functions/renewNames.js +13 -20
- package/dist/cjs/functions/{burnFuses.js → setFuses.js} +24 -6
- package/dist/cjs/functions/wrapName.js +9 -25
- package/dist/cjs/generated/factories/BaseRegistrarImplementation__factory.js +2 -2
- package/dist/cjs/generated/factories/BulkRenewal__factory.js +2 -2
- package/dist/cjs/generated/factories/DNSRegistrar__factory.js +2 -2
- package/dist/cjs/generated/factories/DNSSECImpl__factory.js +2 -2
- package/dist/cjs/generated/factories/DefaultReverseResolver__factory.js +2 -2
- package/dist/cjs/generated/factories/ENSRegistry__factory.js +2 -2
- package/dist/cjs/generated/factories/ETHRegistrarController__factory.js +8 -57
- package/dist/cjs/generated/factories/Multicall__factory.js +2 -2
- package/dist/cjs/generated/factories/NameWrapper__factory.js +92 -71
- package/dist/cjs/generated/factories/P256SHA256Algorithm__factory.js +2 -2
- package/dist/cjs/generated/factories/PublicResolver__factory.js +85 -2
- package/dist/cjs/generated/factories/RSASHA1Algorithm__factory.js +2 -2
- package/dist/cjs/generated/factories/RSASHA256Algorithm__factory.js +2 -2
- package/dist/cjs/generated/factories/ReverseRegistrar__factory.js +2 -2
- package/dist/cjs/generated/factories/Root__factory.js +2 -2
- package/dist/cjs/generated/factories/SHA1Digest__factory.js +2 -2
- package/dist/cjs/generated/factories/SHA1NSEC3Digest__factory.js +2 -2
- package/dist/cjs/generated/factories/SHA256Digest__factory.js +2 -2
- package/dist/cjs/generated/factories/StaticMetadataService__factory.js +2 -2
- package/dist/cjs/generated/factories/TLDPublicSuffixList__factory.js +2 -2
- package/dist/cjs/generated/factories/UniversalResolver__factory.js +69 -4
- package/dist/cjs/index.js +6 -4
- package/dist/cjs/utils/ccip.js +3 -3
- package/dist/cjs/utils/consts.js +3 -1
- package/dist/cjs/utils/fuses.js +218 -53
- package/dist/cjs/utils/hexEncodedName.js +2 -0
- package/dist/cjs/utils/labels.js +14 -8
- package/dist/cjs/utils/normalise.js +2 -2
- package/dist/cjs/utils/recordHelpers.js +4 -3
- package/dist/cjs/utils/registerHelpers.js +11 -25
- package/dist/cjs/utils/subgraph-types.js +16 -0
- package/dist/cjs/utils/wrapper.js +3 -3
- package/dist/esm/contracts/getContractAddress.mjs +4 -4
- package/dist/esm/functions/commitName.mjs +2 -3
- package/dist/esm/functions/createSubname.mjs +2 -2
- package/dist/esm/functions/getDecryptedName.mjs +96 -0
- package/dist/esm/functions/getHistory.mjs +14 -7
- package/dist/esm/functions/getNames.mjs +10 -6
- package/dist/esm/functions/getOwner.mjs +26 -13
- package/dist/esm/functions/getPrice.mjs +2 -2
- package/dist/esm/functions/getProfile.mjs +10 -4
- package/dist/esm/functions/getWrapperData.mjs +4 -5
- package/dist/esm/functions/renewNames.mjs +13 -20
- package/dist/esm/functions/setFuses.mjs +30 -0
- package/dist/esm/functions/wrapName.mjs +9 -19
- package/dist/esm/generated/factories/BaseRegistrarImplementation__factory.mjs +1 -1
- package/dist/esm/generated/factories/BulkRenewal__factory.mjs +1 -1
- package/dist/esm/generated/factories/DNSRegistrar__factory.mjs +1 -1
- package/dist/esm/generated/factories/DNSSECImpl__factory.mjs +1 -1
- package/dist/esm/generated/factories/DefaultReverseResolver__factory.mjs +1 -1
- package/dist/esm/generated/factories/ENSRegistry__factory.mjs +1 -1
- package/dist/esm/generated/factories/ETHRegistrarController__factory.mjs +7 -56
- package/dist/esm/generated/factories/Multicall__factory.mjs +1 -1
- package/dist/esm/generated/factories/NameWrapper__factory.mjs +91 -70
- package/dist/esm/generated/factories/P256SHA256Algorithm__factory.mjs +1 -1
- package/dist/esm/generated/factories/PublicResolver__factory.mjs +84 -1
- package/dist/esm/generated/factories/RSASHA1Algorithm__factory.mjs +1 -1
- package/dist/esm/generated/factories/RSASHA256Algorithm__factory.mjs +1 -1
- package/dist/esm/generated/factories/ReverseRegistrar__factory.mjs +1 -1
- package/dist/esm/generated/factories/Root__factory.mjs +1 -1
- package/dist/esm/generated/factories/SHA1Digest__factory.mjs +1 -1
- package/dist/esm/generated/factories/SHA1NSEC3Digest__factory.mjs +1 -1
- package/dist/esm/generated/factories/SHA256Digest__factory.mjs +1 -1
- package/dist/esm/generated/factories/StaticMetadataService__factory.mjs +1 -1
- package/dist/esm/generated/factories/TLDPublicSuffixList__factory.mjs +1 -1
- package/dist/esm/generated/factories/UniversalResolver__factory.mjs +68 -3
- package/dist/esm/index.mjs +6 -4
- package/dist/esm/utils/ccip.mjs +2 -2
- package/dist/esm/utils/consts.mjs +3 -1
- package/dist/esm/utils/fuses.mjs +218 -53
- package/dist/esm/utils/hexEncodedName.mjs +2 -0
- package/dist/esm/utils/labels.mjs +11 -8
- package/dist/esm/utils/normalise.mjs +1 -1
- package/dist/esm/utils/recordHelpers.mjs +2 -1
- package/dist/esm/utils/registerHelpers.mjs +10 -18
- package/dist/esm/utils/subgraph-types.mjs +0 -0
- package/dist/esm/utils/wrapper.mjs +2 -2
- package/dist/types/functions/commitName.d.ts +0 -1
- package/dist/types/functions/createSubname.d.ts +2 -2
- package/dist/types/functions/getDecryptedName.d.ts +9 -0
- package/dist/types/functions/getHistory.d.ts +1 -1
- package/dist/types/functions/getNames.d.ts +3 -3
- package/dist/types/functions/getOwner.d.ts +1 -0
- package/dist/types/functions/getPrice.d.ts +1 -1
- package/dist/types/functions/getProfile.d.ts +1 -0
- package/dist/types/functions/getRecords.d.ts +1 -0
- package/dist/types/functions/getWrapperData.d.ts +44 -5
- package/dist/types/functions/registerName.d.ts +1 -1
- package/dist/types/functions/renewNames.d.ts +5 -6
- package/dist/types/functions/setFuses.d.ts +7 -0
- package/dist/types/functions/types.d.ts +8 -4
- package/dist/types/functions/wrapName.d.ts +3 -3
- package/dist/types/generated/ETHRegistrarController.d.ts +13 -36
- package/dist/types/generated/NameWrapper.d.ts +97 -52
- package/dist/types/generated/PublicResolver.d.ts +50 -1
- package/dist/types/generated/UniversalResolver.d.ts +79 -32
- package/dist/types/generated/factories/UniversalResolver__factory.d.ts +15 -0
- package/dist/types/index.d.ts +60 -9
- package/dist/types/static.d.ts +1 -1
- package/dist/types/utils/consts.d.ts +1 -0
- package/dist/types/utils/fuses.d.ts +115 -45
- package/dist/types/utils/hexEncodedName.d.ts +1 -0
- package/dist/types/utils/labels.d.ts +2 -1
- package/dist/types/utils/registerHelpers.d.ts +7 -25
- package/dist/types/utils/subgraph-types.d.ts +284 -0
- package/dist/types/utils/wrapper.d.ts +1 -1
- package/package.json +5 -5
- package/src/contracts/getContractAddress.ts +4 -4
- package/src/functions/commitName.test.ts +0 -3
- package/src/functions/commitName.ts +1 -2
- package/src/functions/createSubname.ts +5 -6
- package/src/functions/getDecryptedName.test.ts +49 -0
- package/src/functions/getDecryptedName.ts +119 -0
- package/src/functions/getExpiry.ts +1 -1
- package/src/functions/getHistory.ts +59 -25
- package/src/functions/getNames.test.ts +2 -2
- package/src/functions/getNames.ts +26 -13
- package/src/functions/getOwner.test.ts +62 -3
- package/src/functions/getOwner.ts +33 -13
- package/src/functions/getPrice.ts +2 -2
- package/src/functions/getProfile.test.ts +7 -0
- package/src/functions/getProfile.ts +13 -4
- package/src/functions/getWrapperData.test.ts +11 -45
- package/src/functions/getWrapperData.ts +8 -6
- package/src/functions/registerName.test.ts +3 -3
- package/src/functions/registerName.ts +1 -1
- package/src/functions/renewNames.ts +18 -24
- package/src/functions/setFuses.test.ts +240 -0
- package/src/functions/setFuses.ts +44 -0
- package/src/functions/types.ts +8 -4
- package/src/functions/wrapName.test.ts +8 -7
- package/src/functions/wrapName.ts +11 -25
- package/src/generated/ETHRegistrarController.ts +12 -79
- package/src/generated/NameWrapper.ts +155 -99
- package/src/generated/PublicResolver.ts +123 -0
- package/src/generated/UniversalResolver.ts +157 -16
- package/src/generated/factories/BaseRegistrarImplementation__factory.ts +1 -1
- package/src/generated/factories/BulkRenewal__factory.ts +1 -1
- package/src/generated/factories/DNSRegistrar__factory.ts +1 -1
- package/src/generated/factories/DNSSECImpl__factory.ts +1 -1
- package/src/generated/factories/DefaultReverseResolver__factory.ts +1 -1
- package/src/generated/factories/ENSRegistry__factory.ts +1 -1
- package/src/generated/factories/ETHRegistrarController__factory.ts +7 -56
- package/src/generated/factories/Multicall__factory.ts +1 -1
- package/src/generated/factories/NameWrapper__factory.ts +91 -70
- package/src/generated/factories/P256SHA256Algorithm__factory.ts +1 -1
- package/src/generated/factories/PublicResolver__factory.ts +84 -1
- package/src/generated/factories/RSASHA1Algorithm__factory.ts +1 -1
- package/src/generated/factories/RSASHA256Algorithm__factory.ts +1 -1
- package/src/generated/factories/ReverseRegistrar__factory.ts +1 -1
- package/src/generated/factories/Root__factory.ts +1 -1
- package/src/generated/factories/SHA1Digest__factory.ts +1 -1
- package/src/generated/factories/SHA1NSEC3Digest__factory.ts +1 -1
- package/src/generated/factories/SHA256Digest__factory.ts +1 -1
- package/src/generated/factories/StaticMetadataService__factory.ts +1 -1
- package/src/generated/factories/TLDPublicSuffixList__factory.ts +1 -1
- package/src/generated/factories/UniversalResolver__factory.ts +68 -3
- package/src/index.ts +15 -14
- package/src/static.ts +1 -1
- package/src/utils/ccip.ts +2 -2
- package/src/utils/consts.ts +1 -0
- package/src/utils/fuses.ts +299 -102
- package/src/utils/hexEncodedName.ts +3 -0
- package/src/utils/labels.ts +13 -11
- package/src/utils/normalise.ts +1 -1
- package/src/utils/recordHelpers.ts +2 -1
- package/src/utils/registerHelpers.ts +14 -42
- package/src/utils/subgraph-types.ts +312 -0
- package/src/utils/wrapper.ts +2 -2
- package/dist/cjs/utils/generateFuseInput.js +0 -40
- package/dist/esm/functions/burnFuses.mjs +0 -12
- package/dist/esm/utils/generateFuseInput.mjs +0 -15
- package/dist/types/functions/burnFuses.d.ts +0 -3
- package/dist/types/utils/generateFuseInput.d.ts +0 -3
- package/src/functions/burnFuses.test.ts +0 -148
- package/src/functions/burnFuses.ts +0 -16
- package/src/utils/generateFuseInput.ts +0 -13
|
@@ -37,19 +37,19 @@ const addresses = {
|
|
|
37
37
|
"1": "0x283af0b28c62c092c9727f1ee09c02ca627eb7f5",
|
|
38
38
|
"3": "0xa5627AB7Ae47063B533622C34FEBDb52d3281dF8",
|
|
39
39
|
"4": "0x283af0b28c62c092c9727f1ee09c02ca627eb7f5",
|
|
40
|
-
"5": "
|
|
40
|
+
"5": "0xb7A1f9e633fdeaAa2ec44bE00a61a7Db9a733D70"
|
|
41
41
|
},
|
|
42
42
|
Multicall: "0xcA11bde05977b3631167028862bE2a173976CA11",
|
|
43
43
|
NameWrapper: {
|
|
44
44
|
"1": "0x0000000000000000000000000000000000000000",
|
|
45
45
|
"3": "0xF82155e2a43Be0871821E9654Fc8Ae894FB8307C",
|
|
46
46
|
"4": "0x0000000000000000000000000000000000000000",
|
|
47
|
-
"5": "
|
|
47
|
+
"5": "0xEe1F756aCde7E81B2D8cC6aB3c8A1E2cE6db0F39"
|
|
48
48
|
},
|
|
49
49
|
PublicResolver: {
|
|
50
50
|
"1": "0x4976fb03C32e5B8cfe2b6cCB31c09Ba78EBaBa41",
|
|
51
51
|
"3": "0x13F0659Ee6bb7484C884FEeFb7F75C93951ef837",
|
|
52
|
-
"5": "
|
|
52
|
+
"5": "0x2800Ec5BAB9CE9226d19E0ad5BC607e3cfC4347E"
|
|
53
53
|
},
|
|
54
54
|
ENSRegistry: {
|
|
55
55
|
"1": "0x00000000000c2e074ec69a0dfb2997ba6c7d2e1e",
|
|
@@ -60,7 +60,7 @@ const addresses = {
|
|
|
60
60
|
ReverseRegistrar: {
|
|
61
61
|
"1": "0x084b1c3C81545d370f3634392De611CaaBFf8148",
|
|
62
62
|
"3": "0x806246b52f8cB61655d3038c58D2f63Aa55d4edE",
|
|
63
|
-
"5": "
|
|
63
|
+
"5": "0x9a879320A9F7ad2BBb02063d67baF5551D6BD8B0"
|
|
64
64
|
},
|
|
65
65
|
UniversalResolver: {
|
|
66
66
|
"1": "0x74E20Bd2A1fE0cdbe45b9A1d89cb7e0a45b36376",
|
|
@@ -33,7 +33,7 @@ async function commitName_default({ contracts }, name, { resolverAddress, ...par
|
|
|
33
33
|
void 0,
|
|
34
34
|
resolverAddress
|
|
35
35
|
);
|
|
36
|
-
const { secret, commitment
|
|
36
|
+
const { secret, commitment } = (0, import_registerHelpers.makeCommitment)({
|
|
37
37
|
name,
|
|
38
38
|
resolver,
|
|
39
39
|
...params
|
|
@@ -42,8 +42,7 @@ async function commitName_default({ contracts }, name, { resolverAddress, ...par
|
|
|
42
42
|
...await controller.populateTransaction.commit(commitment),
|
|
43
43
|
customData: {
|
|
44
44
|
secret,
|
|
45
|
-
commitment
|
|
46
|
-
wrapperExpiry
|
|
45
|
+
commitment
|
|
47
46
|
}
|
|
48
47
|
};
|
|
49
48
|
}
|
|
@@ -1,9 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __create = Object.create;
|
|
3
2
|
var __defProp = Object.defineProperty;
|
|
4
3
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
4
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
-
var __getProtoOf = Object.getPrototypeOf;
|
|
7
5
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
6
|
var __export = (target, all) => {
|
|
9
7
|
for (var name in all)
|
|
@@ -17,10 +15,6 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
17
15
|
}
|
|
18
16
|
return to;
|
|
19
17
|
};
|
|
20
|
-
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
-
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
22
|
-
mod
|
|
23
|
-
));
|
|
24
18
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
25
19
|
var createSubname_exports = {};
|
|
26
20
|
__export(createSubname_exports, {
|
|
@@ -28,7 +22,7 @@ __export(createSubname_exports, {
|
|
|
28
22
|
});
|
|
29
23
|
module.exports = __toCommonJS(createSubname_exports);
|
|
30
24
|
var import_solidity = require("@ethersproject/solidity");
|
|
31
|
-
var
|
|
25
|
+
var import_fuses = require("../utils/fuses");
|
|
32
26
|
var import_normalise = require("../utils/normalise");
|
|
33
27
|
var import_wrapper = require("../utils/wrapper");
|
|
34
28
|
async function createSubname_default({
|
|
@@ -68,7 +62,7 @@ async function createSubname_default({
|
|
|
68
62
|
name,
|
|
69
63
|
"expiry" in wrapperArgs ? wrapperArgs.expiry : void 0
|
|
70
64
|
);
|
|
71
|
-
const generatedFuses = "fuses" in wrapperArgs && wrapperArgs.fuses ? (0,
|
|
65
|
+
const generatedFuses = "fuses" in wrapperArgs && wrapperArgs.fuses ? (0, import_fuses.encodeFuses)(wrapperArgs.fuses) : 0;
|
|
72
66
|
return nameWrapper.populateTransaction.setSubnodeRecord(
|
|
73
67
|
parentNodehash,
|
|
74
68
|
label,
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
var getDecryptedName_exports = {};
|
|
20
|
+
__export(getDecryptedName_exports, {
|
|
21
|
+
default: () => getDecryptedName_default
|
|
22
|
+
});
|
|
23
|
+
module.exports = __toCommonJS(getDecryptedName_exports);
|
|
24
|
+
var import_bytes = require("@ethersproject/bytes");
|
|
25
|
+
var import_hexEncodedName = require("../utils/hexEncodedName");
|
|
26
|
+
var import_labels = require("../utils/labels");
|
|
27
|
+
var import_normalise = require("../utils/normalise");
|
|
28
|
+
const raw = async ({ contracts }, name, allowIncomplete) => {
|
|
29
|
+
const nameWrapper = await (contracts == null ? void 0 : contracts.getNameWrapper());
|
|
30
|
+
return {
|
|
31
|
+
to: nameWrapper.address,
|
|
32
|
+
data: nameWrapper.interface.encodeFunctionData("names", [(0, import_normalise.namehash)(name)])
|
|
33
|
+
};
|
|
34
|
+
};
|
|
35
|
+
const generateNameQuery = (labels) => {
|
|
36
|
+
let query = "";
|
|
37
|
+
for (let i = 0; i < labels.length; i += 1) {
|
|
38
|
+
const label = labels[i];
|
|
39
|
+
if ((0, import_labels.isEncodedLabelhash)(label)) {
|
|
40
|
+
query += `
|
|
41
|
+
label${i}: domains(where: { labelhash: "${(0, import_labels.decodeLabelhash)(
|
|
42
|
+
label
|
|
43
|
+
).toLowerCase()}", labelName_not: null }) {
|
|
44
|
+
labelName
|
|
45
|
+
}
|
|
46
|
+
`;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
return query;
|
|
50
|
+
};
|
|
51
|
+
const decode = async ({ contracts, gqlInstance }, data, name, allowIncomplete = false) => {
|
|
52
|
+
var _a;
|
|
53
|
+
if (data !== null) {
|
|
54
|
+
const nameWrapper = await (contracts == null ? void 0 : contracts.getNameWrapper());
|
|
55
|
+
try {
|
|
56
|
+
const result = nameWrapper.interface.decodeFunctionResult("names", data);
|
|
57
|
+
if ((0, import_bytes.hexStripZeros)(result["0"]) !== "0x") {
|
|
58
|
+
const decoded = (0, import_hexEncodedName.hexDecodeName)(result["0"]);
|
|
59
|
+
if (decoded && decoded !== ".")
|
|
60
|
+
return decoded;
|
|
61
|
+
}
|
|
62
|
+
} catch (e) {
|
|
63
|
+
console.error("Error decoding name: ", e);
|
|
64
|
+
return;
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
if ((0, import_labels.checkIsDecrypted)(name))
|
|
68
|
+
return name;
|
|
69
|
+
const labels = name.split(".");
|
|
70
|
+
const decryptedNameQuery = gqlInstance.gql`
|
|
71
|
+
query decodedName($id: String!) {
|
|
72
|
+
namehashLookup: domains(where: { id: $id }) {
|
|
73
|
+
name
|
|
74
|
+
}
|
|
75
|
+
${generateNameQuery(labels)}
|
|
76
|
+
}
|
|
77
|
+
`;
|
|
78
|
+
const decryptedNameResult = await gqlInstance.client.request(
|
|
79
|
+
decryptedNameQuery,
|
|
80
|
+
{
|
|
81
|
+
id: (0, import_normalise.namehash)(name)
|
|
82
|
+
}
|
|
83
|
+
);
|
|
84
|
+
if (!decryptedNameResult)
|
|
85
|
+
return;
|
|
86
|
+
const namehashLookupResult = (_a = decryptedNameResult == null ? void 0 : decryptedNameResult.namehashLookup[0]) == null ? void 0 : _a.name;
|
|
87
|
+
let bestResult = namehashLookupResult;
|
|
88
|
+
if (namehashLookupResult && (0, import_labels.checkIsDecrypted)(namehashLookupResult)) {
|
|
89
|
+
return namehashLookupResult;
|
|
90
|
+
}
|
|
91
|
+
const { namehashLookup: _, ...labelNames } = decryptedNameResult;
|
|
92
|
+
if (Object.keys(labelNames).length !== 0) {
|
|
93
|
+
for (const [key, value] of Object.entries(
|
|
94
|
+
labelNames
|
|
95
|
+
)) {
|
|
96
|
+
if (value.length && value[0].labelName) {
|
|
97
|
+
labels[parseInt(key.replace("label", ""))] = value[0].labelName;
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
const labelLookupResult = labels.join(".");
|
|
101
|
+
if (!namehashLookupResult || (0, import_labels.getEncryptedLabelAmount)(namehashLookupResult) > (0, import_labels.getEncryptedLabelAmount)(labelLookupResult))
|
|
102
|
+
bestResult = labelLookupResult;
|
|
103
|
+
}
|
|
104
|
+
if (!bestResult || !allowIncomplete && !(0, import_labels.checkIsDecrypted)(bestResult))
|
|
105
|
+
return;
|
|
106
|
+
return bestResult;
|
|
107
|
+
};
|
|
108
|
+
var getDecryptedName_default = {
|
|
109
|
+
raw,
|
|
110
|
+
decode
|
|
111
|
+
};
|
|
@@ -29,17 +29,20 @@ var import_normalise = require("../utils/normalise");
|
|
|
29
29
|
const eventFormat = {
|
|
30
30
|
Domain: {
|
|
31
31
|
NewOwner: (args) => ({ owner: args.owner.id }),
|
|
32
|
-
NewResolver: (args) => ({
|
|
32
|
+
NewResolver: (args) => ({
|
|
33
|
+
resolver: args.resolver.id.split("-")[0]
|
|
34
|
+
}),
|
|
33
35
|
Transfer: (args) => ({ owner: args.owner.id }),
|
|
34
36
|
NewTTL: (args) => ({ ttl: args.ttl }),
|
|
35
37
|
WrappedTransfer: (args) => ({ owner: args.owner.id }),
|
|
36
38
|
NameWrapped: (args) => ({
|
|
37
39
|
fuses: args.fuses,
|
|
38
40
|
owner: args.owner.id,
|
|
39
|
-
|
|
41
|
+
expiryDate: args.expiryDate
|
|
40
42
|
}),
|
|
41
43
|
NameUnwrapped: (args) => ({ owner: args.owner.id }),
|
|
42
|
-
FusesSet: (args) => ({ fuses: args.fuses
|
|
44
|
+
FusesSet: (args) => ({ fuses: args.fuses }),
|
|
45
|
+
ExpiryExtended: (args) => ({ expiryDate: args.expiryDate })
|
|
43
46
|
},
|
|
44
47
|
Registration: {
|
|
45
48
|
NameRegistered: (args) => ({
|
|
@@ -76,9 +79,11 @@ const eventFormat = {
|
|
|
76
79
|
AbiChanged: (args) => ({ contentType: args.contentType }),
|
|
77
80
|
PubkeyChanged: (args) => ({ x: args.x, y: args.y }),
|
|
78
81
|
TextChanged: (args) => ({ key: args.key, value: args.value }),
|
|
79
|
-
ContenthashChanged: (args) => ({
|
|
82
|
+
ContenthashChanged: (args) => ({
|
|
83
|
+
hash: (0, import_contentHash.decodeContenthash)(args.hash)
|
|
84
|
+
}),
|
|
80
85
|
InterfaceChanged: (args) => ({
|
|
81
|
-
interfaceId: args.
|
|
86
|
+
interfaceId: args.interfaceID,
|
|
82
87
|
implementer: args.implementer
|
|
83
88
|
}),
|
|
84
89
|
AuthorisationChanged: (args) => ({
|
|
@@ -133,7 +138,7 @@ async function getHistory({ gqlInstance }, name) {
|
|
|
133
138
|
}
|
|
134
139
|
...on NameWrapped {
|
|
135
140
|
fuses
|
|
136
|
-
|
|
141
|
+
expiryDate
|
|
137
142
|
owner {
|
|
138
143
|
id
|
|
139
144
|
}
|
|
@@ -145,7 +150,9 @@ async function getHistory({ gqlInstance }, name) {
|
|
|
145
150
|
}
|
|
146
151
|
...on FusesSet {
|
|
147
152
|
fuses
|
|
148
|
-
|
|
153
|
+
}
|
|
154
|
+
...on ExpiryExtended {
|
|
155
|
+
expiryDate
|
|
149
156
|
}
|
|
150
157
|
}
|
|
151
158
|
registration {
|
|
@@ -24,12 +24,12 @@ module.exports = __toCommonJS(getNames_exports);
|
|
|
24
24
|
var import_format = require("../utils/format");
|
|
25
25
|
var import_fuses = require("../utils/fuses");
|
|
26
26
|
var import_labels = require("../utils/labels");
|
|
27
|
-
const mapDomain = (domain) => {
|
|
28
|
-
const decrypted = (0, import_labels.decryptName)(
|
|
27
|
+
const mapDomain = ({ name, ...domain }) => {
|
|
28
|
+
const decrypted = name ? (0, import_labels.decryptName)(name) : void 0;
|
|
29
29
|
return {
|
|
30
30
|
...domain,
|
|
31
31
|
name: decrypted,
|
|
32
|
-
truncatedName: (0, import_format.truncateFormat)(decrypted),
|
|
32
|
+
truncatedName: decrypted ? (0, import_format.truncateFormat)(decrypted) : void 0,
|
|
33
33
|
createdAt: new Date(parseInt(domain.createdAt) * 1e3),
|
|
34
34
|
type: "domain"
|
|
35
35
|
};
|
|
@@ -38,8 +38,12 @@ const mapWrappedDomain = (wrappedDomain) => {
|
|
|
38
38
|
const domain = mapDomain(wrappedDomain.domain);
|
|
39
39
|
if (domain.registration) {
|
|
40
40
|
domain.registration = {
|
|
41
|
-
expiryDate: new Date(
|
|
42
|
-
|
|
41
|
+
expiryDate: new Date(
|
|
42
|
+
parseInt(domain.registration.expiryDate) * 1e3
|
|
43
|
+
),
|
|
44
|
+
registrationDate: new Date(
|
|
45
|
+
parseInt(domain.registration.registrationDate) * 1e3
|
|
46
|
+
)
|
|
43
47
|
};
|
|
44
48
|
}
|
|
45
49
|
return {
|
|
@@ -231,7 +235,7 @@ const getNames = async ({ gqlInstance }, {
|
|
|
231
235
|
id: address,
|
|
232
236
|
first: pageSize,
|
|
233
237
|
skip: (page || 0) * pageSize,
|
|
234
|
-
orderBy,
|
|
238
|
+
orderBy: orderBy === "labelName" ? "name" : orderBy,
|
|
235
239
|
orderDirection
|
|
236
240
|
};
|
|
237
241
|
}
|
|
@@ -21,7 +21,7 @@ __export(getOwner_exports, {
|
|
|
21
21
|
default: () => getOwner_default
|
|
22
22
|
});
|
|
23
23
|
module.exports = __toCommonJS(getOwner_exports);
|
|
24
|
-
var
|
|
24
|
+
var import_abi = require("@ethersproject/abi");
|
|
25
25
|
var import_bytes = require("@ethersproject/bytes");
|
|
26
26
|
var import_labels = require("../utils/labels");
|
|
27
27
|
var import_normalise = require("../utils/normalise");
|
|
@@ -98,7 +98,7 @@ const registrantQuery = `
|
|
|
98
98
|
}
|
|
99
99
|
}
|
|
100
100
|
`;
|
|
101
|
-
const singleContractOwnerDecode = (data) =>
|
|
101
|
+
const singleContractOwnerDecode = (data) => import_abi.defaultAbiCoder.decode(["address"], data)[0];
|
|
102
102
|
const decode = async ({
|
|
103
103
|
contracts,
|
|
104
104
|
multicallWrapper,
|
|
@@ -129,32 +129,44 @@ const decode = async ({
|
|
|
129
129
|
return;
|
|
130
130
|
const nameWrapper = await (contracts == null ? void 0 : contracts.getNameWrapper());
|
|
131
131
|
const decodedData = [result[0][1], result[1][1], (_a = result[2]) == null ? void 0 : _a[1]].map(
|
|
132
|
-
(ret) => ret && ret !== "0x" &&
|
|
132
|
+
(ret) => ret && ret !== "0x" && import_abi.defaultAbiCoder.decode(["address"], ret)
|
|
133
133
|
);
|
|
134
134
|
const registryOwner = decodedData[0][0];
|
|
135
135
|
const nameWrapperOwner = decodedData[1][0];
|
|
136
136
|
let registrarOwner = (_b = decodedData[2]) == null ? void 0 : _b[0];
|
|
137
|
+
let baseReturnObject = {};
|
|
137
138
|
if (labels[labels.length - 1] === "eth") {
|
|
138
|
-
if (
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
139
|
+
if (labels.length === 2) {
|
|
140
|
+
if (!registrarOwner) {
|
|
141
|
+
const graphRegistrantResult = await gqlInstance.client.request(
|
|
142
|
+
registrantQuery,
|
|
143
|
+
{
|
|
144
|
+
namehash: (0, import_normalise.namehash)(name)
|
|
145
|
+
}
|
|
146
|
+
);
|
|
147
|
+
registrarOwner = (_e = (_d = (_c = graphRegistrantResult.domain) == null ? void 0 : _c.registration) == null ? void 0 : _d.registrant) == null ? void 0 : _e.id;
|
|
148
|
+
baseReturnObject = {
|
|
149
|
+
expired: true
|
|
150
|
+
};
|
|
151
|
+
} else {
|
|
152
|
+
baseReturnObject = {
|
|
153
|
+
expired: false
|
|
154
|
+
};
|
|
155
|
+
}
|
|
146
156
|
}
|
|
147
|
-
if (registrarOwner === nameWrapper.address) {
|
|
157
|
+
if ((registrarOwner == null ? void 0 : registrarOwner.toLowerCase()) === nameWrapper.address.toLowerCase()) {
|
|
148
158
|
return {
|
|
149
159
|
owner: nameWrapperOwner,
|
|
150
|
-
ownershipLevel: "nameWrapper"
|
|
160
|
+
ownershipLevel: "nameWrapper",
|
|
161
|
+
...baseReturnObject
|
|
151
162
|
};
|
|
152
163
|
}
|
|
153
164
|
if (registrarOwner) {
|
|
154
165
|
return {
|
|
155
166
|
registrant: registrarOwner,
|
|
156
167
|
owner: registryOwner,
|
|
157
|
-
ownershipLevel: "registrar"
|
|
168
|
+
ownershipLevel: "registrar",
|
|
169
|
+
...baseReturnObject
|
|
158
170
|
};
|
|
159
171
|
}
|
|
160
172
|
if ((0, import_bytes.hexStripZeros)(registryOwner) !== "0x") {
|
|
@@ -162,7 +174,8 @@ const decode = async ({
|
|
|
162
174
|
return {
|
|
163
175
|
registrant: void 0,
|
|
164
176
|
owner: registryOwner,
|
|
165
|
-
ownershipLevel: "registrar"
|
|
177
|
+
ownershipLevel: "registrar",
|
|
178
|
+
expired: true
|
|
166
179
|
};
|
|
167
180
|
}
|
|
168
181
|
if (registryOwner === nameWrapper.address && nameWrapperOwner && (0, import_bytes.hexStripZeros)(nameWrapperOwner) !== "0x") {
|
|
@@ -21,8 +21,8 @@ __export(getPrice_exports, {
|
|
|
21
21
|
default: () => getPrice_default
|
|
22
22
|
});
|
|
23
23
|
module.exports = __toCommonJS(getPrice_exports);
|
|
24
|
-
var
|
|
25
|
-
var import_bignumber = require("@ethersproject/bignumber
|
|
24
|
+
var import_abi = require("@ethersproject/abi");
|
|
25
|
+
var import_bignumber = require("@ethersproject/bignumber");
|
|
26
26
|
const raw = async ({ contracts, multicallWrapper }, nameOrNames, duration, legacy) => {
|
|
27
27
|
const names = Array.isArray(nameOrNames) ? nameOrNames : [nameOrNames];
|
|
28
28
|
if (names.length > 1) {
|
|
@@ -79,11 +79,11 @@ const decode = async ({ contracts, multicallWrapper }, data, _nameOrNames, _dura
|
|
|
79
79
|
const isBulkRenewal = Array.isArray(_nameOrNames) && _nameOrNames.length > 1;
|
|
80
80
|
if (isBulkRenewal && legacy) {
|
|
81
81
|
const result = await multicallWrapper.decode(data);
|
|
82
|
-
const [price] =
|
|
82
|
+
const [price] = import_abi.defaultAbiCoder.decode(
|
|
83
83
|
["uint256"],
|
|
84
84
|
result[0].returnData
|
|
85
85
|
);
|
|
86
|
-
[premium] =
|
|
86
|
+
[premium] = import_abi.defaultAbiCoder.decode(
|
|
87
87
|
["uint256"],
|
|
88
88
|
result[1].returnData
|
|
89
89
|
);
|
|
@@ -98,11 +98,11 @@ const decode = async ({ contracts, multicallWrapper }, data, _nameOrNames, _dura
|
|
|
98
98
|
premium = import_bignumber.BigNumber.from(0);
|
|
99
99
|
} else if (!isBulkRenewal && legacy) {
|
|
100
100
|
const result = await multicallWrapper.decode(data);
|
|
101
|
-
const [price] =
|
|
101
|
+
const [price] = import_abi.defaultAbiCoder.decode(
|
|
102
102
|
["uint256"],
|
|
103
103
|
result[0].returnData
|
|
104
104
|
);
|
|
105
|
-
[premium] =
|
|
105
|
+
[premium] = import_abi.defaultAbiCoder.decode(
|
|
106
106
|
["uint256"],
|
|
107
107
|
result[1].returnData
|
|
108
108
|
);
|
|
@@ -22,7 +22,7 @@ __export(getProfile_exports, {
|
|
|
22
22
|
});
|
|
23
23
|
module.exports = __toCommonJS(getProfile_exports);
|
|
24
24
|
var import_address_encoder = require("@ensdomains/address-encoder");
|
|
25
|
-
var
|
|
25
|
+
var import_abi = require("@ethersproject/abi");
|
|
26
26
|
var import_bytes = require("@ethersproject/bytes");
|
|
27
27
|
var import_contentHash = require("../utils/contentHash");
|
|
28
28
|
var import_hexEncodedName = require("../utils/hexEncodedName");
|
|
@@ -96,7 +96,7 @@ const formatRecords = async ({
|
|
|
96
96
|
};
|
|
97
97
|
if (itemRet.type === "contentHash") {
|
|
98
98
|
;
|
|
99
|
-
[decodedFromAbi] =
|
|
99
|
+
[decodedFromAbi] = import_abi.defaultAbiCoder.decode(["bytes"], item);
|
|
100
100
|
if ((0, import_bytes.hexStripZeros)(decodedFromAbi) === "0x") {
|
|
101
101
|
return;
|
|
102
102
|
}
|
|
@@ -251,6 +251,7 @@ const graphFetch = async ({ gqlInstance }, name, wantedRecords, resolverAddress)
|
|
|
251
251
|
const query = gqlInstance.gql`
|
|
252
252
|
query getRecords($id: String!) {
|
|
253
253
|
domain(id: $id) {
|
|
254
|
+
name
|
|
254
255
|
isMigrated
|
|
255
256
|
createdAt
|
|
256
257
|
resolver {
|
|
@@ -267,6 +268,7 @@ const graphFetch = async ({ gqlInstance }, name, wantedRecords, resolverAddress)
|
|
|
267
268
|
const customResolverQuery = gqlInstance.gql`
|
|
268
269
|
query getRecordsWithCustomResolver($id: String!, $resolverId: String!) {
|
|
269
270
|
domain(id: $id) {
|
|
271
|
+
name
|
|
270
272
|
isMigrated
|
|
271
273
|
createdAt
|
|
272
274
|
}
|
|
@@ -299,10 +301,10 @@ const graphFetch = async ({ gqlInstance }, name, wantedRecords, resolverAddress)
|
|
|
299
301
|
}
|
|
300
302
|
if (!domain)
|
|
301
303
|
return;
|
|
302
|
-
const { isMigrated, createdAt } = domain;
|
|
304
|
+
const { isMigrated, createdAt, name: decryptedName } = domain;
|
|
303
305
|
const returnedRecords = {};
|
|
304
306
|
if (!resolverResponse || !wantedRecords)
|
|
305
|
-
return { isMigrated, createdAt };
|
|
307
|
+
return { isMigrated, createdAt, decryptedName };
|
|
306
308
|
Object.keys(wantedRecords).forEach((key) => {
|
|
307
309
|
const data = wantedRecords[key];
|
|
308
310
|
if (typeof data === "boolean" && data) {
|
|
@@ -315,6 +317,7 @@ const graphFetch = async ({ gqlInstance }, name, wantedRecords, resolverAddress)
|
|
|
315
317
|
});
|
|
316
318
|
return {
|
|
317
319
|
...returnedRecords,
|
|
320
|
+
decryptedName,
|
|
318
321
|
isMigrated,
|
|
319
322
|
createdAt
|
|
320
323
|
};
|
|
@@ -345,6 +348,7 @@ const getProfileFromName = async ({
|
|
|
345
348
|
);
|
|
346
349
|
let isMigrated = null;
|
|
347
350
|
let createdAt = null;
|
|
351
|
+
let decryptedName = null;
|
|
348
352
|
let result = null;
|
|
349
353
|
if (!graphResult) {
|
|
350
354
|
if (!fallback)
|
|
@@ -366,10 +370,12 @@ const getProfileFromName = async ({
|
|
|
366
370
|
const {
|
|
367
371
|
isMigrated: _isMigrated,
|
|
368
372
|
createdAt: _createdAt,
|
|
373
|
+
decryptedName: _decryptedName,
|
|
369
374
|
...wantedRecords
|
|
370
375
|
} = graphResult;
|
|
371
376
|
isMigrated = _isMigrated;
|
|
372
377
|
createdAt = _createdAt;
|
|
378
|
+
decryptedName = _decryptedName;
|
|
373
379
|
let recordsWithFallback = usingOptions ? wantedRecords : _options;
|
|
374
380
|
if ((Object.keys(recordsWithFallback).length === 0 || !recordsWithFallback.coinTypes && !recordsWithFallback.texts && Object.keys(recordsWithFallback.contentHash || {}).length === 0) && fallback) {
|
|
375
381
|
recordsWithFallback = fallback;
|
|
@@ -394,7 +400,7 @@ const getProfileFromName = async ({
|
|
|
394
400
|
createdAt,
|
|
395
401
|
message: !result ? "Records fetch didn't complete" : "Name doesn't have a resolver"
|
|
396
402
|
};
|
|
397
|
-
return { ...result, isMigrated, createdAt, message: void 0 };
|
|
403
|
+
return { ...result, isMigrated, createdAt, decryptedName, message: void 0 };
|
|
398
404
|
};
|
|
399
405
|
const getProfileFromAddress = async ({
|
|
400
406
|
contracts,
|
|
@@ -21,7 +21,7 @@ __export(getWrapperData_exports, {
|
|
|
21
21
|
default: () => getWrapperData_default
|
|
22
22
|
});
|
|
23
23
|
module.exports = __toCommonJS(getWrapperData_exports);
|
|
24
|
-
var import_bignumber = require("@ethersproject/bignumber
|
|
24
|
+
var import_bignumber = require("@ethersproject/bignumber");
|
|
25
25
|
var import_fuses = require("../utils/fuses");
|
|
26
26
|
var import_normalise = require("../utils/normalise");
|
|
27
27
|
const raw = async ({ contracts }, name) => {
|
|
@@ -34,15 +34,14 @@ const raw = async ({ contracts }, name) => {
|
|
|
34
34
|
const decode = async ({ contracts }, data) => {
|
|
35
35
|
const nameWrapper = await (contracts == null ? void 0 : contracts.getNameWrapper());
|
|
36
36
|
try {
|
|
37
|
-
const [owner,
|
|
37
|
+
const [owner, fuses, expiry] = nameWrapper.interface.decodeFunctionResult(
|
|
38
38
|
"getData",
|
|
39
39
|
data
|
|
40
40
|
);
|
|
41
|
-
const fuses = import_bignumber.BigNumber.from(_fuses);
|
|
42
41
|
const fuseObj = (0, import_fuses.decodeFuses)(fuses);
|
|
43
|
-
const expiryDate = new Date(expiry
|
|
42
|
+
const expiryDate = expiry.gt(0) && expiry.lt(import_bignumber.BigNumber.from(2).pow(32)) ? new Date(expiry.mul(1e3).toString()) : void 0;
|
|
44
43
|
return {
|
|
45
|
-
fuseObj,
|
|
44
|
+
...fuseObj,
|
|
46
45
|
expiryDate,
|
|
47
46
|
rawFuses: fuses,
|
|
48
47
|
owner
|
|
@@ -19,29 +19,22 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
|
|
|
19
19
|
var renewNames_exports = {};
|
|
20
20
|
__export(renewNames_exports, {
|
|
21
21
|
default: () => renewNames_default,
|
|
22
|
-
|
|
22
|
+
extendWrappedName: () => extendWrappedName
|
|
23
23
|
});
|
|
24
24
|
module.exports = __toCommonJS(renewNames_exports);
|
|
25
|
-
var
|
|
26
|
-
var
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
fuses,
|
|
31
|
-
wrapperExpiry = import_registerHelpers.MAX_INT_64
|
|
32
|
-
}) {
|
|
25
|
+
var import_consts = require("../utils/consts");
|
|
26
|
+
var import_labels = require("../utils/labels");
|
|
27
|
+
var import_normalise = require("../utils/normalise");
|
|
28
|
+
async function extendWrappedName({ contracts }, name, options) {
|
|
29
|
+
const expiry = (options == null ? void 0 : options.duration) || import_consts.MAX_INT_64;
|
|
33
30
|
const labels = name.split(".");
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
duration,
|
|
42
|
-
encodedFuses,
|
|
43
|
-
wrapperExpiry,
|
|
44
|
-
{ value }
|
|
31
|
+
const labelHash = (0, import_labels.labelhash)(labels.shift());
|
|
32
|
+
const parentNode = (0, import_normalise.namehash)(labels.join("."));
|
|
33
|
+
const nameWrapper = await contracts.getNameWrapper();
|
|
34
|
+
return nameWrapper.populateTransaction.extendExpiry(
|
|
35
|
+
parentNode,
|
|
36
|
+
labelHash,
|
|
37
|
+
expiry
|
|
45
38
|
);
|
|
46
39
|
}
|
|
47
40
|
async function renewNames_default({ contracts }, nameOrNames, { duration, value }) {
|
|
@@ -16,15 +16,33 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
16
16
|
return to;
|
|
17
17
|
};
|
|
18
18
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
-
var
|
|
20
|
-
__export(
|
|
21
|
-
default: () =>
|
|
19
|
+
var setFuses_exports = {};
|
|
20
|
+
__export(setFuses_exports, {
|
|
21
|
+
default: () => setFuses_default,
|
|
22
|
+
setChildFuses: () => setChildFuses
|
|
22
23
|
});
|
|
23
|
-
module.exports = __toCommonJS(
|
|
24
|
+
module.exports = __toCommonJS(setFuses_exports);
|
|
24
25
|
var import_fuses = require("../utils/fuses");
|
|
26
|
+
var import_labels = require("../utils/labels");
|
|
25
27
|
var import_normalise = require("../utils/normalise");
|
|
26
|
-
async function
|
|
27
|
-
|
|
28
|
+
async function setChildFuses({ contracts, signer }, name, {
|
|
29
|
+
fuses,
|
|
30
|
+
expiry = 0
|
|
31
|
+
}) {
|
|
32
|
+
const encodedFuses = (0, import_fuses.encodeFuses)(fuses);
|
|
33
|
+
const labels = name.split(".");
|
|
34
|
+
const labelHash = (0, import_labels.labelhash)(labels.shift());
|
|
35
|
+
const parentNode = (0, import_normalise.namehash)(labels.join("."));
|
|
36
|
+
const nameWrapper = (await contracts.getNameWrapper()).connect(signer);
|
|
37
|
+
return nameWrapper.populateTransaction.setChildFuses(
|
|
38
|
+
parentNode,
|
|
39
|
+
labelHash,
|
|
40
|
+
encodedFuses,
|
|
41
|
+
expiry
|
|
42
|
+
);
|
|
43
|
+
}
|
|
44
|
+
async function setFuses_default({ contracts, signer }, name, props) {
|
|
45
|
+
const encodedFuses = (0, import_fuses.encodeFuses)(props, "child");
|
|
28
46
|
const nameWrapper = (await contracts.getNameWrapper()).connect(signer);
|
|
29
47
|
const hash = (0, import_normalise.namehash)(name);
|
|
30
48
|
return nameWrapper.populateTransaction.setFuses(hash, encodedFuses);
|