thirdweb 5.48.4-nightly-3d60da3717effdc7311ef5b6054f52127b5780f8-20240830000409 → 5.50.0-nightly-6432e8dc6bdd0ed985fe0d76e47b36601bfa8be3-20240831000359
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/exports/extensions/ens.js +6 -1
- package/dist/cjs/exports/extensions/ens.js.map +1 -1
- package/dist/cjs/exports/react.js +3 -1
- package/dist/cjs/exports/react.js.map +1 -1
- package/dist/cjs/extensions/ens/__generated__/L2Resolver/read/name.js +115 -0
- package/dist/cjs/extensions/ens/__generated__/L2Resolver/read/name.js.map +1 -0
- package/dist/cjs/extensions/ens/constants.js +3 -1
- package/dist/cjs/extensions/ens/constants.js.map +1 -1
- package/dist/cjs/extensions/ens/resolve-address.js +13 -1
- package/dist/cjs/extensions/ens/resolve-address.js.map +1 -1
- package/dist/cjs/extensions/ens/resolve-l2-name.js +80 -0
- package/dist/cjs/extensions/ens/resolve-l2-name.js.map +1 -0
- package/dist/cjs/extensions/ens/resolve-name.js +1 -1
- package/dist/cjs/extensions/ens/resolve-name.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.js +11 -2
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.js.map +1 -1
- package/dist/cjs/react/web/ui/prebuilt/NFT/NFT.js +217 -0
- package/dist/cjs/react/web/ui/prebuilt/NFT/NFT.js.map +1 -0
- package/dist/cjs/react/web/ui/prebuilt/thirdweb/CreateDirectListingButton/index.js +64 -19
- package/dist/cjs/react/web/ui/prebuilt/thirdweb/CreateDirectListingButton/index.js.map +1 -1
- package/dist/cjs/utils/nft/parseNft.js.map +1 -1
- package/dist/cjs/version.js +1 -1
- package/dist/esm/exports/extensions/ens.js +2 -0
- package/dist/esm/exports/extensions/ens.js.map +1 -1
- package/dist/esm/exports/react.js +1 -0
- package/dist/esm/exports/react.js.map +1 -1
- package/dist/esm/extensions/ens/__generated__/L2Resolver/read/name.js +107 -0
- package/dist/esm/extensions/ens/__generated__/L2Resolver/read/name.js.map +1 -0
- package/dist/esm/extensions/ens/constants.js +2 -0
- package/dist/esm/extensions/ens/constants.js.map +1 -1
- package/dist/esm/extensions/ens/resolve-address.js +13 -1
- package/dist/esm/extensions/ens/resolve-address.js.map +1 -1
- package/dist/esm/extensions/ens/resolve-l2-name.js +75 -0
- package/dist/esm/extensions/ens/resolve-l2-name.js.map +1 -0
- package/dist/esm/extensions/ens/resolve-name.js +1 -1
- package/dist/esm/extensions/ens/resolve-name.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.js +11 -2
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.js.map +1 -1
- package/dist/esm/react/web/ui/prebuilt/NFT/NFT.js +212 -0
- package/dist/esm/react/web/ui/prebuilt/NFT/NFT.js.map +1 -0
- package/dist/esm/react/web/ui/prebuilt/thirdweb/CreateDirectListingButton/index.js +62 -17
- package/dist/esm/react/web/ui/prebuilt/thirdweb/CreateDirectListingButton/index.js.map +1 -1
- package/dist/esm/utils/nft/parseNft.js.map +1 -1
- package/dist/esm/version.js +1 -1
- package/dist/types/exports/extensions/ens.d.ts +2 -0
- package/dist/types/exports/extensions/ens.d.ts.map +1 -1
- package/dist/types/exports/react.d.ts +1 -0
- package/dist/types/exports/react.d.ts.map +1 -1
- package/dist/types/extensions/ens/__generated__/L2Resolver/read/name.d.ts +84 -0
- package/dist/types/extensions/ens/__generated__/L2Resolver/read/name.d.ts.map +1 -0
- package/dist/types/extensions/ens/constants.d.ts +2 -0
- package/dist/types/extensions/ens/constants.d.ts.map +1 -1
- package/dist/types/extensions/ens/resolve-address.d.ts +12 -0
- package/dist/types/extensions/ens/resolve-address.d.ts.map +1 -1
- package/dist/types/extensions/ens/resolve-l2-name.d.ts +48 -0
- package/dist/types/extensions/ens/resolve-l2-name.d.ts.map +1 -0
- package/dist/types/react/web/ui/prebuilt/NFT/NFT.d.ts +75 -0
- package/dist/types/react/web/ui/prebuilt/NFT/NFT.d.ts.map +1 -0
- package/dist/types/react/web/ui/prebuilt/thirdweb/CreateDirectListingButton/index.d.ts.map +1 -1
- package/dist/types/utils/nft/parseNft.d.ts +1 -0
- package/dist/types/utils/nft/parseNft.d.ts.map +1 -1
- package/dist/types/version.d.ts +1 -1
- package/package.json +1 -1
- package/src/exports/extensions/ens.ts +10 -0
- package/src/exports/react.ts +5 -0
- package/src/extensions/ens/__generated__/L2Resolver/read/name.ts +122 -0
- package/src/extensions/ens/constants.ts +4 -0
- package/src/extensions/ens/resolve-address.test.ts +13 -0
- package/src/extensions/ens/resolve-address.ts +13 -1
- package/src/extensions/ens/resolve-l2-name.test.ts +30 -0
- package/src/extensions/ens/resolve-l2-name.ts +107 -0
- package/src/extensions/ens/resolve-name.ts +1 -1
- package/src/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.tsx +12 -2
- package/src/react/web/ui/prebuilt/NFT/NFT.test.tsx +111 -0
- package/src/react/web/ui/prebuilt/NFT/NFT.tsx +272 -0
- package/src/react/web/ui/prebuilt/thirdweb/CreateDirectListingButton/index.tsx +75 -18
- package/src/utils/nft/parseNft.ts +1 -0
- package/src/version.ts +1 -1
@@ -2,4 +2,6 @@ export { type ResolveAddressOptions, resolveAddress, } from "../../extensions/en
|
|
2
2
|
export { type ResolveAvatarOptions, resolveAvatar, } from "../../extensions/ens/resolve-avatar.js";
|
3
3
|
export { type ResolveTextOptions, resolveText, } from "../../extensions/ens/resolve-text.js";
|
4
4
|
export { type ResolveNameOptions, resolveName, } from "../../extensions/ens/resolve-name.js";
|
5
|
+
export { type ResolveL2NameOptions, resolveL2Name, } from "../../extensions/ens/resolve-l2-name.js";
|
6
|
+
export { BASENAME_RESOLVER_ADDRESS, BASE_SEPOLIA_BASENAME_RESOLVER_ADDRESS, } from "../../extensions/ens/constants.js";
|
5
7
|
//# sourceMappingURL=ens.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"ens.d.ts","sourceRoot":"","sources":["../../../../src/exports/extensions/ens.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,qBAAqB,EAC1B,cAAc,GACf,MAAM,yCAAyC,CAAC;AAEjD,OAAO,EACL,KAAK,oBAAoB,EACzB,aAAa,GACd,MAAM,wCAAwC,CAAC;AAEhD,OAAO,EACL,KAAK,kBAAkB,EACvB,WAAW,GACZ,MAAM,sCAAsC,CAAC;AAE9C,OAAO,EACL,KAAK,kBAAkB,EACvB,WAAW,GACZ,MAAM,sCAAsC,CAAC"}
|
1
|
+
{"version":3,"file":"ens.d.ts","sourceRoot":"","sources":["../../../../src/exports/extensions/ens.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,qBAAqB,EAC1B,cAAc,GACf,MAAM,yCAAyC,CAAC;AAEjD,OAAO,EACL,KAAK,oBAAoB,EACzB,aAAa,GACd,MAAM,wCAAwC,CAAC;AAEhD,OAAO,EACL,KAAK,kBAAkB,EACvB,WAAW,GACZ,MAAM,sCAAsC,CAAC;AAE9C,OAAO,EACL,KAAK,kBAAkB,EACvB,WAAW,GACZ,MAAM,sCAAsC,CAAC;AAE9C,OAAO,EACL,KAAK,oBAAoB,EACzB,aAAa,GACd,MAAM,yCAAyC,CAAC;AAEjD,OAAO,EACL,yBAAyB,EACzB,sCAAsC,GACvC,MAAM,mCAAmC,CAAC"}
|
@@ -71,6 +71,7 @@ export { ClaimButton } from "../react/web/ui/prebuilt/thirdweb/ClaimButton/index
|
|
71
71
|
export type { ClaimButtonProps } from "../react/web/ui/prebuilt/thirdweb/ClaimButton/types.js";
|
72
72
|
export { BuyDirectListingButton, type BuyDirectListingButtonProps, } from "../react/web/ui/prebuilt/thirdweb/BuyDirectListingButton/index.js";
|
73
73
|
export { CreateDirectListingButton, type CreateDirectListingButtonProps, } from "../react/web/ui/prebuilt/thirdweb/CreateDirectListingButton/index.js";
|
74
|
+
export { NFT, type NFTMediaProps, } from "../react/web/ui/prebuilt/NFT/NFT.js";
|
74
75
|
export { useConnectionManager } from "../react/core/providers/connection-manager.js";
|
75
76
|
/**
|
76
77
|
* Blobbie
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"react.d.ts","sourceRoot":"","sources":["../../../src/exports/react.ts"],"names":[],"mappings":"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"}
|
1
|
+
{"version":3,"file":"react.d.ts","sourceRoot":"","sources":["../../../src/exports/react.ts"],"names":[],"mappings":"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"}
|
@@ -0,0 +1,84 @@
|
|
1
|
+
import type { AbiParameterToPrimitiveType } from "abitype";
|
2
|
+
import type { BaseTransactionOptions } from "../../../../../transaction/types.js";
|
3
|
+
import type { Hex } from "../../../../../utils/encoding/hex.js";
|
4
|
+
/**
|
5
|
+
* Represents the parameters for the "name" function.
|
6
|
+
*/
|
7
|
+
export type NameParams = {
|
8
|
+
node: AbiParameterToPrimitiveType<{
|
9
|
+
type: "bytes32";
|
10
|
+
name: "node";
|
11
|
+
}>;
|
12
|
+
};
|
13
|
+
export declare const FN_SELECTOR: "0x691f3431";
|
14
|
+
/**
|
15
|
+
* Checks if the `name` method is supported by the given contract.
|
16
|
+
* @param availableSelectors An array of 4byte function selectors of the contract. You can get this in various ways, such as using "whatsabi" or if you have the ABI of the contract available you can use it to generate the selectors.
|
17
|
+
* @returns A boolean indicating if the `name` method is supported.
|
18
|
+
* @extension ENS
|
19
|
+
* @example
|
20
|
+
* ```ts
|
21
|
+
* import { isNameSupported } from "thirdweb/extensions/ens";
|
22
|
+
*
|
23
|
+
* const supported = isNameSupported(["0x..."]);
|
24
|
+
* ```
|
25
|
+
*/
|
26
|
+
export declare function isNameSupported(availableSelectors: string[]): boolean;
|
27
|
+
/**
|
28
|
+
* Encodes the parameters for the "name" function.
|
29
|
+
* @param options - The options for the name function.
|
30
|
+
* @returns The encoded ABI parameters.
|
31
|
+
* @extension ENS
|
32
|
+
* @example
|
33
|
+
* ```ts
|
34
|
+
* import { encodeNameParams } "thirdweb/extensions/ens";
|
35
|
+
* const result = encodeNameParams({
|
36
|
+
* node: ...,
|
37
|
+
* });
|
38
|
+
* ```
|
39
|
+
*/
|
40
|
+
export declare function encodeNameParams(options: NameParams): `0x${string}`;
|
41
|
+
/**
|
42
|
+
* Encodes the "name" function into a Hex string with its parameters.
|
43
|
+
* @param options - The options for the name function.
|
44
|
+
* @returns The encoded hexadecimal string.
|
45
|
+
* @extension ENS
|
46
|
+
* @example
|
47
|
+
* ```ts
|
48
|
+
* import { encodeName } "thirdweb/extensions/ens";
|
49
|
+
* const result = encodeName({
|
50
|
+
* node: ...,
|
51
|
+
* });
|
52
|
+
* ```
|
53
|
+
*/
|
54
|
+
export declare function encodeName(options: NameParams): `${typeof FN_SELECTOR}${string}`;
|
55
|
+
/**
|
56
|
+
* Decodes the result of the name function call.
|
57
|
+
* @param result - The hexadecimal result to decode.
|
58
|
+
* @returns The decoded result as per the FN_OUTPUTS definition.
|
59
|
+
* @extension ENS
|
60
|
+
* @example
|
61
|
+
* ```ts
|
62
|
+
* import { decodeNameResult } from "thirdweb/extensions/ens";
|
63
|
+
* const result = decodeNameResult("...");
|
64
|
+
* ```
|
65
|
+
*/
|
66
|
+
export declare function decodeNameResult(result: Hex): string;
|
67
|
+
/**
|
68
|
+
* Calls the "name" function on the contract.
|
69
|
+
* @param options - The options for the name function.
|
70
|
+
* @returns The parsed result of the function call.
|
71
|
+
* @extension ENS
|
72
|
+
* @example
|
73
|
+
* ```ts
|
74
|
+
* import { name } from "thirdweb/extensions/ens";
|
75
|
+
*
|
76
|
+
* const result = await name({
|
77
|
+
* contract,
|
78
|
+
* node: ...,
|
79
|
+
* });
|
80
|
+
*
|
81
|
+
* ```
|
82
|
+
*/
|
83
|
+
export declare function name(options: BaseTransactionOptions<NameParams>): Promise<string>;
|
84
|
+
//# sourceMappingURL=name.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"name.d.ts","sourceRoot":"","sources":["../../../../../../../src/extensions/ens/__generated__/L2Resolver/read/name.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,SAAS,CAAC;AAE3D,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,qCAAqC,CAAC;AAGlF,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,sCAAsC,CAAC;AAGhE;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG;IACvB,IAAI,EAAE,2BAA2B,CAAC;QAAE,IAAI,EAAE,SAAS,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACtE,CAAC;AAEF,eAAO,MAAM,WAAW,cAAwB,CAAC;AAajD;;;;;;;;;;;GAWG;AACH,wBAAgB,eAAe,CAAC,kBAAkB,EAAE,MAAM,EAAE,WAK3D;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,UAAU,iBAEnD;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,UAAU,CAAC,OAAO,EAAE,UAAU,GAIH,GAAG,OAAO,WAAW,GAAG,MAAM,EAAE,CAC1E;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,GAAG,UAE3C;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,IAAI,CAAC,OAAO,EAAE,sBAAsB,CAAC,UAAU,CAAC,mBAMrE"}
|
@@ -1,2 +1,4 @@
|
|
1
1
|
export declare const UNIVERSAL_RESOLVER_ADDRESS = "0xce01f8eee7E479C928F8919abD53E553a36CeF67";
|
2
|
+
export declare const BASENAME_RESOLVER_ADDRESS = "0xC6d566A56A1aFf6508b41f6c90ff131615583BCD";
|
3
|
+
export declare const BASE_SEPOLIA_BASENAME_RESOLVER_ADDRESS = "0x6533C94869D28fAA8dF77cc63f9e2b2D6Cf77eBA";
|
2
4
|
//# sourceMappingURL=constants.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../src/extensions/ens/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,0BAA0B,+CACO,CAAC"}
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../src/extensions/ens/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,0BAA0B,+CACO,CAAC;AAC/C,eAAO,MAAM,yBAAyB,+CACQ,CAAC;AAC/C,eAAO,MAAM,sCAAsC,+CACL,CAAC"}
|
@@ -20,6 +20,18 @@ export type ResolveAddressOptions = {
|
|
20
20
|
* name: "vitalik.eth",
|
21
21
|
* });
|
22
22
|
* ```
|
23
|
+
*
|
24
|
+
* Resolve an address to a Basename.
|
25
|
+
* ```ts
|
26
|
+
* import { resolveAddress, BASENAME_RESOLVER_ADDRESS } from "thirdweb/extensions/ens";
|
27
|
+
* import { base } from "thirdweb/chains";
|
28
|
+
* const address = await resolveAddress({
|
29
|
+
* client,
|
30
|
+
* name: "myk.base.eth",
|
31
|
+
* resolverAddress: BASENAME_RESOLVER_ADDRESS,
|
32
|
+
* resolverChain: base,
|
33
|
+
* });
|
34
|
+
* ```
|
23
35
|
* @extension ENS
|
24
36
|
* @returns A promise that resolves to the Ethereum address.
|
25
37
|
*/
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"resolve-address.d.ts","sourceRoot":"","sources":["../../../../src/extensions/ens/resolve-address.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAW7D;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAAG;IAClC,MAAM,EAAE,cAAc,CAAC;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,aAAa,CAAC,EAAE,KAAK,CAAC;CACvB,CAAC;AAEF
|
1
|
+
{"version":3,"file":"resolve-address.d.ts","sourceRoot":"","sources":["../../../../src/extensions/ens/resolve-address.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAW7D;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAAG;IAClC,MAAM,EAAE,cAAc,CAAC;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,aAAa,CAAC,EAAE,KAAK,CAAC;CACvB,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAsB,cAAc,CAAC,OAAO,EAAE,qBAAqB,0BA4BlE"}
|
@@ -0,0 +1,48 @@
|
|
1
|
+
import type { Address } from "abitype";
|
2
|
+
import type { Chain } from "../../chains/types.js";
|
3
|
+
import type { ThirdwebClient } from "../../client/client.js";
|
4
|
+
/**
|
5
|
+
* @extension ENS
|
6
|
+
*/
|
7
|
+
export type ResolveL2NameOptions = {
|
8
|
+
client: ThirdwebClient;
|
9
|
+
address: Address;
|
10
|
+
resolverAddress: string;
|
11
|
+
resolverChain: Chain;
|
12
|
+
};
|
13
|
+
/**
|
14
|
+
* Convert an address to a reverse node for ENS resolution
|
15
|
+
*
|
16
|
+
* @internal
|
17
|
+
*/
|
18
|
+
export declare const convertReverseNodeToBytes: (address: Address, chainId: number) => `0x${string}`;
|
19
|
+
/**
|
20
|
+
* Resolves the L2 name for a specified address.
|
21
|
+
* @param options - The options for resolving an L2 ENS address.
|
22
|
+
* @example
|
23
|
+
* ```ts
|
24
|
+
* import { resolveL2Name } from "thirdweb/extensions/ens";
|
25
|
+
* const name = await resolveL2Name({
|
26
|
+
* client,
|
27
|
+
* address: "0x1234...",
|
28
|
+
* resolverAddress: "0x...",
|
29
|
+
* resolverChain: base,
|
30
|
+
* });
|
31
|
+
* ```
|
32
|
+
*
|
33
|
+
* Resolve a Basename.
|
34
|
+
* ```ts
|
35
|
+
* import { resolveL2Name, BASENAME_RESOLVER_ADDRESS } from "thirdweb/extensions/ens";
|
36
|
+
* import { base } from "thirdweb/chains";
|
37
|
+
* const name = await resolveL2Name({
|
38
|
+
* client,
|
39
|
+
* address: "0x1234...",
|
40
|
+
* resolverAddress: BASENAME_RESOLVER_ADDRESS,
|
41
|
+
* resolverChain: base,
|
42
|
+
* });
|
43
|
+
* ```
|
44
|
+
* @extension ENS
|
45
|
+
* @returns A promise that resolves to the Ethereum address.
|
46
|
+
*/
|
47
|
+
export declare function resolveL2Name(options: ResolveL2NameOptions): Promise<string | null>;
|
48
|
+
//# sourceMappingURL=resolve-l2-name.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"resolve-l2-name.d.ts","sourceRoot":"","sources":["../../../../src/extensions/ens/resolve-l2-name.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAEvC,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAK7D;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAAG;IACjC,MAAM,EAAE,cAAc,CAAC;IACvB,OAAO,EAAE,OAAO,CAAC;IACjB,eAAe,EAAE,MAAM,CAAC;IACxB,aAAa,EAAE,KAAK,CAAC;CACtB,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,yBAAyB,YAC3B,OAAO,WACP,MAAM,kBAahB,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAsB,aAAa,CAAC,OAAO,EAAE,oBAAoB,0BAsChE"}
|
@@ -0,0 +1,75 @@
|
|
1
|
+
import type { ThirdwebContract } from "../../../../../contract/contract.js";
|
2
|
+
import type { NFT as NFTType } from "../../../../../utils/nft/parseNft.js";
|
3
|
+
import type { MediaRendererProps } from "../../MediaRenderer/types.js";
|
4
|
+
/**
|
5
|
+
* Props for the <NFT> component
|
6
|
+
* @component
|
7
|
+
*/
|
8
|
+
export type NFTProviderProps = {
|
9
|
+
/**
|
10
|
+
* The NFT contract address. Accepts both ERC721 and ERC1155 contracts
|
11
|
+
*/
|
12
|
+
contract: ThirdwebContract;
|
13
|
+
/**
|
14
|
+
* The tokenId whose info you want to display
|
15
|
+
*/
|
16
|
+
tokenId: bigint;
|
17
|
+
};
|
18
|
+
/**
|
19
|
+
* @internal
|
20
|
+
*/
|
21
|
+
export declare const NFTProviderContext: import("react").Context<NFTProviderProps | undefined>;
|
22
|
+
/**
|
23
|
+
* A React context provider component that supplies NFT-related data to its child components.
|
24
|
+
*
|
25
|
+
* This component serves as a wrapper around the `NFTProviderContext.Provider` and passes
|
26
|
+
* the provided NFT data down to all of its child components through the context API.
|
27
|
+
*
|
28
|
+
*
|
29
|
+
* @component
|
30
|
+
* @param {React.PropsWithChildren<NFTProviderProps>} props - The props for the NFT provider
|
31
|
+
*
|
32
|
+
* @example
|
33
|
+
* ```tsx
|
34
|
+
* import { getContract } from "thirdweb";
|
35
|
+
* import { NFT } from "thirdweb/react";
|
36
|
+
*
|
37
|
+
* const contract = getContract({
|
38
|
+
* address: "0x...",
|
39
|
+
* chain: ethereum,
|
40
|
+
* client: yourThirdwebClient,
|
41
|
+
* });
|
42
|
+
*
|
43
|
+
* <NFT contract={contract} tokenId={0n}>
|
44
|
+
* <Suspense fallback={"Loading media..."}>
|
45
|
+
* <NFT.Media />
|
46
|
+
* <NFT.Description />
|
47
|
+
* </Suspense>
|
48
|
+
* </NFT>
|
49
|
+
* ```
|
50
|
+
*/
|
51
|
+
export declare function NFT(props: React.PropsWithChildren<NFTProviderProps>): import("react/jsx-runtime.js").JSX.Element;
|
52
|
+
export declare namespace NFT {
|
53
|
+
var Media: (props: NFTMediaProps) => import("react/jsx-runtime.js").JSX.Element;
|
54
|
+
var Name: (props: {
|
55
|
+
className?: string;
|
56
|
+
style?: React.CSSProperties;
|
57
|
+
}) => import("react/jsx-runtime.js").JSX.Element;
|
58
|
+
var Description: (props: {
|
59
|
+
className: string;
|
60
|
+
style: React.CSSProperties;
|
61
|
+
}) => import("react/jsx-runtime.js").JSX.Element;
|
62
|
+
}
|
63
|
+
/**
|
64
|
+
* @component
|
65
|
+
* The props for the <NFT.Media /> component
|
66
|
+
* It is similar to the [`MediaRendererProps`](https://portal.thirdweb.com/references/typescript/v5/MediaRendererProps)
|
67
|
+
* (excluding `src`, `poster` and `client`) that you can
|
68
|
+
* use to style the NFT.Media
|
69
|
+
*/
|
70
|
+
export type NFTMediaProps = Omit<MediaRendererProps, "src" | "poster" | "client">;
|
71
|
+
/**
|
72
|
+
* @internal
|
73
|
+
*/
|
74
|
+
export declare function getNFTInfo(options: NFTProviderProps): Promise<NFTType>;
|
75
|
+
//# sourceMappingURL=NFT.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"NFT.d.ts","sourceRoot":"","sources":["../../../../../../../src/react/web/ui/prebuilt/NFT/NFT.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAC;AAG5E,OAAO,KAAK,EAAE,GAAG,IAAI,OAAO,EAAE,MAAM,sCAAsC,CAAC;AAE3E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAEvE;;;GAGG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAC7B;;OAEG;IACH,QAAQ,EAAE,gBAAgB,CAAC;IAC3B;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,kBAAkB,uDAEnB,CAAC;AAEb;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAgB,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,8CAMnE;yBANe,GAAG;uBAoEC,aAAa;sBAsDd;QAAE,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAA;KAAE;6BA4C5C;QACxB,SAAS,EAAE,MAAM,CAAC;QAClB,KAAK,EAAE,KAAK,CAAC,aAAa,CAAC;KAC5B;;AApJD;;;;;;GAMG;AACH,MAAM,MAAM,aAAa,GAAG,IAAI,CAC9B,kBAAkB,EAClB,KAAK,GAAG,QAAQ,GAAG,QAAQ,CAC5B,CAAC;AAyJF;;GAEG;AACH,wBAAsB,UAAU,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,OAAO,CAAC,CAsB5E"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../src/react/web/ui/prebuilt/thirdweb/CreateDirectListingButton/index.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mCAAmC,CAAC;AAC/D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../src/react/web/ui/prebuilt/thirdweb/CreateDirectListingButton/index.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mCAAmC,CAAC;AAC/D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AAIzE,OAAO,EACL,KAAK,mBAAmB,EAEzB,MAAM,iFAAiF,CAAC;AAGzF,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,mEAAmE,CAAC;AAKhH,MAAM,MAAM,8BAA8B,GAAG,IAAI,CAC/C,sBAAsB,EACtB,aAAa,CACd,GACC,mBAAmB,GAAG;IACpB,eAAe,EAAE,MAAM,CAAC;IACxB,KAAK,EAAE,KAAK,CAAC;IACb,MAAM,EAAE,cAAc,CAAC;CACxB,CAAC;AAEJ;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,8BAA8B,8CAyHtC"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"parseNft.d.ts","sourceRoot":"","sources":["../../../../src/utils/nft/parseNft.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAC1E,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAEjD;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,QAAQ,CAC7B;IACE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,oBAAoB,CAAC;IAC7B,aAAa,CAAC,EAAE,oBAAoB,CAAC;IACrC,YAAY,CAAC,EAAE,oBAAoB,CAAC;IACpC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CACvE,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAC5B,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACrC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;
|
1
|
+
{"version":3,"file":"parseNft.d.ts","sourceRoot":"","sources":["../../../../src/utils/nft/parseNft.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAC1E,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAEjD;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,QAAQ,CAC7B;IACE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,oBAAoB,CAAC;IAC7B,aAAa,CAAC,EAAE,oBAAoB,CAAC;IACrC,YAAY,CAAC,EAAE,oBAAoB,CAAC;IACpC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CACvE,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAC5B,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACrC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACrC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAE5B,MAAM,MAAM,GAAG,GACX;IACE,QAAQ,EAAE,WAAW,CAAC;IACtB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,QAAQ,CAAC;CAChB,GACD;IACE,QAAQ,EAAE,WAAW,CAAC;IACtB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,SAAS,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEN;;GAEG;AACH,MAAM,MAAM,eAAe,GACvB;IACE,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,QAAQ,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB,GACD;IACE,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,SAAS,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEN;;;;;;GAMG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,eAAe,GAAG,GAAG,CAsBzE"}
|
package/dist/types/version.d.ts
CHANGED
@@ -1,2 +1,2 @@
|
|
1
|
-
export declare const version = "5.
|
1
|
+
export declare const version = "5.50.0-nightly-6432e8dc6bdd0ed985fe0d76e47b36601bfa8be3-20240831000359";
|
2
2
|
//# sourceMappingURL=version.d.ts.map
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "thirdweb",
|
3
|
-
"version": "5.
|
3
|
+
"version": "5.50.0-nightly-6432e8dc6bdd0ed985fe0d76e47b36601bfa8be3-20240831000359",
|
4
4
|
"repository": {
|
5
5
|
"type": "git",
|
6
6
|
"url": "git+https://github.com/thirdweb-dev/js.git#main"
|
@@ -17,3 +17,13 @@ export {
|
|
17
17
|
type ResolveNameOptions,
|
18
18
|
resolveName,
|
19
19
|
} from "../../extensions/ens/resolve-name.js";
|
20
|
+
|
21
|
+
export {
|
22
|
+
type ResolveL2NameOptions,
|
23
|
+
resolveL2Name,
|
24
|
+
} from "../../extensions/ens/resolve-l2-name.js";
|
25
|
+
|
26
|
+
export {
|
27
|
+
BASENAME_RESOLVER_ADDRESS,
|
28
|
+
BASE_SEPOLIA_BASENAME_RESOLVER_ADDRESS,
|
29
|
+
} from "../../extensions/ens/constants.js";
|
package/src/exports/react.ts
CHANGED
@@ -171,6 +171,11 @@ export {
|
|
171
171
|
type CreateDirectListingButtonProps,
|
172
172
|
} from "../react/web/ui/prebuilt/thirdweb/CreateDirectListingButton/index.js";
|
173
173
|
|
174
|
+
export {
|
175
|
+
NFT,
|
176
|
+
type NFTMediaProps,
|
177
|
+
} from "../react/web/ui/prebuilt/NFT/NFT.js";
|
178
|
+
|
174
179
|
export { useConnectionManager } from "../react/core/providers/connection-manager.js";
|
175
180
|
|
176
181
|
/**
|
@@ -0,0 +1,122 @@
|
|
1
|
+
import type { AbiParameterToPrimitiveType } from "abitype";
|
2
|
+
import { readContract } from "../../../../../transaction/read-contract.js";
|
3
|
+
import type { BaseTransactionOptions } from "../../../../../transaction/types.js";
|
4
|
+
import { encodeAbiParameters } from "../../../../../utils/abi/encodeAbiParameters.js";
|
5
|
+
import { decodeAbiParameters } from "viem";
|
6
|
+
import type { Hex } from "../../../../../utils/encoding/hex.js";
|
7
|
+
import { detectMethod } from "../../../../../utils/bytecode/detectExtension.js";
|
8
|
+
|
9
|
+
/**
|
10
|
+
* Represents the parameters for the "name" function.
|
11
|
+
*/
|
12
|
+
export type NameParams = {
|
13
|
+
node: AbiParameterToPrimitiveType<{ type: "bytes32"; name: "node" }>;
|
14
|
+
};
|
15
|
+
|
16
|
+
export const FN_SELECTOR = "0x691f3431" as const;
|
17
|
+
const FN_INPUTS = [
|
18
|
+
{
|
19
|
+
type: "bytes32",
|
20
|
+
name: "node",
|
21
|
+
},
|
22
|
+
] as const;
|
23
|
+
const FN_OUTPUTS = [
|
24
|
+
{
|
25
|
+
type: "string",
|
26
|
+
},
|
27
|
+
] as const;
|
28
|
+
|
29
|
+
/**
|
30
|
+
* Checks if the `name` method is supported by the given contract.
|
31
|
+
* @param availableSelectors An array of 4byte function selectors of the contract. You can get this in various ways, such as using "whatsabi" or if you have the ABI of the contract available you can use it to generate the selectors.
|
32
|
+
* @returns A boolean indicating if the `name` method is supported.
|
33
|
+
* @extension ENS
|
34
|
+
* @example
|
35
|
+
* ```ts
|
36
|
+
* import { isNameSupported } from "thirdweb/extensions/ens";
|
37
|
+
*
|
38
|
+
* const supported = isNameSupported(["0x..."]);
|
39
|
+
* ```
|
40
|
+
*/
|
41
|
+
export function isNameSupported(availableSelectors: string[]) {
|
42
|
+
return detectMethod({
|
43
|
+
availableSelectors,
|
44
|
+
method: [FN_SELECTOR, FN_INPUTS, FN_OUTPUTS] as const,
|
45
|
+
});
|
46
|
+
}
|
47
|
+
|
48
|
+
/**
|
49
|
+
* Encodes the parameters for the "name" function.
|
50
|
+
* @param options - The options for the name function.
|
51
|
+
* @returns The encoded ABI parameters.
|
52
|
+
* @extension ENS
|
53
|
+
* @example
|
54
|
+
* ```ts
|
55
|
+
* import { encodeNameParams } "thirdweb/extensions/ens";
|
56
|
+
* const result = encodeNameParams({
|
57
|
+
* node: ...,
|
58
|
+
* });
|
59
|
+
* ```
|
60
|
+
*/
|
61
|
+
export function encodeNameParams(options: NameParams) {
|
62
|
+
return encodeAbiParameters(FN_INPUTS, [options.node]);
|
63
|
+
}
|
64
|
+
|
65
|
+
/**
|
66
|
+
* Encodes the "name" function into a Hex string with its parameters.
|
67
|
+
* @param options - The options for the name function.
|
68
|
+
* @returns The encoded hexadecimal string.
|
69
|
+
* @extension ENS
|
70
|
+
* @example
|
71
|
+
* ```ts
|
72
|
+
* import { encodeName } "thirdweb/extensions/ens";
|
73
|
+
* const result = encodeName({
|
74
|
+
* node: ...,
|
75
|
+
* });
|
76
|
+
* ```
|
77
|
+
*/
|
78
|
+
export function encodeName(options: NameParams) {
|
79
|
+
// we do a "manual" concat here to avoid the overhead of the "concatHex" function
|
80
|
+
// we can do this because we know the specific formats of the values
|
81
|
+
return (FN_SELECTOR +
|
82
|
+
encodeNameParams(options).slice(2)) as `${typeof FN_SELECTOR}${string}`;
|
83
|
+
}
|
84
|
+
|
85
|
+
/**
|
86
|
+
* Decodes the result of the name function call.
|
87
|
+
* @param result - The hexadecimal result to decode.
|
88
|
+
* @returns The decoded result as per the FN_OUTPUTS definition.
|
89
|
+
* @extension ENS
|
90
|
+
* @example
|
91
|
+
* ```ts
|
92
|
+
* import { decodeNameResult } from "thirdweb/extensions/ens";
|
93
|
+
* const result = decodeNameResult("...");
|
94
|
+
* ```
|
95
|
+
*/
|
96
|
+
export function decodeNameResult(result: Hex) {
|
97
|
+
return decodeAbiParameters(FN_OUTPUTS, result)[0];
|
98
|
+
}
|
99
|
+
|
100
|
+
/**
|
101
|
+
* Calls the "name" function on the contract.
|
102
|
+
* @param options - The options for the name function.
|
103
|
+
* @returns The parsed result of the function call.
|
104
|
+
* @extension ENS
|
105
|
+
* @example
|
106
|
+
* ```ts
|
107
|
+
* import { name } from "thirdweb/extensions/ens";
|
108
|
+
*
|
109
|
+
* const result = await name({
|
110
|
+
* contract,
|
111
|
+
* node: ...,
|
112
|
+
* });
|
113
|
+
*
|
114
|
+
* ```
|
115
|
+
*/
|
116
|
+
export async function name(options: BaseTransactionOptions<NameParams>) {
|
117
|
+
return readContract({
|
118
|
+
contract: options.contract,
|
119
|
+
method: [FN_SELECTOR, FN_INPUTS, FN_OUTPUTS] as const,
|
120
|
+
params: [options.node],
|
121
|
+
});
|
122
|
+
}
|
@@ -1,2 +1,6 @@
|
|
1
1
|
export const UNIVERSAL_RESOLVER_ADDRESS =
|
2
2
|
"0xce01f8eee7E479C928F8919abD53E553a36CeF67";
|
3
|
+
export const BASENAME_RESOLVER_ADDRESS =
|
4
|
+
"0xC6d566A56A1aFf6508b41f6c90ff131615583BCD";
|
5
|
+
export const BASE_SEPOLIA_BASENAME_RESOLVER_ADDRESS =
|
6
|
+
"0x6533C94869D28fAA8dF77cc63f9e2b2D6Cf77eBA";
|
@@ -1,5 +1,7 @@
|
|
1
1
|
import { describe, expect, it } from "vitest";
|
2
2
|
import { TEST_CLIENT } from "../../../test/src/test-clients.js";
|
3
|
+
import { base } from "../../chains/chain-definitions/base.js";
|
4
|
+
import { BASENAME_RESOLVER_ADDRESS } from "./constants.js";
|
3
5
|
import { resolveAddress } from "./resolve-address.js";
|
4
6
|
|
5
7
|
// skip this test suite if there is no secret key available to test with
|
@@ -22,4 +24,15 @@ describe.runIf(process.env.TW_SECRET_KEY)("ENS:resolve-address", () => {
|
|
22
24
|
});
|
23
25
|
expect(address).toBe("0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045");
|
24
26
|
});
|
27
|
+
|
28
|
+
it("should resolve Basename", async () => {
|
29
|
+
const name = "myk.base.eth";
|
30
|
+
const address = await resolveAddress({
|
31
|
+
client: TEST_CLIENT,
|
32
|
+
name,
|
33
|
+
resolverChain: base,
|
34
|
+
resolverAddress: BASENAME_RESOLVER_ADDRESS,
|
35
|
+
});
|
36
|
+
expect(address).toBe("0x653Ff253b0c7C1cc52f484e891b71f9f1F010Bfb");
|
37
|
+
});
|
25
38
|
});
|
@@ -32,6 +32,18 @@ export type ResolveAddressOptions = {
|
|
32
32
|
* name: "vitalik.eth",
|
33
33
|
* });
|
34
34
|
* ```
|
35
|
+
*
|
36
|
+
* Resolve an address to a Basename.
|
37
|
+
* ```ts
|
38
|
+
* import { resolveAddress, BASENAME_RESOLVER_ADDRESS } from "thirdweb/extensions/ens";
|
39
|
+
* import { base } from "thirdweb/chains";
|
40
|
+
* const address = await resolveAddress({
|
41
|
+
* client,
|
42
|
+
* name: "myk.base.eth",
|
43
|
+
* resolverAddress: BASENAME_RESOLVER_ADDRESS,
|
44
|
+
* resolverChain: base,
|
45
|
+
* });
|
46
|
+
* ```
|
35
47
|
* @extension ENS
|
36
48
|
* @returns A promise that resolves to the Ethereum address.
|
37
49
|
*/
|
@@ -58,7 +70,7 @@ export async function resolveAddress(options: ResolveAddressOptions) {
|
|
58
70
|
return resolvedAddress;
|
59
71
|
},
|
60
72
|
{
|
61
|
-
cacheKey: `ens:addr:${name}`,
|
73
|
+
cacheKey: `ens:addr:${resolverChain?.id || 1}:${name}`,
|
62
74
|
// 1min cache
|
63
75
|
cacheTime: 60 * 1000,
|
64
76
|
},
|
@@ -0,0 +1,30 @@
|
|
1
|
+
import { describe, expect, it } from "vitest";
|
2
|
+
import { TEST_CLIENT } from "../../../test/src/test-clients.js";
|
3
|
+
import { base } from "../../chains/chain-definitions/base.js";
|
4
|
+
import { BASENAME_RESOLVER_ADDRESS } from "./constants.js";
|
5
|
+
import { resolveL2Name } from "./resolve-l2-name.js";
|
6
|
+
|
7
|
+
// skip this test suite if there is no secret key available to test with
|
8
|
+
// TODO: remove reliance on secret key during unit tests entirely
|
9
|
+
describe.runIf(process.env.TW_SECRET_KEY)("ENS:resolve-l2-name", () => {
|
10
|
+
it("should resolve Basename", async () => {
|
11
|
+
const ens = await resolveL2Name({
|
12
|
+
client: TEST_CLIENT,
|
13
|
+
// myk.base.eth
|
14
|
+
address: "0x653Ff253b0c7C1cc52f484e891b71f9f1F010Bfb",
|
15
|
+
resolverChain: base,
|
16
|
+
resolverAddress: BASENAME_RESOLVER_ADDRESS,
|
17
|
+
});
|
18
|
+
expect(ens).toBe("myk.base.eth");
|
19
|
+
});
|
20
|
+
|
21
|
+
it("should return null if no Basename exists for the address", async () => {
|
22
|
+
const ens = await resolveL2Name({
|
23
|
+
client: TEST_CLIENT,
|
24
|
+
address: "0xc6248746A9CA5935ae722E2061347A5897548c03",
|
25
|
+
resolverChain: base,
|
26
|
+
resolverAddress: BASENAME_RESOLVER_ADDRESS,
|
27
|
+
});
|
28
|
+
expect(ens).toBeNull();
|
29
|
+
});
|
30
|
+
});
|