@ensdomains/ensjs 3.0.0-alpha.42 → 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/functions/getDecryptedName.js +111 -0
- package/dist/cjs/functions/getOwner.js +3 -3
- package/dist/cjs/functions/getPrice.js +6 -6
- package/dist/cjs/functions/getProfile.js +11 -5
- package/dist/cjs/functions/getWrapperData.js +1 -1
- package/dist/cjs/functions/wrapName.js +2 -2
- 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 +2 -2
- package/dist/cjs/generated/factories/Multicall__factory.js +2 -2
- package/dist/cjs/generated/factories/NameWrapper__factory.js +2 -2
- package/dist/cjs/generated/factories/P256SHA256Algorithm__factory.js +2 -2
- package/dist/cjs/generated/factories/PublicResolver__factory.js +2 -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 +2 -2
- package/dist/cjs/index.js +1 -0
- package/dist/cjs/utils/ccip.js +3 -3
- package/dist/cjs/utils/hexEncodedName.js +2 -0
- package/dist/cjs/utils/labels.js +14 -8
- package/dist/cjs/utils/registerHelpers.js +2 -2
- package/dist/cjs/utils/wrapper.js +1 -1
- package/dist/esm/functions/getDecryptedName.mjs +96 -0
- package/dist/esm/functions/getOwner.mjs +1 -1
- package/dist/esm/functions/getPrice.mjs +2 -2
- package/dist/esm/functions/getProfile.mjs +10 -4
- package/dist/esm/functions/getWrapperData.mjs +1 -1
- package/dist/esm/functions/wrapName.mjs +1 -1
- 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 +1 -1
- package/dist/esm/generated/factories/Multicall__factory.mjs +1 -1
- package/dist/esm/generated/factories/NameWrapper__factory.mjs +1 -1
- package/dist/esm/generated/factories/P256SHA256Algorithm__factory.mjs +1 -1
- package/dist/esm/generated/factories/PublicResolver__factory.mjs +1 -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 +1 -1
- package/dist/esm/index.mjs +1 -0
- package/dist/esm/utils/ccip.mjs +2 -2
- package/dist/esm/utils/hexEncodedName.mjs +2 -0
- package/dist/esm/utils/labels.mjs +11 -8
- package/dist/esm/utils/registerHelpers.mjs +1 -1
- package/dist/esm/utils/wrapper.mjs +1 -1
- package/dist/types/functions/getDecryptedName.d.ts +9 -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/registerName.d.ts +1 -1
- package/dist/types/functions/renewNames.d.ts +1 -1
- package/dist/types/functions/types.d.ts +2 -0
- package/dist/types/index.d.ts +9 -0
- package/dist/types/static.d.ts +1 -1
- package/dist/types/utils/hexEncodedName.d.ts +1 -0
- package/dist/types/utils/labels.d.ts +2 -1
- package/dist/types/utils/wrapper.d.ts +1 -1
- package/package.json +1 -1
- package/src/functions/createSubname.ts +1 -1
- 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/getNames.test.ts +1 -1
- package/src/functions/getOwner.ts +2 -2
- 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.ts +1 -1
- package/src/functions/registerName.ts +1 -1
- package/src/functions/renewNames.ts +1 -1
- package/src/functions/types.ts +2 -0
- package/src/functions/wrapName.ts +1 -1
- 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 +1 -1
- package/src/generated/factories/Multicall__factory.ts +1 -1
- package/src/generated/factories/NameWrapper__factory.ts +1 -1
- package/src/generated/factories/P256SHA256Algorithm__factory.ts +1 -1
- package/src/generated/factories/PublicResolver__factory.ts +1 -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 +1 -1
- package/src/index.ts +4 -0
- package/src/static.ts +1 -1
- package/src/utils/ccip.ts +2 -2
- package/src/utils/hexEncodedName.ts +3 -0
- package/src/utils/labels.ts +13 -11
- package/src/utils/registerHelpers.ts +1 -1
- package/src/utils/wrapper.ts +1 -1
|
@@ -21,7 +21,7 @@ __export(TLDPublicSuffixList_factory_exports, {
|
|
|
21
21
|
TLDPublicSuffixList__factory: () => TLDPublicSuffixList__factory
|
|
22
22
|
});
|
|
23
23
|
module.exports = __toCommonJS(TLDPublicSuffixList_factory_exports);
|
|
24
|
-
var
|
|
24
|
+
var import_abi = require("@ethersproject/abi");
|
|
25
25
|
var import_contracts = require("@ethersproject/contracts");
|
|
26
26
|
const _abi = [
|
|
27
27
|
{
|
|
@@ -46,7 +46,7 @@ const _abi = [
|
|
|
46
46
|
];
|
|
47
47
|
class TLDPublicSuffixList__factory {
|
|
48
48
|
static createInterface() {
|
|
49
|
-
return new
|
|
49
|
+
return new import_abi.Interface(_abi);
|
|
50
50
|
}
|
|
51
51
|
static connect(address, signerOrProvider) {
|
|
52
52
|
return new import_contracts.Contract(address, _abi, signerOrProvider);
|
|
@@ -21,7 +21,7 @@ __export(UniversalResolver_factory_exports, {
|
|
|
21
21
|
UniversalResolver__factory: () => UniversalResolver__factory
|
|
22
22
|
});
|
|
23
23
|
module.exports = __toCommonJS(UniversalResolver_factory_exports);
|
|
24
|
-
var
|
|
24
|
+
var import_abi = require("@ethersproject/abi");
|
|
25
25
|
var import_contracts = require("@ethersproject/contracts");
|
|
26
26
|
const _abi = [
|
|
27
27
|
{
|
|
@@ -554,7 +554,7 @@ const _abi = [
|
|
|
554
554
|
];
|
|
555
555
|
class UniversalResolver__factory {
|
|
556
556
|
static createInterface() {
|
|
557
|
-
return new
|
|
557
|
+
return new import_abi.Interface(_abi);
|
|
558
558
|
}
|
|
559
559
|
static connect(address, signerOrProvider) {
|
|
560
560
|
return new import_contracts.Contract(address, _abi, signerOrProvider);
|
package/dist/cjs/index.js
CHANGED
|
@@ -278,6 +278,7 @@ class ENS {
|
|
|
278
278
|
"getAvailable",
|
|
279
279
|
["contracts"]
|
|
280
280
|
);
|
|
281
|
+
this.getDecryptedName = this.generateRawFunction("getDecryptedName", ["contracts", "gqlInstance"]);
|
|
281
282
|
this.universalWrapper = this.generateRawFunction("initialGetters", ["contracts"], "universalWrapper");
|
|
282
283
|
this.resolverMulticallWrapper = this.generateRawFunction("initialGetters", ["contracts"], "resolverMulticallWrapper");
|
|
283
284
|
this.multicallWrapper = this.generateRawFunction("initialGetters", ["contracts"], "multicallWrapper");
|
package/dist/cjs/utils/ccip.js
CHANGED
|
@@ -21,9 +21,9 @@ __export(ccip_exports, {
|
|
|
21
21
|
default: () => ccip_default
|
|
22
22
|
});
|
|
23
23
|
module.exports = __toCommonJS(ccip_exports);
|
|
24
|
-
var import_bignumber = require("@ethersproject/bignumber
|
|
24
|
+
var import_bignumber = require("@ethersproject/bignumber");
|
|
25
25
|
var import_bytes = require("@ethersproject/bytes");
|
|
26
|
-
var
|
|
26
|
+
var import_strings = require("@ethersproject/strings");
|
|
27
27
|
function bytesPad(value) {
|
|
28
28
|
if (value.length % 32 === 0) {
|
|
29
29
|
return value;
|
|
@@ -74,7 +74,7 @@ function _parseString(result, start) {
|
|
|
74
74
|
const bytes = _parseBytes(result, start);
|
|
75
75
|
if (bytes == null)
|
|
76
76
|
return null;
|
|
77
|
-
return (0,
|
|
77
|
+
return (0, import_strings.toUtf8String)(bytes);
|
|
78
78
|
} catch (error) {
|
|
79
79
|
}
|
|
80
80
|
return null;
|
|
@@ -24,8 +24,10 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
24
24
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
25
25
|
var hexEncodedName_exports = {};
|
|
26
26
|
__export(hexEncodedName_exports, {
|
|
27
|
+
hexDecodeName: () => hexDecodeName,
|
|
27
28
|
hexEncodeName: () => hexEncodeName
|
|
28
29
|
});
|
|
29
30
|
module.exports = __toCommonJS(hexEncodedName_exports);
|
|
30
31
|
var import_dns_packet = __toESM(require("dns-packet"));
|
|
31
32
|
const hexEncodeName = (name) => `0x${import_dns_packet.default.name.encode(name).toString("hex")}`;
|
|
33
|
+
const hexDecodeName = (hex) => import_dns_packet.default.name.decode(Buffer.from(hex.slice(2), "hex")).toString();
|
package/dist/cjs/utils/labels.js
CHANGED
|
@@ -25,6 +25,7 @@ __export(labels_exports, {
|
|
|
25
25
|
decryptName: () => decryptName,
|
|
26
26
|
encodeLabel: () => encodeLabel,
|
|
27
27
|
encodeLabelhash: () => encodeLabelhash,
|
|
28
|
+
getEncryptedLabelAmount: () => getEncryptedLabelAmount,
|
|
28
29
|
isEncodedLabelhash: () => isEncodedLabelhash,
|
|
29
30
|
keccakFromString: () => keccakFromString,
|
|
30
31
|
labelhash: () => labelhash,
|
|
@@ -84,18 +85,18 @@ function saveLabel(label) {
|
|
|
84
85
|
}
|
|
85
86
|
function saveName(name) {
|
|
86
87
|
const nameArray = name.split(".");
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
88
|
+
for (const label of nameArray) {
|
|
89
|
+
if (!isEncodedLabelhash(label)) {
|
|
90
|
+
saveLabel(label);
|
|
91
|
+
}
|
|
92
|
+
}
|
|
90
93
|
}
|
|
91
94
|
function checkLabel(hash) {
|
|
92
95
|
const labels = getLabels();
|
|
93
96
|
if (isEncodedLabelhash(hash)) {
|
|
94
|
-
return labels[decodeLabelhash(hash)];
|
|
95
|
-
}
|
|
96
|
-
if (hash.startsWith("0x")) {
|
|
97
|
-
return labels[`${hash.slice(2)}`];
|
|
97
|
+
return labels[decodeLabelhash(hash)] || hash;
|
|
98
98
|
}
|
|
99
|
+
return hash;
|
|
99
100
|
}
|
|
100
101
|
function encodeLabel(label) {
|
|
101
102
|
try {
|
|
@@ -112,7 +113,7 @@ function checkIsDecrypted(string) {
|
|
|
112
113
|
return !(string == null ? void 0 : string.includes("["));
|
|
113
114
|
}
|
|
114
115
|
function decryptName(name) {
|
|
115
|
-
return name.split(".").map((label) => checkLabel(label)
|
|
116
|
+
return name.split(".").map((label) => checkLabel(label)).join(".");
|
|
116
117
|
}
|
|
117
118
|
const truncateUndecryptedName = (name) => (0, import_format.truncateFormat)(name);
|
|
118
119
|
function checkLocalStorageSize() {
|
|
@@ -126,3 +127,8 @@ function checkLocalStorageSize() {
|
|
|
126
127
|
}
|
|
127
128
|
return allStrings ? `${3 + allStrings.length * 16 / (8 * 1024)} KB` : "Empty (0 KB)";
|
|
128
129
|
}
|
|
130
|
+
const encodedLabelRegex = /\[[a-fA-F0-9]{64}\]/g;
|
|
131
|
+
const getEncryptedLabelAmount = (name) => {
|
|
132
|
+
var _a;
|
|
133
|
+
return ((_a = name.match(encodedLabelRegex)) == null ? void 0 : _a.length) || 0;
|
|
134
|
+
};
|
|
@@ -25,7 +25,7 @@ __export(registerHelpers_exports, {
|
|
|
25
25
|
randomSecret: () => randomSecret
|
|
26
26
|
});
|
|
27
27
|
module.exports = __toCommonJS(registerHelpers_exports);
|
|
28
|
-
var
|
|
28
|
+
var import_abi = require("@ethersproject/abi");
|
|
29
29
|
var import_keccak256 = require("@ethersproject/keccak256");
|
|
30
30
|
var import_fuses = require("./fuses");
|
|
31
31
|
var import_labels = require("./labels");
|
|
@@ -79,7 +79,7 @@ const makeRegistrationData = (params) => {
|
|
|
79
79
|
};
|
|
80
80
|
const _makeCommitment = (params) => {
|
|
81
81
|
return (0, import_keccak256.keccak256)(
|
|
82
|
-
|
|
82
|
+
import_abi.defaultAbiCoder.encode(
|
|
83
83
|
[
|
|
84
84
|
"bytes32",
|
|
85
85
|
"address",
|
|
@@ -23,7 +23,7 @@ __export(wrapper_exports, {
|
|
|
23
23
|
wrappedLabelLengthCheck: () => wrappedLabelLengthCheck
|
|
24
24
|
});
|
|
25
25
|
module.exports = __toCommonJS(wrapper_exports);
|
|
26
|
-
var import_bignumber = require("@ethersproject/bignumber
|
|
26
|
+
var import_bignumber = require("@ethersproject/bignumber");
|
|
27
27
|
var import_strings = require("@ethersproject/strings");
|
|
28
28
|
const MAX_EXPIRY = import_bignumber.BigNumber.from(2).pow(64).sub(1);
|
|
29
29
|
const makeExpiry = async ({ getExpiry }, name, expiry) => {
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
// src/functions/getDecryptedName.ts
|
|
2
|
+
import { hexStripZeros } from "@ethersproject/bytes";
|
|
3
|
+
import { hexDecodeName } from "../utils/hexEncodedName.mjs";
|
|
4
|
+
import {
|
|
5
|
+
checkIsDecrypted,
|
|
6
|
+
decodeLabelhash,
|
|
7
|
+
getEncryptedLabelAmount,
|
|
8
|
+
isEncodedLabelhash
|
|
9
|
+
} from "../utils/labels.mjs";
|
|
10
|
+
import { namehash } from "../utils/normalise.mjs";
|
|
11
|
+
var raw = async ({ contracts }, name, allowIncomplete) => {
|
|
12
|
+
const nameWrapper = await contracts?.getNameWrapper();
|
|
13
|
+
return {
|
|
14
|
+
to: nameWrapper.address,
|
|
15
|
+
data: nameWrapper.interface.encodeFunctionData("names", [namehash(name)])
|
|
16
|
+
};
|
|
17
|
+
};
|
|
18
|
+
var generateNameQuery = (labels) => {
|
|
19
|
+
let query = "";
|
|
20
|
+
for (let i = 0; i < labels.length; i += 1) {
|
|
21
|
+
const label = labels[i];
|
|
22
|
+
if (isEncodedLabelhash(label)) {
|
|
23
|
+
query += `
|
|
24
|
+
label${i}: domains(where: { labelhash: "${decodeLabelhash(
|
|
25
|
+
label
|
|
26
|
+
).toLowerCase()}", labelName_not: null }) {
|
|
27
|
+
labelName
|
|
28
|
+
}
|
|
29
|
+
`;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
return query;
|
|
33
|
+
};
|
|
34
|
+
var decode = async ({ contracts, gqlInstance }, data, name, allowIncomplete = false) => {
|
|
35
|
+
if (data !== null) {
|
|
36
|
+
const nameWrapper = await contracts?.getNameWrapper();
|
|
37
|
+
try {
|
|
38
|
+
const result = nameWrapper.interface.decodeFunctionResult("names", data);
|
|
39
|
+
if (hexStripZeros(result["0"]) !== "0x") {
|
|
40
|
+
const decoded = hexDecodeName(result["0"]);
|
|
41
|
+
if (decoded && decoded !== ".")
|
|
42
|
+
return decoded;
|
|
43
|
+
}
|
|
44
|
+
} catch (e) {
|
|
45
|
+
console.error("Error decoding name: ", e);
|
|
46
|
+
return;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
if (checkIsDecrypted(name))
|
|
50
|
+
return name;
|
|
51
|
+
const labels = name.split(".");
|
|
52
|
+
const decryptedNameQuery = gqlInstance.gql`
|
|
53
|
+
query decodedName($id: String!) {
|
|
54
|
+
namehashLookup: domains(where: { id: $id }) {
|
|
55
|
+
name
|
|
56
|
+
}
|
|
57
|
+
${generateNameQuery(labels)}
|
|
58
|
+
}
|
|
59
|
+
`;
|
|
60
|
+
const decryptedNameResult = await gqlInstance.client.request(
|
|
61
|
+
decryptedNameQuery,
|
|
62
|
+
{
|
|
63
|
+
id: namehash(name)
|
|
64
|
+
}
|
|
65
|
+
);
|
|
66
|
+
if (!decryptedNameResult)
|
|
67
|
+
return;
|
|
68
|
+
const namehashLookupResult = decryptedNameResult?.namehashLookup[0]?.name;
|
|
69
|
+
let bestResult = namehashLookupResult;
|
|
70
|
+
if (namehashLookupResult && checkIsDecrypted(namehashLookupResult)) {
|
|
71
|
+
return namehashLookupResult;
|
|
72
|
+
}
|
|
73
|
+
const { namehashLookup: _, ...labelNames } = decryptedNameResult;
|
|
74
|
+
if (Object.keys(labelNames).length !== 0) {
|
|
75
|
+
for (const [key, value] of Object.entries(
|
|
76
|
+
labelNames
|
|
77
|
+
)) {
|
|
78
|
+
if (value.length && value[0].labelName) {
|
|
79
|
+
labels[parseInt(key.replace("label", ""))] = value[0].labelName;
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
const labelLookupResult = labels.join(".");
|
|
83
|
+
if (!namehashLookupResult || getEncryptedLabelAmount(namehashLookupResult) > getEncryptedLabelAmount(labelLookupResult))
|
|
84
|
+
bestResult = labelLookupResult;
|
|
85
|
+
}
|
|
86
|
+
if (!bestResult || !allowIncomplete && !checkIsDecrypted(bestResult))
|
|
87
|
+
return;
|
|
88
|
+
return bestResult;
|
|
89
|
+
};
|
|
90
|
+
var getDecryptedName_default = {
|
|
91
|
+
raw,
|
|
92
|
+
decode
|
|
93
|
+
};
|
|
94
|
+
export {
|
|
95
|
+
getDecryptedName_default as default
|
|
96
|
+
};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// src/functions/getOwner.ts
|
|
2
|
-
import { defaultAbiCoder } from "@ethersproject/abi
|
|
2
|
+
import { defaultAbiCoder } from "@ethersproject/abi";
|
|
3
3
|
import { hexStripZeros } from "@ethersproject/bytes";
|
|
4
4
|
import { labelhash } from "../utils/labels.mjs";
|
|
5
5
|
import { namehash as makeNamehash } from "../utils/normalise.mjs";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// src/functions/getPrice.ts
|
|
2
|
-
import { defaultAbiCoder } from "@ethersproject/abi
|
|
3
|
-
import { BigNumber } from "@ethersproject/bignumber
|
|
2
|
+
import { defaultAbiCoder } from "@ethersproject/abi";
|
|
3
|
+
import { BigNumber } from "@ethersproject/bignumber";
|
|
4
4
|
var raw = async ({ contracts, multicallWrapper }, nameOrNames, duration, legacy) => {
|
|
5
5
|
const names = Array.isArray(nameOrNames) ? nameOrNames : [nameOrNames];
|
|
6
6
|
if (names.length > 1) {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// src/functions/getProfile.ts
|
|
2
2
|
import { formatsByName } from "@ensdomains/address-encoder";
|
|
3
|
-
import { defaultAbiCoder } from "@ethersproject/abi
|
|
3
|
+
import { defaultAbiCoder } from "@ethersproject/abi";
|
|
4
4
|
import { hexStripZeros, isBytesLike } from "@ethersproject/bytes";
|
|
5
5
|
import { decodeContenthash } from "../utils/contentHash.mjs";
|
|
6
6
|
import { hexEncodeName } from "../utils/hexEncodedName.mjs";
|
|
@@ -229,6 +229,7 @@ var graphFetch = async ({ gqlInstance }, name, wantedRecords, resolverAddress) =
|
|
|
229
229
|
const query = gqlInstance.gql`
|
|
230
230
|
query getRecords($id: String!) {
|
|
231
231
|
domain(id: $id) {
|
|
232
|
+
name
|
|
232
233
|
isMigrated
|
|
233
234
|
createdAt
|
|
234
235
|
resolver {
|
|
@@ -245,6 +246,7 @@ var graphFetch = async ({ gqlInstance }, name, wantedRecords, resolverAddress) =
|
|
|
245
246
|
const customResolverQuery = gqlInstance.gql`
|
|
246
247
|
query getRecordsWithCustomResolver($id: String!, $resolverId: String!) {
|
|
247
248
|
domain(id: $id) {
|
|
249
|
+
name
|
|
248
250
|
isMigrated
|
|
249
251
|
createdAt
|
|
250
252
|
}
|
|
@@ -277,10 +279,10 @@ var graphFetch = async ({ gqlInstance }, name, wantedRecords, resolverAddress) =
|
|
|
277
279
|
}
|
|
278
280
|
if (!domain)
|
|
279
281
|
return;
|
|
280
|
-
const { isMigrated, createdAt } = domain;
|
|
282
|
+
const { isMigrated, createdAt, name: decryptedName } = domain;
|
|
281
283
|
const returnedRecords = {};
|
|
282
284
|
if (!resolverResponse || !wantedRecords)
|
|
283
|
-
return { isMigrated, createdAt };
|
|
285
|
+
return { isMigrated, createdAt, decryptedName };
|
|
284
286
|
Object.keys(wantedRecords).forEach((key) => {
|
|
285
287
|
const data = wantedRecords[key];
|
|
286
288
|
if (typeof data === "boolean" && data) {
|
|
@@ -293,6 +295,7 @@ var graphFetch = async ({ gqlInstance }, name, wantedRecords, resolverAddress) =
|
|
|
293
295
|
});
|
|
294
296
|
return {
|
|
295
297
|
...returnedRecords,
|
|
298
|
+
decryptedName,
|
|
296
299
|
isMigrated,
|
|
297
300
|
createdAt
|
|
298
301
|
};
|
|
@@ -323,6 +326,7 @@ var getProfileFromName = async ({
|
|
|
323
326
|
);
|
|
324
327
|
let isMigrated = null;
|
|
325
328
|
let createdAt = null;
|
|
329
|
+
let decryptedName = null;
|
|
326
330
|
let result = null;
|
|
327
331
|
if (!graphResult) {
|
|
328
332
|
if (!fallback)
|
|
@@ -344,10 +348,12 @@ var getProfileFromName = async ({
|
|
|
344
348
|
const {
|
|
345
349
|
isMigrated: _isMigrated,
|
|
346
350
|
createdAt: _createdAt,
|
|
351
|
+
decryptedName: _decryptedName,
|
|
347
352
|
...wantedRecords
|
|
348
353
|
} = graphResult;
|
|
349
354
|
isMigrated = _isMigrated;
|
|
350
355
|
createdAt = _createdAt;
|
|
356
|
+
decryptedName = _decryptedName;
|
|
351
357
|
let recordsWithFallback = usingOptions ? wantedRecords : _options;
|
|
352
358
|
if ((Object.keys(recordsWithFallback).length === 0 || !recordsWithFallback.coinTypes && !recordsWithFallback.texts && Object.keys(recordsWithFallback.contentHash || {}).length === 0) && fallback) {
|
|
353
359
|
recordsWithFallback = fallback;
|
|
@@ -372,7 +378,7 @@ var getProfileFromName = async ({
|
|
|
372
378
|
createdAt,
|
|
373
379
|
message: !result ? "Records fetch didn't complete" : "Name doesn't have a resolver"
|
|
374
380
|
};
|
|
375
|
-
return { ...result, isMigrated, createdAt, message: void 0 };
|
|
381
|
+
return { ...result, isMigrated, createdAt, decryptedName, message: void 0 };
|
|
376
382
|
};
|
|
377
383
|
var getProfileFromAddress = async ({
|
|
378
384
|
contracts,
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// src/functions/getWrapperData.ts
|
|
2
|
-
import { BigNumber } from "@ethersproject/bignumber
|
|
2
|
+
import { BigNumber } from "@ethersproject/bignumber";
|
|
3
3
|
import { decodeFuses } from "../utils/fuses.mjs";
|
|
4
4
|
import { namehash } from "../utils/normalise.mjs";
|
|
5
5
|
var raw = async ({ contracts }, name) => {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// src/functions/wrapName.ts
|
|
2
|
-
import { defaultAbiCoder } from "@ethersproject/abi
|
|
2
|
+
import { defaultAbiCoder } from "@ethersproject/abi";
|
|
3
3
|
import { keccak256 as solidityKeccak256 } from "@ethersproject/solidity";
|
|
4
4
|
import { encodeFuses } from "../utils/fuses.mjs";
|
|
5
5
|
import { hexEncodeName } from "../utils/hexEncodedName.mjs";
|
|
@@ -6,7 +6,7 @@ var __publicField = (obj, key, value) => {
|
|
|
6
6
|
};
|
|
7
7
|
|
|
8
8
|
// src/generated/factories/BaseRegistrarImplementation__factory.ts
|
|
9
|
-
import { Interface } from "@ethersproject/abi
|
|
9
|
+
import { Interface } from "@ethersproject/abi";
|
|
10
10
|
import { Contract } from "@ethersproject/contracts";
|
|
11
11
|
var _abi = [
|
|
12
12
|
{
|
|
@@ -6,7 +6,7 @@ var __publicField = (obj, key, value) => {
|
|
|
6
6
|
};
|
|
7
7
|
|
|
8
8
|
// src/generated/factories/BulkRenewal__factory.ts
|
|
9
|
-
import { Interface } from "@ethersproject/abi
|
|
9
|
+
import { Interface } from "@ethersproject/abi";
|
|
10
10
|
import { Contract } from "@ethersproject/contracts";
|
|
11
11
|
var _abi = [
|
|
12
12
|
{
|
|
@@ -6,7 +6,7 @@ var __publicField = (obj, key, value) => {
|
|
|
6
6
|
};
|
|
7
7
|
|
|
8
8
|
// src/generated/factories/DNSRegistrar__factory.ts
|
|
9
|
-
import { Interface } from "@ethersproject/abi
|
|
9
|
+
import { Interface } from "@ethersproject/abi";
|
|
10
10
|
import { Contract } from "@ethersproject/contracts";
|
|
11
11
|
var _abi = [
|
|
12
12
|
{
|
|
@@ -6,7 +6,7 @@ var __publicField = (obj, key, value) => {
|
|
|
6
6
|
};
|
|
7
7
|
|
|
8
8
|
// src/generated/factories/DNSSECImpl__factory.ts
|
|
9
|
-
import { Interface } from "@ethersproject/abi
|
|
9
|
+
import { Interface } from "@ethersproject/abi";
|
|
10
10
|
import { Contract } from "@ethersproject/contracts";
|
|
11
11
|
var _abi = [
|
|
12
12
|
{
|
|
@@ -6,7 +6,7 @@ var __publicField = (obj, key, value) => {
|
|
|
6
6
|
};
|
|
7
7
|
|
|
8
8
|
// src/generated/factories/DefaultReverseResolver__factory.ts
|
|
9
|
-
import { Interface } from "@ethersproject/abi
|
|
9
|
+
import { Interface } from "@ethersproject/abi";
|
|
10
10
|
import { Contract } from "@ethersproject/contracts";
|
|
11
11
|
var _abi = [
|
|
12
12
|
{
|
|
@@ -6,7 +6,7 @@ var __publicField = (obj, key, value) => {
|
|
|
6
6
|
};
|
|
7
7
|
|
|
8
8
|
// src/generated/factories/ENSRegistry__factory.ts
|
|
9
|
-
import { Interface } from "@ethersproject/abi
|
|
9
|
+
import { Interface } from "@ethersproject/abi";
|
|
10
10
|
import { Contract } from "@ethersproject/contracts";
|
|
11
11
|
var _abi = [
|
|
12
12
|
{
|
|
@@ -6,7 +6,7 @@ var __publicField = (obj, key, value) => {
|
|
|
6
6
|
};
|
|
7
7
|
|
|
8
8
|
// src/generated/factories/ETHRegistrarController__factory.ts
|
|
9
|
-
import { Interface } from "@ethersproject/abi
|
|
9
|
+
import { Interface } from "@ethersproject/abi";
|
|
10
10
|
import { Contract } from "@ethersproject/contracts";
|
|
11
11
|
var _abi = [
|
|
12
12
|
{
|
|
@@ -6,7 +6,7 @@ var __publicField = (obj, key, value) => {
|
|
|
6
6
|
};
|
|
7
7
|
|
|
8
8
|
// src/generated/factories/Multicall__factory.ts
|
|
9
|
-
import { Interface } from "@ethersproject/abi
|
|
9
|
+
import { Interface } from "@ethersproject/abi";
|
|
10
10
|
import { Contract } from "@ethersproject/contracts";
|
|
11
11
|
var _abi = [
|
|
12
12
|
{
|
|
@@ -6,7 +6,7 @@ var __publicField = (obj, key, value) => {
|
|
|
6
6
|
};
|
|
7
7
|
|
|
8
8
|
// src/generated/factories/NameWrapper__factory.ts
|
|
9
|
-
import { Interface } from "@ethersproject/abi
|
|
9
|
+
import { Interface } from "@ethersproject/abi";
|
|
10
10
|
import { Contract } from "@ethersproject/contracts";
|
|
11
11
|
var _abi = [
|
|
12
12
|
{
|
|
@@ -6,7 +6,7 @@ var __publicField = (obj, key, value) => {
|
|
|
6
6
|
};
|
|
7
7
|
|
|
8
8
|
// src/generated/factories/P256SHA256Algorithm__factory.ts
|
|
9
|
-
import { Interface } from "@ethersproject/abi
|
|
9
|
+
import { Interface } from "@ethersproject/abi";
|
|
10
10
|
import { Contract } from "@ethersproject/contracts";
|
|
11
11
|
var _abi = [
|
|
12
12
|
{
|
|
@@ -6,7 +6,7 @@ var __publicField = (obj, key, value) => {
|
|
|
6
6
|
};
|
|
7
7
|
|
|
8
8
|
// src/generated/factories/PublicResolver__factory.ts
|
|
9
|
-
import { Interface } from "@ethersproject/abi
|
|
9
|
+
import { Interface } from "@ethersproject/abi";
|
|
10
10
|
import { Contract } from "@ethersproject/contracts";
|
|
11
11
|
var _abi = [
|
|
12
12
|
{
|
|
@@ -6,7 +6,7 @@ var __publicField = (obj, key, value) => {
|
|
|
6
6
|
};
|
|
7
7
|
|
|
8
8
|
// src/generated/factories/RSASHA1Algorithm__factory.ts
|
|
9
|
-
import { Interface } from "@ethersproject/abi
|
|
9
|
+
import { Interface } from "@ethersproject/abi";
|
|
10
10
|
import { Contract } from "@ethersproject/contracts";
|
|
11
11
|
var _abi = [
|
|
12
12
|
{
|
|
@@ -6,7 +6,7 @@ var __publicField = (obj, key, value) => {
|
|
|
6
6
|
};
|
|
7
7
|
|
|
8
8
|
// src/generated/factories/RSASHA256Algorithm__factory.ts
|
|
9
|
-
import { Interface } from "@ethersproject/abi
|
|
9
|
+
import { Interface } from "@ethersproject/abi";
|
|
10
10
|
import { Contract } from "@ethersproject/contracts";
|
|
11
11
|
var _abi = [
|
|
12
12
|
{
|
|
@@ -6,7 +6,7 @@ var __publicField = (obj, key, value) => {
|
|
|
6
6
|
};
|
|
7
7
|
|
|
8
8
|
// src/generated/factories/ReverseRegistrar__factory.ts
|
|
9
|
-
import { Interface } from "@ethersproject/abi
|
|
9
|
+
import { Interface } from "@ethersproject/abi";
|
|
10
10
|
import { Contract } from "@ethersproject/contracts";
|
|
11
11
|
var _abi = [
|
|
12
12
|
{
|
|
@@ -6,7 +6,7 @@ var __publicField = (obj, key, value) => {
|
|
|
6
6
|
};
|
|
7
7
|
|
|
8
8
|
// src/generated/factories/Root__factory.ts
|
|
9
|
-
import { Interface } from "@ethersproject/abi
|
|
9
|
+
import { Interface } from "@ethersproject/abi";
|
|
10
10
|
import { Contract } from "@ethersproject/contracts";
|
|
11
11
|
var _abi = [
|
|
12
12
|
{
|
|
@@ -6,7 +6,7 @@ var __publicField = (obj, key, value) => {
|
|
|
6
6
|
};
|
|
7
7
|
|
|
8
8
|
// src/generated/factories/SHA1Digest__factory.ts
|
|
9
|
-
import { Interface } from "@ethersproject/abi
|
|
9
|
+
import { Interface } from "@ethersproject/abi";
|
|
10
10
|
import { Contract } from "@ethersproject/contracts";
|
|
11
11
|
var _abi = [
|
|
12
12
|
{
|
|
@@ -6,7 +6,7 @@ var __publicField = (obj, key, value) => {
|
|
|
6
6
|
};
|
|
7
7
|
|
|
8
8
|
// src/generated/factories/SHA1NSEC3Digest__factory.ts
|
|
9
|
-
import { Interface } from "@ethersproject/abi
|
|
9
|
+
import { Interface } from "@ethersproject/abi";
|
|
10
10
|
import { Contract } from "@ethersproject/contracts";
|
|
11
11
|
var _abi = [
|
|
12
12
|
{
|
|
@@ -6,7 +6,7 @@ var __publicField = (obj, key, value) => {
|
|
|
6
6
|
};
|
|
7
7
|
|
|
8
8
|
// src/generated/factories/SHA256Digest__factory.ts
|
|
9
|
-
import { Interface } from "@ethersproject/abi
|
|
9
|
+
import { Interface } from "@ethersproject/abi";
|
|
10
10
|
import { Contract } from "@ethersproject/contracts";
|
|
11
11
|
var _abi = [
|
|
12
12
|
{
|
|
@@ -6,7 +6,7 @@ var __publicField = (obj, key, value) => {
|
|
|
6
6
|
};
|
|
7
7
|
|
|
8
8
|
// src/generated/factories/StaticMetadataService__factory.ts
|
|
9
|
-
import { Interface } from "@ethersproject/abi
|
|
9
|
+
import { Interface } from "@ethersproject/abi";
|
|
10
10
|
import { Contract } from "@ethersproject/contracts";
|
|
11
11
|
var _abi = [
|
|
12
12
|
{
|
|
@@ -6,7 +6,7 @@ var __publicField = (obj, key, value) => {
|
|
|
6
6
|
};
|
|
7
7
|
|
|
8
8
|
// src/generated/factories/TLDPublicSuffixList__factory.ts
|
|
9
|
-
import { Interface } from "@ethersproject/abi
|
|
9
|
+
import { Interface } from "@ethersproject/abi";
|
|
10
10
|
import { Contract } from "@ethersproject/contracts";
|
|
11
11
|
var _abi = [
|
|
12
12
|
{
|
|
@@ -6,7 +6,7 @@ var __publicField = (obj, key, value) => {
|
|
|
6
6
|
};
|
|
7
7
|
|
|
8
8
|
// src/generated/factories/UniversalResolver__factory.ts
|
|
9
|
-
import { Interface } from "@ethersproject/abi
|
|
9
|
+
import { Interface } from "@ethersproject/abi";
|
|
10
10
|
import { Contract } from "@ethersproject/contracts";
|
|
11
11
|
var _abi = [
|
|
12
12
|
{
|
package/dist/esm/index.mjs
CHANGED
|
@@ -255,6 +255,7 @@ var ENS = class {
|
|
|
255
255
|
"getAvailable",
|
|
256
256
|
["contracts"]
|
|
257
257
|
);
|
|
258
|
+
getDecryptedName = this.generateRawFunction("getDecryptedName", ["contracts", "gqlInstance"]);
|
|
258
259
|
universalWrapper = this.generateRawFunction("initialGetters", ["contracts"], "universalWrapper");
|
|
259
260
|
resolverMulticallWrapper = this.generateRawFunction("initialGetters", ["contracts"], "resolverMulticallWrapper");
|
|
260
261
|
multicallWrapper = this.generateRawFunction("initialGetters", ["contracts"], "multicallWrapper");
|
package/dist/esm/utils/ccip.mjs
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
// src/utils/ccip.ts
|
|
2
|
-
import { BigNumber } from "@ethersproject/bignumber
|
|
2
|
+
import { BigNumber } from "@ethersproject/bignumber";
|
|
3
3
|
import {
|
|
4
4
|
arrayify,
|
|
5
5
|
hexConcat,
|
|
6
6
|
hexDataSlice
|
|
7
7
|
} from "@ethersproject/bytes";
|
|
8
|
-
import { toUtf8String } from "@ethersproject/strings
|
|
8
|
+
import { toUtf8String } from "@ethersproject/strings";
|
|
9
9
|
function bytesPad(value) {
|
|
10
10
|
if (value.length % 32 === 0) {
|
|
11
11
|
return value;
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
// src/utils/hexEncodedName.ts
|
|
2
2
|
import packet from "dns-packet";
|
|
3
3
|
var hexEncodeName = (name) => `0x${packet.name.encode(name).toString("hex")}`;
|
|
4
|
+
var hexDecodeName = (hex) => packet.name.decode(Buffer.from(hex.slice(2), "hex")).toString();
|
|
4
5
|
export {
|
|
6
|
+
hexDecodeName,
|
|
5
7
|
hexEncodeName
|
|
6
8
|
};
|