thirdweb 5.119.3 → 5.119.4

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.
@@ -10,12 +10,16 @@ const viem_1 = require("viem");
10
10
  const read_contract_js_1 = require("../../../../../transaction/read-contract.js");
11
11
  const encodeAbiParameters_js_1 = require("../../../../../utils/abi/encodeAbiParameters.js");
12
12
  const detectExtension_js_1 = require("../../../../../utils/bytecode/detectExtension.js");
13
- exports.FN_SELECTOR = "0xec11c823";
13
+ exports.FN_SELECTOR = "0x5d78a217";
14
14
  const FN_INPUTS = [
15
15
  {
16
16
  name: "reverseName",
17
17
  type: "bytes",
18
18
  },
19
+ {
20
+ name: "coinType",
21
+ type: "uint256",
22
+ },
19
23
  ];
20
24
  const FN_OUTPUTS = [
21
25
  {
@@ -27,9 +31,6 @@ const FN_OUTPUTS = [
27
31
  {
28
32
  type: "address",
29
33
  },
30
- {
31
- type: "address",
32
- },
33
34
  ];
34
35
  /**
35
36
  * Checks if the `reverse` method is supported by the given contract.
@@ -62,7 +63,10 @@ function isReverseSupported(availableSelectors) {
62
63
  * ```
63
64
  */
64
65
  function encodeReverseParams(options) {
65
- return (0, encodeAbiParameters_js_1.encodeAbiParameters)(FN_INPUTS, [options.reverseName]);
66
+ return (0, encodeAbiParameters_js_1.encodeAbiParameters)(FN_INPUTS, [
67
+ options.reverseName,
68
+ options.coinType,
69
+ ]);
66
70
  }
67
71
  /**
68
72
  * Encodes the "reverse" function into a Hex string with its parameters.
@@ -117,7 +121,7 @@ async function reverse(options) {
117
121
  return (0, read_contract_js_1.readContract)({
118
122
  contract: options.contract,
119
123
  method: [exports.FN_SELECTOR, FN_INPUTS, FN_OUTPUTS],
120
- params: [options.reverseName],
124
+ params: [options.reverseName, options.coinType],
121
125
  });
122
126
  }
123
127
  //# sourceMappingURL=reverse.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"reverse.js","sourceRoot":"","sources":["../../../../../../../src/extensions/ens/__generated__/UniversalResolver/read/reverse.ts"],"names":[],"mappings":";;;AAmDA,gDAKC;AAeD,kDAEC;AAeD,sCAKC;AAaD,kDAEC;AAkBD,0BAMC;AAnID,+BAA2C;AAC3C,kFAA2E;AAE3E,4FAAsF;AACtF,yFAAgF;AAanE,QAAA,WAAW,GAAG,YAAqB,CAAC;AACjD,MAAM,SAAS,GAAG;IAChB;QACE,IAAI,EAAE,aAAa;QACnB,IAAI,EAAE,OAAO;KACd;CACO,CAAC;AACX,MAAM,UAAU,GAAG;IACjB;QACE,IAAI,EAAE,QAAQ;KACf;IACD;QACE,IAAI,EAAE,SAAS;KAChB;IACD;QACE,IAAI,EAAE,SAAS;KAChB;IACD;QACE,IAAI,EAAE,SAAS;KAChB;CACO,CAAC;AAEX;;;;;;;;;;GAUG;AACH,SAAgB,kBAAkB,CAAC,kBAA4B;IAC7D,OAAO,IAAA,iCAAY,EAAC;QAClB,kBAAkB;QAClB,MAAM,EAAE,CAAC,mBAAW,EAAE,SAAS,EAAE,UAAU,CAAU;KACtD,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,SAAgB,mBAAmB,CAAC,OAAsB;IACxD,OAAO,IAAA,4CAAmB,EAAC,SAAS,EAAE,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC;AAC/D,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,SAAgB,aAAa,CAAC,OAAsB;IAClD,iFAAiF;IACjF,oEAAoE;IACpE,OAAO,CAAC,mBAAW;QACjB,mBAAmB,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAqC,CAAC;AAC/E,CAAC;AAED;;;;;;;;;;GAUG;AACH,SAAgB,mBAAmB,CAAC,MAAW;IAC7C,OAAO,IAAA,0BAAmB,EAAC,UAAU,EAAE,MAAM,CAAC,CAAC;AACjD,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACI,KAAK,UAAU,OAAO,CAAC,OAA8C;IAC1E,OAAO,IAAA,+BAAY,EAAC;QAClB,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,MAAM,EAAE,CAAC,mBAAW,EAAE,SAAS,EAAE,UAAU,CAAU;QACrD,MAAM,EAAE,CAAC,OAAO,CAAC,WAAW,CAAC;KAC9B,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"reverse.js","sourceRoot":"","sources":["../../../../../../../src/extensions/ens/__generated__/UniversalResolver/read/reverse.ts"],"names":[],"mappings":";;;AAwDA,gDAKC;AAeD,kDAKC;AAeD,sCAKC;AAaD,kDAEC;AAkBD,0BAMC;AA3ID,+BAA2C;AAC3C,kFAA2E;AAE3E,4FAAsF;AACtF,yFAAgF;AAiBnE,QAAA,WAAW,GAAG,YAAqB,CAAC;AACjD,MAAM,SAAS,GAAG;IAChB;QACE,IAAI,EAAE,aAAa;QACnB,IAAI,EAAE,OAAO;KACd;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,SAAS;KAChB;CACO,CAAC;AACX,MAAM,UAAU,GAAG;IACjB;QACE,IAAI,EAAE,QAAQ;KACf;IACD;QACE,IAAI,EAAE,SAAS;KAChB;IACD;QACE,IAAI,EAAE,SAAS;KAChB;CACO,CAAC;AAEX;;;;;;;;;;GAUG;AACH,SAAgB,kBAAkB,CAAC,kBAA4B;IAC7D,OAAO,IAAA,iCAAY,EAAC;QAClB,kBAAkB;QAClB,MAAM,EAAE,CAAC,mBAAW,EAAE,SAAS,EAAE,UAAU,CAAU;KACtD,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,SAAgB,mBAAmB,CAAC,OAAsB;IACxD,OAAO,IAAA,4CAAmB,EAAC,SAAS,EAAE;QACpC,OAAO,CAAC,WAAW;QACnB,OAAO,CAAC,QAAQ;KACjB,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,SAAgB,aAAa,CAAC,OAAsB;IAClD,iFAAiF;IACjF,oEAAoE;IACpE,OAAO,CAAC,mBAAW;QACjB,mBAAmB,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAqC,CAAC;AAC/E,CAAC;AAED;;;;;;;;;;GAUG;AACH,SAAgB,mBAAmB,CAAC,MAAW;IAC7C,OAAO,IAAA,0BAAmB,EAAC,UAAU,EAAE,MAAM,CAAC,CAAC;AACjD,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACI,KAAK,UAAU,OAAO,CAAC,OAA8C;IAC1E,OAAO,IAAA,+BAAY,EAAC;QAClB,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,MAAM,EAAE,CAAC,mBAAW,EAAE,SAAS,EAAE,UAAU,CAAU;QACrD,MAAM,EAAE,CAAC,OAAO,CAAC,WAAW,EAAE,OAAO,CAAC,QAAQ,CAAC;KAChD,CAAC,CAAC;AACL,CAAC"}
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.BASE_SEPOLIA_BASENAME_RESOLVER_ADDRESS = exports.BASENAME_RESOLVER_ADDRESS = exports.UNIVERSAL_RESOLVER_ADDRESS = void 0;
4
- exports.UNIVERSAL_RESOLVER_ADDRESS = "0xce01f8eee7E479C928F8919abD53E553a36CeF67";
4
+ exports.UNIVERSAL_RESOLVER_ADDRESS = "0xeeeeeeee14d718c2b47d9923deab1335e144eeee";
5
5
  exports.BASENAME_RESOLVER_ADDRESS = "0xC6d566A56A1aFf6508b41f6c90ff131615583BCD";
6
6
  exports.BASE_SEPOLIA_BASENAME_RESOLVER_ADDRESS = "0x6533C94869D28fAA8dF77cc63f9e2b2D6Cf77eBA";
7
7
  //# sourceMappingURL=constants.js.map
@@ -3,8 +3,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.resolveName = resolveName;
4
4
  const ethereum_js_1 = require("../../chains/chain-definitions/ethereum.js");
5
5
  const contract_js_1 = require("../../contract/contract.js");
6
- const hex_js_1 = require("../../utils/encoding/hex.js");
7
- const packetToBytes_js_1 = require("../../utils/ens/packetToBytes.js");
8
6
  const withCache_js_1 = require("../../utils/promise/withCache.js");
9
7
  const reverse_js_1 = require("./__generated__/UniversalResolver/read/reverse.js");
10
8
  const constants_js_1 = require("./constants.js");
@@ -30,20 +28,25 @@ async function resolveName(options) {
30
28
  chain: resolverChain || ethereum_js_1.ethereum,
31
29
  client,
32
30
  });
33
- const reverseName = (0, hex_js_1.toHex)((0, packetToBytes_js_1.packetToBytes)(`${address.toLowerCase().substring(2)}.addr.reverse`));
34
- const [name, resolvedAddress] = await (0, reverse_js_1.reverse)({
31
+ const [name] = await (0, reverse_js_1.reverse)({
35
32
  contract,
36
- reverseName,
33
+ reverseName: address,
34
+ coinType: 60n,
37
35
  }).catch((e) => {
38
- if ("data" in e && e.data === "0x7199966d") {
39
- return [null, address];
36
+ // Re-throw verification errors so callers can detect data integrity issues
37
+ if (typeof e === "object" &&
38
+ e !== null &&
39
+ "data" in e &&
40
+ typeof e.data === "string") {
41
+ // ReverseAddressMismatch(string,bytes) = 0xef9c03ce
42
+ if (e.data.startsWith("0xef9c03ce")) {
43
+ throw e;
44
+ }
40
45
  }
41
- throw e;
46
+ // Swallow expected "no resolver" / "no name" errors
47
+ return [null];
42
48
  });
43
- if (address.toLowerCase() !== resolvedAddress.toLowerCase()) {
44
- return null;
45
- }
46
- return name;
49
+ return name || null;
47
50
  }, {
48
51
  cacheKey: `ens:name:${resolverChain?.id || 1}:${address}`,
49
52
  // 1min cache
@@ -1 +1 @@
1
- {"version":3,"file":"resolve-name.js","sourceRoot":"","sources":["../../../../src/extensions/ens/resolve-name.ts"],"names":[],"mappings":";;AAmCA,kCAqCC;AAvED,4EAAsE;AAGtE,4DAAyD;AACzD,wDAAoD;AACpD,uEAAiE;AACjE,mEAA6D;AAC7D,kFAA4E;AAC5E,iDAA4D;AAY5D;;;;;;;;;;;;;GAaG;AACI,KAAK,UAAU,WAAW,CAAC,OAA2B;IAC3D,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC;IAEpE,OAAO,IAAA,wBAAS,EACd,KAAK,IAAI,EAAE;QACT,MAAM,QAAQ,GAAG,IAAA,yBAAW,EAAC;YAC3B,OAAO,EAAE,eAAe,IAAI,yCAA0B;YACtD,KAAK,EAAE,aAAa,IAAI,sBAAQ;YAChC,MAAM;SACP,CAAC,CAAC;QAEH,MAAM,WAAW,GAAG,IAAA,cAAK,EACvB,IAAA,gCAAa,EAAC,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,eAAe,CAAC,CACpE,CAAC;QAEF,MAAM,CAAC,IAAI,EAAE,eAAe,CAAC,GAAG,MAAM,IAAA,oBAAO,EAAC;YAC5C,QAAQ;YACR,WAAW;SACZ,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;YACb,IAAI,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;gBAC3C,OAAO,CAAC,IAAI,EAAE,OAAO,CAAU,CAAC;YAClC,CAAC;YACD,MAAM,CAAC,CAAC;QACV,CAAC,CAAC,CAAC;QAEH,IAAI,OAAO,CAAC,WAAW,EAAE,KAAK,eAAe,CAAC,WAAW,EAAE,EAAE,CAAC;YAC5D,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC,EACD;QACE,QAAQ,EAAE,YAAY,aAAa,EAAE,EAAE,IAAI,CAAC,IAAI,OAAO,EAAE;QACzD,aAAa;QACb,SAAS,EAAE,EAAE,GAAG,IAAI;KACrB,CACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"resolve-name.js","sourceRoot":"","sources":["../../../../src/extensions/ens/resolve-name.ts"],"names":[],"mappings":";;AAiCA,kCA0CC;AA1ED,4EAAsE;AAGtE,4DAAyD;AACzD,mEAA6D;AAC7D,kFAA4E;AAC5E,iDAA4D;AAY5D;;;;;;;;;;;;;GAaG;AACI,KAAK,UAAU,WAAW,CAC/B,OAA2B;IAE3B,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC;IAEpE,OAAO,IAAA,wBAAS,EACd,KAAK,IAAI,EAAE;QACT,MAAM,QAAQ,GAAG,IAAA,yBAAW,EAAC;YAC3B,OAAO,EAAE,eAAe,IAAI,yCAA0B;YACtD,KAAK,EAAE,aAAa,IAAI,sBAAQ;YAChC,MAAM;SACP,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,IAAA,oBAAO,EAAC;YAC3B,QAAQ;YACR,WAAW,EAAE,OAAwB;YACrC,QAAQ,EAAE,GAAG;SACd,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;YACb,2EAA2E;YAC3E,IACE,OAAO,CAAC,KAAK,QAAQ;gBACrB,CAAC,KAAK,IAAI;gBACV,MAAM,IAAI,CAAC;gBACX,OAAO,CAAC,CAAC,IAAI,KAAK,QAAQ,EAC1B,CAAC;gBACD,oDAAoD;gBACpD,IAAI,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;oBACpC,MAAM,CAAC,CAAC;gBACV,CAAC;YACH,CAAC;YACD,oDAAoD;YACpD,OAAO,CAAC,IAAI,CAAU,CAAC;QACzB,CAAC,CAAC,CAAC;QAEH,OAAO,IAAI,IAAI,IAAI,CAAC;IACtB,CAAC,EACD;QACE,QAAQ,EAAE,YAAY,aAAa,EAAE,EAAE,IAAI,CAAC,IAAI,OAAO,EAAE;QACzD,aAAa;QACb,SAAS,EAAE,EAAE,GAAG,IAAI;KACrB,CACF,CAAC;AACJ,CAAC"}
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.version = void 0;
4
- exports.version = "5.119.3";
4
+ exports.version = "5.119.4";
5
5
  //# sourceMappingURL=version.js.map
@@ -2,12 +2,16 @@ import { decodeAbiParameters } from "viem";
2
2
  import { readContract } from "../../../../../transaction/read-contract.js";
3
3
  import { encodeAbiParameters } from "../../../../../utils/abi/encodeAbiParameters.js";
4
4
  import { detectMethod } from "../../../../../utils/bytecode/detectExtension.js";
5
- export const FN_SELECTOR = "0xec11c823";
5
+ export const FN_SELECTOR = "0x5d78a217";
6
6
  const FN_INPUTS = [
7
7
  {
8
8
  name: "reverseName",
9
9
  type: "bytes",
10
10
  },
11
+ {
12
+ name: "coinType",
13
+ type: "uint256",
14
+ },
11
15
  ];
12
16
  const FN_OUTPUTS = [
13
17
  {
@@ -19,9 +23,6 @@ const FN_OUTPUTS = [
19
23
  {
20
24
  type: "address",
21
25
  },
22
- {
23
- type: "address",
24
- },
25
26
  ];
26
27
  /**
27
28
  * Checks if the `reverse` method is supported by the given contract.
@@ -54,7 +55,10 @@ export function isReverseSupported(availableSelectors) {
54
55
  * ```
55
56
  */
56
57
  export function encodeReverseParams(options) {
57
- return encodeAbiParameters(FN_INPUTS, [options.reverseName]);
58
+ return encodeAbiParameters(FN_INPUTS, [
59
+ options.reverseName,
60
+ options.coinType,
61
+ ]);
58
62
  }
59
63
  /**
60
64
  * Encodes the "reverse" function into a Hex string with its parameters.
@@ -109,7 +113,7 @@ export async function reverse(options) {
109
113
  return readContract({
110
114
  contract: options.contract,
111
115
  method: [FN_SELECTOR, FN_INPUTS, FN_OUTPUTS],
112
- params: [options.reverseName],
116
+ params: [options.reverseName, options.coinType],
113
117
  });
114
118
  }
115
119
  //# sourceMappingURL=reverse.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"reverse.js","sourceRoot":"","sources":["../../../../../../../src/extensions/ens/__generated__/UniversalResolver/read/reverse.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,MAAM,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,6CAA6C,CAAC;AAE3E,OAAO,EAAE,mBAAmB,EAAE,MAAM,iDAAiD,CAAC;AACtF,OAAO,EAAE,YAAY,EAAE,MAAM,kDAAkD,CAAC;AAahF,MAAM,CAAC,MAAM,WAAW,GAAG,YAAqB,CAAC;AACjD,MAAM,SAAS,GAAG;IAChB;QACE,IAAI,EAAE,aAAa;QACnB,IAAI,EAAE,OAAO;KACd;CACO,CAAC;AACX,MAAM,UAAU,GAAG;IACjB;QACE,IAAI,EAAE,QAAQ;KACf;IACD;QACE,IAAI,EAAE,SAAS;KAChB;IACD;QACE,IAAI,EAAE,SAAS;KAChB;IACD;QACE,IAAI,EAAE,SAAS;KAChB;CACO,CAAC;AAEX;;;;;;;;;;GAUG;AACH,MAAM,UAAU,kBAAkB,CAAC,kBAA4B;IAC7D,OAAO,YAAY,CAAC;QAClB,kBAAkB;QAClB,MAAM,EAAE,CAAC,WAAW,EAAE,SAAS,EAAE,UAAU,CAAU;KACtD,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,mBAAmB,CAAC,OAAsB;IACxD,OAAO,mBAAmB,CAAC,SAAS,EAAE,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC;AAC/D,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,aAAa,CAAC,OAAsB;IAClD,iFAAiF;IACjF,oEAAoE;IACpE,OAAO,CAAC,WAAW;QACjB,mBAAmB,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAqC,CAAC;AAC/E,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,mBAAmB,CAAC,MAAW;IAC7C,OAAO,mBAAmB,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;AACjD,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,OAA8C;IAC1E,OAAO,YAAY,CAAC;QAClB,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,MAAM,EAAE,CAAC,WAAW,EAAE,SAAS,EAAE,UAAU,CAAU;QACrD,MAAM,EAAE,CAAC,OAAO,CAAC,WAAW,CAAC;KAC9B,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"reverse.js","sourceRoot":"","sources":["../../../../../../../src/extensions/ens/__generated__/UniversalResolver/read/reverse.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,MAAM,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,6CAA6C,CAAC;AAE3E,OAAO,EAAE,mBAAmB,EAAE,MAAM,iDAAiD,CAAC;AACtF,OAAO,EAAE,YAAY,EAAE,MAAM,kDAAkD,CAAC;AAiBhF,MAAM,CAAC,MAAM,WAAW,GAAG,YAAqB,CAAC;AACjD,MAAM,SAAS,GAAG;IAChB;QACE,IAAI,EAAE,aAAa;QACnB,IAAI,EAAE,OAAO;KACd;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,SAAS;KAChB;CACO,CAAC;AACX,MAAM,UAAU,GAAG;IACjB;QACE,IAAI,EAAE,QAAQ;KACf;IACD;QACE,IAAI,EAAE,SAAS;KAChB;IACD;QACE,IAAI,EAAE,SAAS;KAChB;CACO,CAAC;AAEX;;;;;;;;;;GAUG;AACH,MAAM,UAAU,kBAAkB,CAAC,kBAA4B;IAC7D,OAAO,YAAY,CAAC;QAClB,kBAAkB;QAClB,MAAM,EAAE,CAAC,WAAW,EAAE,SAAS,EAAE,UAAU,CAAU;KACtD,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,mBAAmB,CAAC,OAAsB;IACxD,OAAO,mBAAmB,CAAC,SAAS,EAAE;QACpC,OAAO,CAAC,WAAW;QACnB,OAAO,CAAC,QAAQ;KACjB,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,aAAa,CAAC,OAAsB;IAClD,iFAAiF;IACjF,oEAAoE;IACpE,OAAO,CAAC,WAAW;QACjB,mBAAmB,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAqC,CAAC;AAC/E,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,mBAAmB,CAAC,MAAW;IAC7C,OAAO,mBAAmB,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;AACjD,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,OAA8C;IAC1E,OAAO,YAAY,CAAC;QAClB,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,MAAM,EAAE,CAAC,WAAW,EAAE,SAAS,EAAE,UAAU,CAAU;QACrD,MAAM,EAAE,CAAC,OAAO,CAAC,WAAW,EAAE,OAAO,CAAC,QAAQ,CAAC;KAChD,CAAC,CAAC;AACL,CAAC"}
@@ -1,4 +1,4 @@
1
- export const UNIVERSAL_RESOLVER_ADDRESS = "0xce01f8eee7E479C928F8919abD53E553a36CeF67";
1
+ export const UNIVERSAL_RESOLVER_ADDRESS = "0xeeeeeeee14d718c2b47d9923deab1335e144eeee";
2
2
  export const BASENAME_RESOLVER_ADDRESS = "0xC6d566A56A1aFf6508b41f6c90ff131615583BCD";
3
3
  export const BASE_SEPOLIA_BASENAME_RESOLVER_ADDRESS = "0x6533C94869D28fAA8dF77cc63f9e2b2D6Cf77eBA";
4
4
  //# sourceMappingURL=constants.js.map
@@ -1,7 +1,5 @@
1
1
  import { ethereum } from "../../chains/chain-definitions/ethereum.js";
2
2
  import { getContract } from "../../contract/contract.js";
3
- import { toHex } from "../../utils/encoding/hex.js";
4
- import { packetToBytes } from "../../utils/ens/packetToBytes.js";
5
3
  import { withCache } from "../../utils/promise/withCache.js";
6
4
  import { reverse } from "./__generated__/UniversalResolver/read/reverse.js";
7
5
  import { UNIVERSAL_RESOLVER_ADDRESS } from "./constants.js";
@@ -27,20 +25,25 @@ export async function resolveName(options) {
27
25
  chain: resolverChain || ethereum,
28
26
  client,
29
27
  });
30
- const reverseName = toHex(packetToBytes(`${address.toLowerCase().substring(2)}.addr.reverse`));
31
- const [name, resolvedAddress] = await reverse({
28
+ const [name] = await reverse({
32
29
  contract,
33
- reverseName,
30
+ reverseName: address,
31
+ coinType: 60n,
34
32
  }).catch((e) => {
35
- if ("data" in e && e.data === "0x7199966d") {
36
- return [null, address];
33
+ // Re-throw verification errors so callers can detect data integrity issues
34
+ if (typeof e === "object" &&
35
+ e !== null &&
36
+ "data" in e &&
37
+ typeof e.data === "string") {
38
+ // ReverseAddressMismatch(string,bytes) = 0xef9c03ce
39
+ if (e.data.startsWith("0xef9c03ce")) {
40
+ throw e;
41
+ }
37
42
  }
38
- throw e;
43
+ // Swallow expected "no resolver" / "no name" errors
44
+ return [null];
39
45
  });
40
- if (address.toLowerCase() !== resolvedAddress.toLowerCase()) {
41
- return null;
42
- }
43
- return name;
46
+ return name || null;
44
47
  }, {
45
48
  cacheKey: `ens:name:${resolverChain?.id || 1}:${address}`,
46
49
  // 1min cache
@@ -1 +1 @@
1
- {"version":3,"file":"resolve-name.js","sourceRoot":"","sources":["../../../../src/extensions/ens/resolve-name.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,4CAA4C,CAAC;AAGtE,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,EAAE,KAAK,EAAE,MAAM,6BAA6B,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AACjE,OAAO,EAAE,SAAS,EAAE,MAAM,kCAAkC,CAAC;AAC7D,OAAO,EAAE,OAAO,EAAE,MAAM,mDAAmD,CAAC;AAC5E,OAAO,EAAE,0BAA0B,EAAE,MAAM,gBAAgB,CAAC;AAY5D;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,OAA2B;IAC3D,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC;IAEpE,OAAO,SAAS,CACd,KAAK,IAAI,EAAE;QACT,MAAM,QAAQ,GAAG,WAAW,CAAC;YAC3B,OAAO,EAAE,eAAe,IAAI,0BAA0B;YACtD,KAAK,EAAE,aAAa,IAAI,QAAQ;YAChC,MAAM;SACP,CAAC,CAAC;QAEH,MAAM,WAAW,GAAG,KAAK,CACvB,aAAa,CAAC,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,eAAe,CAAC,CACpE,CAAC;QAEF,MAAM,CAAC,IAAI,EAAE,eAAe,CAAC,GAAG,MAAM,OAAO,CAAC;YAC5C,QAAQ;YACR,WAAW;SACZ,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;YACb,IAAI,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;gBAC3C,OAAO,CAAC,IAAI,EAAE,OAAO,CAAU,CAAC;YAClC,CAAC;YACD,MAAM,CAAC,CAAC;QACV,CAAC,CAAC,CAAC;QAEH,IAAI,OAAO,CAAC,WAAW,EAAE,KAAK,eAAe,CAAC,WAAW,EAAE,EAAE,CAAC;YAC5D,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC,EACD;QACE,QAAQ,EAAE,YAAY,aAAa,EAAE,EAAE,IAAI,CAAC,IAAI,OAAO,EAAE;QACzD,aAAa;QACb,SAAS,EAAE,EAAE,GAAG,IAAI;KACrB,CACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"resolve-name.js","sourceRoot":"","sources":["../../../../src/extensions/ens/resolve-name.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,4CAA4C,CAAC;AAGtE,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,kCAAkC,CAAC;AAC7D,OAAO,EAAE,OAAO,EAAE,MAAM,mDAAmD,CAAC;AAC5E,OAAO,EAAE,0BAA0B,EAAE,MAAM,gBAAgB,CAAC;AAY5D;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,OAA2B;IAE3B,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC;IAEpE,OAAO,SAAS,CACd,KAAK,IAAI,EAAE;QACT,MAAM,QAAQ,GAAG,WAAW,CAAC;YAC3B,OAAO,EAAE,eAAe,IAAI,0BAA0B;YACtD,KAAK,EAAE,aAAa,IAAI,QAAQ;YAChC,MAAM;SACP,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,OAAO,CAAC;YAC3B,QAAQ;YACR,WAAW,EAAE,OAAwB;YACrC,QAAQ,EAAE,GAAG;SACd,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;YACb,2EAA2E;YAC3E,IACE,OAAO,CAAC,KAAK,QAAQ;gBACrB,CAAC,KAAK,IAAI;gBACV,MAAM,IAAI,CAAC;gBACX,OAAO,CAAC,CAAC,IAAI,KAAK,QAAQ,EAC1B,CAAC;gBACD,oDAAoD;gBACpD,IAAI,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;oBACpC,MAAM,CAAC,CAAC;gBACV,CAAC;YACH,CAAC;YACD,oDAAoD;YACpD,OAAO,CAAC,IAAI,CAAU,CAAC;QACzB,CAAC,CAAC,CAAC;QAEH,OAAO,IAAI,IAAI,IAAI,CAAC;IACtB,CAAC,EACD;QACE,QAAQ,EAAE,YAAY,aAAa,EAAE,EAAE,IAAI,CAAC,IAAI,OAAO,EAAE;QACzD,aAAa;QACb,SAAS,EAAE,EAAE,GAAG,IAAI;KACrB,CACF,CAAC;AACJ,CAAC"}
@@ -1,2 +1,2 @@
1
- export const version = "5.119.3";
1
+ export const version = "5.119.4";
2
2
  //# sourceMappingURL=version.js.map