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.
Files changed (78) hide show
  1. package/dist/cjs/exports/extensions/ens.js +6 -1
  2. package/dist/cjs/exports/extensions/ens.js.map +1 -1
  3. package/dist/cjs/exports/react.js +3 -1
  4. package/dist/cjs/exports/react.js.map +1 -1
  5. package/dist/cjs/extensions/ens/__generated__/L2Resolver/read/name.js +115 -0
  6. package/dist/cjs/extensions/ens/__generated__/L2Resolver/read/name.js.map +1 -0
  7. package/dist/cjs/extensions/ens/constants.js +3 -1
  8. package/dist/cjs/extensions/ens/constants.js.map +1 -1
  9. package/dist/cjs/extensions/ens/resolve-address.js +13 -1
  10. package/dist/cjs/extensions/ens/resolve-address.js.map +1 -1
  11. package/dist/cjs/extensions/ens/resolve-l2-name.js +80 -0
  12. package/dist/cjs/extensions/ens/resolve-l2-name.js.map +1 -0
  13. package/dist/cjs/extensions/ens/resolve-name.js +1 -1
  14. package/dist/cjs/extensions/ens/resolve-name.js.map +1 -1
  15. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.js +11 -2
  16. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.js.map +1 -1
  17. package/dist/cjs/react/web/ui/prebuilt/NFT/NFT.js +217 -0
  18. package/dist/cjs/react/web/ui/prebuilt/NFT/NFT.js.map +1 -0
  19. package/dist/cjs/react/web/ui/prebuilt/thirdweb/CreateDirectListingButton/index.js +64 -19
  20. package/dist/cjs/react/web/ui/prebuilt/thirdweb/CreateDirectListingButton/index.js.map +1 -1
  21. package/dist/cjs/utils/nft/parseNft.js.map +1 -1
  22. package/dist/cjs/version.js +1 -1
  23. package/dist/esm/exports/extensions/ens.js +2 -0
  24. package/dist/esm/exports/extensions/ens.js.map +1 -1
  25. package/dist/esm/exports/react.js +1 -0
  26. package/dist/esm/exports/react.js.map +1 -1
  27. package/dist/esm/extensions/ens/__generated__/L2Resolver/read/name.js +107 -0
  28. package/dist/esm/extensions/ens/__generated__/L2Resolver/read/name.js.map +1 -0
  29. package/dist/esm/extensions/ens/constants.js +2 -0
  30. package/dist/esm/extensions/ens/constants.js.map +1 -1
  31. package/dist/esm/extensions/ens/resolve-address.js +13 -1
  32. package/dist/esm/extensions/ens/resolve-address.js.map +1 -1
  33. package/dist/esm/extensions/ens/resolve-l2-name.js +75 -0
  34. package/dist/esm/extensions/ens/resolve-l2-name.js.map +1 -0
  35. package/dist/esm/extensions/ens/resolve-name.js +1 -1
  36. package/dist/esm/extensions/ens/resolve-name.js.map +1 -1
  37. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.js +11 -2
  38. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.js.map +1 -1
  39. package/dist/esm/react/web/ui/prebuilt/NFT/NFT.js +212 -0
  40. package/dist/esm/react/web/ui/prebuilt/NFT/NFT.js.map +1 -0
  41. package/dist/esm/react/web/ui/prebuilt/thirdweb/CreateDirectListingButton/index.js +62 -17
  42. package/dist/esm/react/web/ui/prebuilt/thirdweb/CreateDirectListingButton/index.js.map +1 -1
  43. package/dist/esm/utils/nft/parseNft.js.map +1 -1
  44. package/dist/esm/version.js +1 -1
  45. package/dist/types/exports/extensions/ens.d.ts +2 -0
  46. package/dist/types/exports/extensions/ens.d.ts.map +1 -1
  47. package/dist/types/exports/react.d.ts +1 -0
  48. package/dist/types/exports/react.d.ts.map +1 -1
  49. package/dist/types/extensions/ens/__generated__/L2Resolver/read/name.d.ts +84 -0
  50. package/dist/types/extensions/ens/__generated__/L2Resolver/read/name.d.ts.map +1 -0
  51. package/dist/types/extensions/ens/constants.d.ts +2 -0
  52. package/dist/types/extensions/ens/constants.d.ts.map +1 -1
  53. package/dist/types/extensions/ens/resolve-address.d.ts +12 -0
  54. package/dist/types/extensions/ens/resolve-address.d.ts.map +1 -1
  55. package/dist/types/extensions/ens/resolve-l2-name.d.ts +48 -0
  56. package/dist/types/extensions/ens/resolve-l2-name.d.ts.map +1 -0
  57. package/dist/types/react/web/ui/prebuilt/NFT/NFT.d.ts +75 -0
  58. package/dist/types/react/web/ui/prebuilt/NFT/NFT.d.ts.map +1 -0
  59. package/dist/types/react/web/ui/prebuilt/thirdweb/CreateDirectListingButton/index.d.ts.map +1 -1
  60. package/dist/types/utils/nft/parseNft.d.ts +1 -0
  61. package/dist/types/utils/nft/parseNft.d.ts.map +1 -1
  62. package/dist/types/version.d.ts +1 -1
  63. package/package.json +1 -1
  64. package/src/exports/extensions/ens.ts +10 -0
  65. package/src/exports/react.ts +5 -0
  66. package/src/extensions/ens/__generated__/L2Resolver/read/name.ts +122 -0
  67. package/src/extensions/ens/constants.ts +4 -0
  68. package/src/extensions/ens/resolve-address.test.ts +13 -0
  69. package/src/extensions/ens/resolve-address.ts +13 -1
  70. package/src/extensions/ens/resolve-l2-name.test.ts +30 -0
  71. package/src/extensions/ens/resolve-l2-name.ts +107 -0
  72. package/src/extensions/ens/resolve-name.ts +1 -1
  73. package/src/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.tsx +12 -2
  74. package/src/react/web/ui/prebuilt/NFT/NFT.test.tsx +111 -0
  75. package/src/react/web/ui/prebuilt/NFT/NFT.tsx +272 -0
  76. package/src/react/web/ui/prebuilt/thirdweb/CreateDirectListingButton/index.tsx +75 -18
  77. package/src/utils/nft/parseNft.ts +1 -0
  78. package/src/version.ts +1 -1
@@ -0,0 +1,217 @@
1
+ "use strict";
2
+ "use client";
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.NFTProviderContext = void 0;
5
+ exports.NFT = NFT;
6
+ exports.getNFTInfo = getNFTInfo;
7
+ const jsx_runtime_1 = require("react/jsx-runtime");
8
+ const react_query_1 = require("@tanstack/react-query");
9
+ const react_1 = require("react");
10
+ const getNFT_js_1 = require("../../../../../extensions/erc721/read/getNFT.js");
11
+ const getNFT_js_2 = require("../../../../../extensions/erc1155/read/getNFT.js");
12
+ const MediaRenderer_js_1 = require("../../MediaRenderer/MediaRenderer.js");
13
+ /**
14
+ * @internal
15
+ */
16
+ exports.NFTProviderContext = (0, react_1.createContext)(undefined);
17
+ /**
18
+ * A React context provider component that supplies NFT-related data to its child components.
19
+ *
20
+ * This component serves as a wrapper around the `NFTProviderContext.Provider` and passes
21
+ * the provided NFT data down to all of its child components through the context API.
22
+ *
23
+ *
24
+ * @component
25
+ * @param {React.PropsWithChildren<NFTProviderProps>} props - The props for the NFT provider
26
+ *
27
+ * @example
28
+ * ```tsx
29
+ * import { getContract } from "thirdweb";
30
+ * import { NFT } from "thirdweb/react";
31
+ *
32
+ * const contract = getContract({
33
+ * address: "0x...",
34
+ * chain: ethereum,
35
+ * client: yourThirdwebClient,
36
+ * });
37
+ *
38
+ * <NFT contract={contract} tokenId={0n}>
39
+ * <Suspense fallback={"Loading media..."}>
40
+ * <NFT.Media />
41
+ * <NFT.Description />
42
+ * </Suspense>
43
+ * </NFT>
44
+ * ```
45
+ */
46
+ function NFT(props) {
47
+ return ((0, jsx_runtime_1.jsx)(exports.NFTProviderContext.Provider, { value: props, children: props.children }));
48
+ }
49
+ /**
50
+ * @internal
51
+ */
52
+ function useNFTContext() {
53
+ const ctx = (0, react_1.useContext)(exports.NFTProviderContext);
54
+ if (!ctx) {
55
+ throw new Error("NFTProviderContext not found. Make sure you are using NFT.Media, NFT.Description, etc. inside a <NFT /> component");
56
+ }
57
+ return ctx;
58
+ }
59
+ /**
60
+ * This component fetches and displays an NFT's media. It uses thirdweb [`MediaRenderer`](https://portal.thirdweb.com/react/v5/components/MediaRenderer) under the hood
61
+ * so you can style it just like how you would style a MediaRenderer.
62
+ * @returns A MediaRenderer component
63
+ *
64
+ * Since this component has an internal loading state (for when the NFT media is being fetched),
65
+ * you must wrap it with React.Suspense to make it work.
66
+ *
67
+ * @component
68
+ * @example
69
+ * ### Basic usage
70
+ * ```tsx
71
+ * import { getContract } from "thirdweb";
72
+ * import { NFT } from "thirdweb/react";
73
+ *
74
+ * const nftContract = getContract({
75
+ * address: "0x...",
76
+ * chain: ethereum,
77
+ * client: yourThirdwebClient,
78
+ * });
79
+ *
80
+ * <NFT contract={nftContract} tokenId={0n}>
81
+ * This will show the media for tokenId #0 from the `nftContract` collection
82
+ * <Suspense fallback={"Loading media..."}>
83
+ * <NFT.Media />
84
+ * </Suspense>
85
+ * </NFT>
86
+ * ```
87
+ *
88
+ * ### Basic stylings
89
+ * You can style NFT.Media with the `style` and `className` props.
90
+ * ```tsx
91
+ * <NFT.Media style={{ borderRadius: "8px" }} className="mx-auto" />
92
+ * ```
93
+ */
94
+ NFT.Media = (props) => {
95
+ const { contract, tokenId } = useNFTContext();
96
+ const nftQuery = (0, react_query_1.useSuspenseQuery)({
97
+ queryKey: [
98
+ "__nft_info_internal__",
99
+ contract.chain.id,
100
+ contract.address,
101
+ tokenId.toString(),
102
+ ],
103
+ queryFn: () => getNFTInfo({ contract, tokenId }),
104
+ });
105
+ const animation_url = nftQuery.data?.metadata.animation_url;
106
+ const image = nftQuery.data?.metadata.image || nftQuery.data?.metadata.image_url;
107
+ return ((0, jsx_runtime_1.jsx)(MediaRenderer_js_1.MediaRenderer, { client: contract.client, src: animation_url || image, poster: image, ...props }));
108
+ };
109
+ /**
110
+ * This component fetches and displays an NFT's name. It takes in a `className` and `style` props
111
+ * so you can style it just like how you would style a <span> element.
112
+ * @returns A <span> element containing the name of the NFT
113
+ *
114
+ * Since this component has an internal loading state (for when the NFT media is being fetched),
115
+ * you must wrap it with React.Suspense to make it work.
116
+ *
117
+ * @component
118
+ * @example
119
+ * ### Basic usage
120
+ * ```tsx
121
+ * import { getContract } from "thirdweb";
122
+ * import { NFT } from "thirdweb/react";
123
+ *
124
+ * const nftContract = getContract({
125
+ * address: "0x...",
126
+ * chain: ethereum,
127
+ * client: yourThirdwebClient,
128
+ * });
129
+ *
130
+ * <NFT contract={nftContract} tokenId={0n}>
131
+ * This will show the name for tokenId #0 from the `nftContract` collection
132
+ * <Suspense fallback={"Loading nft name..."}>
133
+ * <NFT.Name className="mx-auto" style={{ color: "red" }} />
134
+ * </Suspense>
135
+ * </NFT>
136
+ * ```
137
+ */
138
+ NFT.Name = (props) => {
139
+ const { contract, tokenId } = useNFTContext();
140
+ const nftQuery = (0, react_query_1.useSuspenseQuery)({
141
+ queryKey: [
142
+ "__nft_info_internal__",
143
+ contract.chain.id,
144
+ contract.address,
145
+ tokenId.toString(),
146
+ ],
147
+ queryFn: () => getNFTInfo({ contract, tokenId }),
148
+ });
149
+ const name = nftQuery.data?.metadata.name || "";
150
+ return (0, jsx_runtime_1.jsx)("span", { ...props, children: name });
151
+ };
152
+ /**
153
+ * This component fetches and displays an NFT's description. It takes in a `className` and `style` props
154
+ * so you can style it just like how you would style a <span> element.
155
+ * @returns A <span> element containing the description of the NFT
156
+ *
157
+ * Since this component has an internal loading state (for when the NFT media is being fetched),
158
+ * you must wrap it with React.Suspense to make it work.
159
+ *
160
+ * @component
161
+ * @example
162
+ * ### Basic usage
163
+ * ```tsx
164
+ * import { getContract } from "thirdweb";
165
+ * import { NFT } from "thirdweb/react";
166
+ *
167
+ * const nftContract = getContract({
168
+ * address: "0x...",
169
+ * chain: ethereum,
170
+ * client: yourThirdwebClient,
171
+ * });
172
+ *
173
+ * <NFT contract={nftContract} tokenId={0n}>
174
+ * This will show the description for tokenId #0 from the `nftContract` collection
175
+ * <Suspense fallback={"Loading description..."}>
176
+ * <NFT.Description className="mx-auto" style={{ color: "red" }} />
177
+ * </Suspense>
178
+ * </NFT>
179
+ * ```
180
+ */
181
+ NFT.Description = (props) => {
182
+ const { contract, tokenId } = useNFTContext();
183
+ const nftQuery = (0, react_query_1.useSuspenseQuery)({
184
+ queryKey: [
185
+ "__nft_info_internal__",
186
+ contract.chain.id,
187
+ contract.address,
188
+ tokenId.toString(),
189
+ ],
190
+ queryFn: () => getNFTInfo({ contract, tokenId }),
191
+ });
192
+ const description = nftQuery.data?.metadata.description || "";
193
+ return (0, jsx_runtime_1.jsx)("span", { ...props, children: description });
194
+ };
195
+ /**
196
+ * @internal
197
+ */
198
+ async function getNFTInfo(options) {
199
+ const nft = await Promise.allSettled([
200
+ (0, getNFT_js_1.getNFT)(options),
201
+ (0, getNFT_js_2.getNFT)(options),
202
+ ]).then(([possibleNFT721, possibleNFT1155]) => {
203
+ // getNFT extension always return an NFT object
204
+ // so we need to check if the tokenURI exists
205
+ if (possibleNFT721.status === "fulfilled" &&
206
+ possibleNFT721.value.tokenURI) {
207
+ return possibleNFT721.value;
208
+ }
209
+ if (possibleNFT1155.status === "fulfilled" &&
210
+ possibleNFT1155.value.tokenURI) {
211
+ return possibleNFT1155.value;
212
+ }
213
+ throw new Error("Failed to load NFT metadata");
214
+ });
215
+ return nft;
216
+ }
217
+ //# sourceMappingURL=NFT.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NFT.js","sourceRoot":"","sources":["../../../../../../../src/react/web/ui/prebuilt/NFT/NFT.tsx"],"names":[],"mappings":";AAAA,YAAY,CAAC;;;AA8Db,kBAMC;AAqLD,gCAsBC;;AA7QD,uDAAyD;AACzD,iCAAkD;AAElD,+EAAsF;AACtF,gFAAwF;AAExF,2EAAqE;AAkBrE;;GAEG;AACU,QAAA,kBAAkB,GAAmB,IAAA,qBAAa,EAE7D,SAAS,CAAC,CAAC;AAEb;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,SAAgB,GAAG,CAAC,KAAgD;IAClE,OAAO,CACL,uBAAC,0BAAkB,CAAC,QAAQ,IAAC,KAAK,EAAE,KAAK,YACtC,KAAK,CAAC,QAAQ,GACa,CAC/B,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAS,aAAa;IACpB,MAAM,GAAG,GAAG,IAAA,kBAAU,EAAC,0BAAkB,CAAC,CAAC;IAC3C,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,MAAM,IAAI,KAAK,CACb,mHAAmH,CACpH,CAAC;IACJ,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAcD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,GAAG,CAAC,KAAK,GAAG,CAAC,KAAoB,EAAE,EAAE;IACnC,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,aAAa,EAAE,CAAC;IAC9C,MAAM,QAAQ,GAAG,IAAA,8BAAgB,EAAC;QAChC,QAAQ,EAAE;YACR,uBAAuB;YACvB,QAAQ,CAAC,KAAK,CAAC,EAAE;YACjB,QAAQ,CAAC,OAAO;YAChB,OAAO,CAAC,QAAQ,EAAE;SACnB;QACD,OAAO,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC;KACjD,CAAC,CAAC;IACH,MAAM,aAAa,GAAG,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,aAAa,CAAC;IAC5D,MAAM,KAAK,GACT,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,KAAK,IAAI,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,SAAS,CAAC;IAErE,OAAO,CACL,uBAAC,gCAAa,IACZ,MAAM,EAAE,QAAQ,CAAC,MAAM,EACvB,GAAG,EAAE,aAAa,IAAI,KAAK,EAC3B,MAAM,EAAE,KAAK,KACT,KAAK,GACT,CACH,CAAC;AACJ,CAAC,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,GAAG,CAAC,IAAI,GAAG,CAAC,KAA0D,EAAE,EAAE;IACxE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,aAAa,EAAE,CAAC;IAC9C,MAAM,QAAQ,GAAG,IAAA,8BAAgB,EAAC;QAChC,QAAQ,EAAE;YACR,uBAAuB;YACvB,QAAQ,CAAC,KAAK,CAAC,EAAE;YACjB,QAAQ,CAAC,OAAO;YAChB,OAAO,CAAC,QAAQ,EAAE;SACnB;QACD,OAAO,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC;KACjD,CAAC,CAAC;IACH,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,IAAI,EAAE,CAAC;IAChD,OAAO,oCAAU,KAAK,YAAG,IAAI,GAAQ,CAAC;AACxC,CAAC,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,GAAG,CAAC,WAAW,GAAG,CAAC,KAGlB,EAAE,EAAE;IACH,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,aAAa,EAAE,CAAC;IAC9C,MAAM,QAAQ,GAAG,IAAA,8BAAgB,EAAC;QAChC,QAAQ,EAAE;YACR,uBAAuB;YACvB,QAAQ,CAAC,KAAK,CAAC,EAAE;YACjB,QAAQ,CAAC,OAAO;YAChB,OAAO,CAAC,QAAQ,EAAE;SACnB;QACD,OAAO,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC;KACjD,CAAC,CAAC;IACH,MAAM,WAAW,GAAG,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,WAAW,IAAI,EAAE,CAAC;IAC9D,OAAO,oCAAU,KAAK,YAAG,WAAW,GAAQ,CAAC;AAC/C,CAAC,CAAC;AAEF;;GAEG;AACI,KAAK,UAAU,UAAU,CAAC,OAAyB;IACxD,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC;QACnC,IAAA,kBAAS,EAAC,OAAO,CAAC;QAClB,IAAA,kBAAU,EAAC,OAAO,CAAC;KACpB,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,cAAc,EAAE,eAAe,CAAC,EAAE,EAAE;QAC5C,+CAA+C;QAC/C,6CAA6C;QAC7C,IACE,cAAc,CAAC,MAAM,KAAK,WAAW;YACrC,cAAc,CAAC,KAAK,CAAC,QAAQ,EAC7B,CAAC;YACD,OAAO,cAAc,CAAC,KAAK,CAAC;QAC9B,CAAC;QACD,IACE,eAAe,CAAC,MAAM,KAAK,WAAW;YACtC,eAAe,CAAC,KAAK,CAAC,QAAQ,EAC9B,CAAC;YACD,OAAO,eAAe,CAAC,KAAK,CAAC;QAC/B,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;IACjD,CAAC,CAAC,CAAC;IACH,OAAO,GAAG,CAAC;AACb,CAAC"}
@@ -5,7 +5,8 @@ exports.CreateDirectListingButton = CreateDirectListingButton;
5
5
  const jsx_runtime_1 = require("react/jsx-runtime");
6
6
  const react_1 = require("react");
7
7
  const contract_js_1 = require("../../../../../../contract/contract.js");
8
- const getApprovalForTransaction_js_1 = require("../../../../../../extensions/erc20/write/getApprovalForTransaction.js");
8
+ const isERC721_js_1 = require("../../../../../../extensions/erc721/read/isERC721.js");
9
+ const isERC1155_js_1 = require("../../../../../../extensions/erc1155/read/isERC1155.js");
9
10
  const createListing_js_1 = require("../../../../../../extensions/marketplace/direct-listings/write/createListing.js");
10
11
  const useReadContract_js_1 = require("../../../../../core/hooks/contract/useReadContract.js");
11
12
  const useSendAndConfirmTransaction_js_1 = require("../../../../../core/hooks/transaction/useSendAndConfirmTransaction.js");
@@ -49,12 +50,13 @@ function CreateDirectListingButton(props) {
49
50
  });
50
51
  const account = (0, useActiveAccount_js_1.useActiveAccount)();
51
52
  const defaultPayModalMetadata = payModal ? payModal.metadata : undefined;
53
+ const nftContract = (0, contract_js_1.getContract)({
54
+ address: assetContractAddress,
55
+ chain,
56
+ client,
57
+ });
52
58
  const { data: payMetadata } = (0, useReadContract_js_1.useReadContract)(getPayMetadata, {
53
- contract: (0, contract_js_1.getContract)({
54
- address: assetContractAddress,
55
- chain,
56
- client,
57
- }),
59
+ contract: nftContract,
58
60
  tokenId,
59
61
  queryOptions: {
60
62
  enabled: !defaultPayModalMetadata,
@@ -65,19 +67,64 @@ function CreateDirectListingButton(props) {
65
67
  if (!account) {
66
68
  throw new Error("No account detected");
67
69
  }
70
+ const [is721, is1155] = await Promise.all([
71
+ (0, isERC721_js_1.isERC721)({ contract: nftContract }),
72
+ (0, isERC1155_js_1.isERC1155)({ contract: nftContract }),
73
+ ]);
74
+ if (!is1155 && !is721) {
75
+ throw new Error("Asset must either be ERC721 or ERC1155");
76
+ }
77
+ // Check for token approval
78
+ if (is1155) {
79
+ const [{ isApprovedForAll }, { setApprovalForAll }] = await Promise.all([
80
+ Promise.resolve().then(() => require("../../../../../../extensions/erc1155/__generated__/IERC1155/read/isApprovedForAll.js")),
81
+ Promise.resolve().then(() => require("../../../../../../extensions/erc1155/__generated__/IERC1155/write/setApprovalForAll.js")),
82
+ ]);
83
+ const isApproved = await isApprovedForAll({
84
+ contract: nftContract,
85
+ operator: marketplaceContract.address,
86
+ owner: account.address,
87
+ });
88
+ if (!isApproved) {
89
+ const transaction = setApprovalForAll({
90
+ contract: nftContract,
91
+ operator: marketplaceContract.address,
92
+ approved: true,
93
+ });
94
+ await mutateAsync(transaction);
95
+ }
96
+ }
97
+ else {
98
+ const [{ isApprovedForAll }, { setApprovalForAll }, { getApproved }] = await Promise.all([
99
+ Promise.resolve().then(() => require("../../../../../../extensions/erc721/__generated__/IERC721A/read/isApprovedForAll.js")),
100
+ Promise.resolve().then(() => require("../../../../../../extensions/erc721/__generated__/IERC721A/write/setApprovalForAll.js")),
101
+ Promise.resolve().then(() => require("../../../../../../extensions/erc721/__generated__/IERC721A/read/getApproved.js")),
102
+ ]);
103
+ const [isApproved, tokenApproved] = await Promise.all([
104
+ isApprovedForAll({
105
+ contract: nftContract,
106
+ operator: marketplaceContract.address,
107
+ owner: account.address,
108
+ }),
109
+ getApproved({ contract: nftContract, tokenId: props.tokenId }),
110
+ ]);
111
+ if (!isApproved &&
112
+ tokenApproved.toLowerCase() !==
113
+ marketplaceContract.address.toLowerCase()) {
114
+ const transaction = setApprovalForAll({
115
+ contract: nftContract,
116
+ operator: marketplaceContract.address,
117
+ approved: true,
118
+ });
119
+ await mutateAsync(transaction);
120
+ }
121
+ }
68
122
  const listingTx = (0, createListing_js_1.createListing)({
69
123
  contract: marketplaceContract,
70
124
  ...props,
71
125
  });
72
- const approveTx = await (0, getApprovalForTransaction_js_1.getApprovalForTransaction)({
73
- transaction: listingTx,
74
- account,
75
- });
76
- if (approveTx) {
77
- await mutateAsync(approveTx);
78
- }
79
126
  return listingTx;
80
- }, [marketplaceContract, props, account, mutateAsync]);
127
+ }, [marketplaceContract, props, account, mutateAsync, nftContract]);
81
128
  return ((0, jsx_runtime_1.jsx)(index_js_1.TransactionButton, { transaction: () => prepareTransaction(), payModal: {
82
129
  metadata: defaultPayModalMetadata || payMetadata,
83
130
  ...payModal,
@@ -87,16 +134,14 @@ function CreateDirectListingButton(props) {
87
134
  * @internal
88
135
  */
89
136
  async function getPayMetadata(options) {
90
- const [{ isERC721 }, { isERC1155 }, { getContractMetadata }, { getNFT: getERC721 }, { getNFT: getERC1155 },] = await Promise.all([
91
- Promise.resolve().then(() => require("../../../../../../extensions/erc721/read/isERC721.js")),
92
- Promise.resolve().then(() => require("../../../../../../extensions/erc1155/read/isERC1155.js")),
137
+ const [{ getContractMetadata }, { getNFT: getERC721 }, { getNFT: getERC1155 },] = await Promise.all([
93
138
  Promise.resolve().then(() => require("../../../../../../extensions/common/read/getContractMetadata.js")),
94
139
  Promise.resolve().then(() => require("../../../../../../extensions/erc721/read/getNFT.js")),
95
140
  Promise.resolve().then(() => require("../../../../../../extensions/erc1155/read/getNFT.js")),
96
141
  ]);
97
142
  const [is721, is1155, contractMetadata] = await Promise.all([
98
- isERC721(options),
99
- isERC1155(options),
143
+ (0, isERC721_js_1.isERC721)(options),
144
+ (0, isERC1155_js_1.isERC1155)(options),
100
145
  getContractMetadata(options),
101
146
  ]);
102
147
  if (is721) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../../src/react/web/ui/prebuilt/thirdweb/CreateDirectListingButton/index.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../../src/react/web/ui/prebuilt/thirdweb/CreateDirectListingButton/index.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"parseNft.js","sourceRoot":"","sources":["../../../../src/utils/nft/parseNft.ts"],"names":[],"mappings":";;AAyEA,4BAsBC;AA7BD;;;;;;GAMG;AACH,SAAgB,QAAQ,CAAC,IAAiB,EAAE,OAAwB;IAClE,QAAQ,OAAO,CAAC,IAAI,EAAE,CAAC;QACrB,KAAK,QAAQ;YACX,OAAO;gBACL,QAAQ,EAAE,IAAI;gBACd,KAAK,EAAE,OAAO,EAAE,KAAK,IAAI,IAAI;gBAC7B,EAAE,EAAE,OAAO,CAAC,OAAO;gBACnB,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,IAAI,EAAE,OAAO,CAAC,IAAI;aACnB,CAAC;QACJ,KAAK,SAAS;YACZ,OAAO;gBACL,QAAQ,EAAE,IAAI;gBACd,KAAK,EAAE,OAAO,EAAE,KAAK,IAAI,IAAI;gBAC7B,EAAE,EAAE,OAAO,CAAC,OAAO;gBACnB,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,MAAM,EAAE,OAAO,CAAC,MAAM;aACvB,CAAC;QACJ;YACE,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;IACxC,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"parseNft.js","sourceRoot":"","sources":["../../../../src/utils/nft/parseNft.ts"],"names":[],"mappings":";;AA0EA,4BAsBC;AA7BD;;;;;;GAMG;AACH,SAAgB,QAAQ,CAAC,IAAiB,EAAE,OAAwB;IAClE,QAAQ,OAAO,CAAC,IAAI,EAAE,CAAC;QACrB,KAAK,QAAQ;YACX,OAAO;gBACL,QAAQ,EAAE,IAAI;gBACd,KAAK,EAAE,OAAO,EAAE,KAAK,IAAI,IAAI;gBAC7B,EAAE,EAAE,OAAO,CAAC,OAAO;gBACnB,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,IAAI,EAAE,OAAO,CAAC,IAAI;aACnB,CAAC;QACJ,KAAK,SAAS;YACZ,OAAO;gBACL,QAAQ,EAAE,IAAI;gBACd,KAAK,EAAE,OAAO,EAAE,KAAK,IAAI,IAAI;gBAC7B,EAAE,EAAE,OAAO,CAAC,OAAO;gBACnB,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,MAAM,EAAE,OAAO,CAAC,MAAM;aACvB,CAAC;QACJ;YACE,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;IACxC,CAAC;AACH,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.48.4-nightly-3d60da3717effdc7311ef5b6054f52127b5780f8-20240830000409";
4
+ exports.version = "5.50.0-nightly-6432e8dc6bdd0ed985fe0d76e47b36601bfa8be3-20240831000359";
5
5
  //# sourceMappingURL=version.js.map
@@ -2,4 +2,6 @@ export { resolveAddress, } from "../../extensions/ens/resolve-address.js";
2
2
  export { resolveAvatar, } from "../../extensions/ens/resolve-avatar.js";
3
3
  export { resolveText, } from "../../extensions/ens/resolve-text.js";
4
4
  export { resolveName, } from "../../extensions/ens/resolve-name.js";
5
+ export { 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.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ens.js","sourceRoot":"","sources":["../../../../src/exports/extensions/ens.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,cAAc,GACf,MAAM,yCAAyC,CAAC;AAEjD,OAAO,EAEL,aAAa,GACd,MAAM,wCAAwC,CAAC;AAEhD,OAAO,EAEL,WAAW,GACZ,MAAM,sCAAsC,CAAC;AAE9C,OAAO,EAEL,WAAW,GACZ,MAAM,sCAAsC,CAAC"}
1
+ {"version":3,"file":"ens.js","sourceRoot":"","sources":["../../../../src/exports/extensions/ens.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,cAAc,GACf,MAAM,yCAAyC,CAAC;AAEjD,OAAO,EAEL,aAAa,GACd,MAAM,wCAAwC,CAAC;AAEhD,OAAO,EAEL,WAAW,GACZ,MAAM,sCAAsC,CAAC;AAE9C,OAAO,EAEL,WAAW,GACZ,MAAM,sCAAsC,CAAC;AAE9C,OAAO,EAEL,aAAa,GACd,MAAM,yCAAyC,CAAC;AAEjD,OAAO,EACL,yBAAyB,EACzB,sCAAsC,GACvC,MAAM,mCAAmC,CAAC"}
@@ -70,6 +70,7 @@ export { useEnsName, useEnsAvatar } from "../react/core/utils/wallet.js";
70
70
  export { ClaimButton } from "../react/web/ui/prebuilt/thirdweb/ClaimButton/index.js";
71
71
  export { BuyDirectListingButton, } from "../react/web/ui/prebuilt/thirdweb/BuyDirectListingButton/index.js";
72
72
  export { CreateDirectListingButton, } from "../react/web/ui/prebuilt/thirdweb/CreateDirectListingButton/index.js";
73
+ export { NFT, } from "../react/web/ui/prebuilt/NFT/NFT.js";
73
74
  export { useConnectionManager } from "../react/core/providers/connection-manager.js";
74
75
  /**
75
76
  * Blobbie
@@ -1 +1 @@
1
- {"version":3,"file":"react.js","sourceRoot":"","sources":["../../../src/exports/react.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"react.js","sourceRoot":"","sources":["../../../src/exports/react.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,107 @@
1
+ import { readContract } from "../../../../../transaction/read-contract.js";
2
+ import { encodeAbiParameters } from "../../../../../utils/abi/encodeAbiParameters.js";
3
+ import { decodeAbiParameters } from "viem";
4
+ import { detectMethod } from "../../../../../utils/bytecode/detectExtension.js";
5
+ export const FN_SELECTOR = "0x691f3431";
6
+ const FN_INPUTS = [
7
+ {
8
+ type: "bytes32",
9
+ name: "node",
10
+ },
11
+ ];
12
+ const FN_OUTPUTS = [
13
+ {
14
+ type: "string",
15
+ },
16
+ ];
17
+ /**
18
+ * Checks if the `name` method is supported by the given contract.
19
+ * @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.
20
+ * @returns A boolean indicating if the `name` method is supported.
21
+ * @extension ENS
22
+ * @example
23
+ * ```ts
24
+ * import { isNameSupported } from "thirdweb/extensions/ens";
25
+ *
26
+ * const supported = isNameSupported(["0x..."]);
27
+ * ```
28
+ */
29
+ export function isNameSupported(availableSelectors) {
30
+ return detectMethod({
31
+ availableSelectors,
32
+ method: [FN_SELECTOR, FN_INPUTS, FN_OUTPUTS],
33
+ });
34
+ }
35
+ /**
36
+ * Encodes the parameters for the "name" function.
37
+ * @param options - The options for the name function.
38
+ * @returns The encoded ABI parameters.
39
+ * @extension ENS
40
+ * @example
41
+ * ```ts
42
+ * import { encodeNameParams } "thirdweb/extensions/ens";
43
+ * const result = encodeNameParams({
44
+ * node: ...,
45
+ * });
46
+ * ```
47
+ */
48
+ export function encodeNameParams(options) {
49
+ return encodeAbiParameters(FN_INPUTS, [options.node]);
50
+ }
51
+ /**
52
+ * Encodes the "name" function into a Hex string with its parameters.
53
+ * @param options - The options for the name function.
54
+ * @returns The encoded hexadecimal string.
55
+ * @extension ENS
56
+ * @example
57
+ * ```ts
58
+ * import { encodeName } "thirdweb/extensions/ens";
59
+ * const result = encodeName({
60
+ * node: ...,
61
+ * });
62
+ * ```
63
+ */
64
+ export function encodeName(options) {
65
+ // we do a "manual" concat here to avoid the overhead of the "concatHex" function
66
+ // we can do this because we know the specific formats of the values
67
+ return (FN_SELECTOR +
68
+ encodeNameParams(options).slice(2));
69
+ }
70
+ /**
71
+ * Decodes the result of the name function call.
72
+ * @param result - The hexadecimal result to decode.
73
+ * @returns The decoded result as per the FN_OUTPUTS definition.
74
+ * @extension ENS
75
+ * @example
76
+ * ```ts
77
+ * import { decodeNameResult } from "thirdweb/extensions/ens";
78
+ * const result = decodeNameResult("...");
79
+ * ```
80
+ */
81
+ export function decodeNameResult(result) {
82
+ return decodeAbiParameters(FN_OUTPUTS, result)[0];
83
+ }
84
+ /**
85
+ * Calls the "name" function on the contract.
86
+ * @param options - The options for the name function.
87
+ * @returns The parsed result of the function call.
88
+ * @extension ENS
89
+ * @example
90
+ * ```ts
91
+ * import { name } from "thirdweb/extensions/ens";
92
+ *
93
+ * const result = await name({
94
+ * contract,
95
+ * node: ...,
96
+ * });
97
+ *
98
+ * ```
99
+ */
100
+ export async function name(options) {
101
+ return readContract({
102
+ contract: options.contract,
103
+ method: [FN_SELECTOR, FN_INPUTS, FN_OUTPUTS],
104
+ params: [options.node],
105
+ });
106
+ }
107
+ //# sourceMappingURL=name.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"name.js","sourceRoot":"","sources":["../../../../../../../src/extensions/ens/__generated__/L2Resolver/read/name.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,6CAA6C,CAAC;AAE3E,OAAO,EAAE,mBAAmB,EAAE,MAAM,iDAAiD,CAAC;AACtF,OAAO,EAAE,mBAAmB,EAAE,MAAM,MAAM,CAAC;AAE3C,OAAO,EAAE,YAAY,EAAE,MAAM,kDAAkD,CAAC;AAShF,MAAM,CAAC,MAAM,WAAW,GAAG,YAAqB,CAAC;AACjD,MAAM,SAAS,GAAG;IAChB;QACE,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,MAAM;KACb;CACO,CAAC;AACX,MAAM,UAAU,GAAG;IACjB;QACE,IAAI,EAAE,QAAQ;KACf;CACO,CAAC;AAEX;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,eAAe,CAAC,kBAA4B;IAC1D,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,gBAAgB,CAAC,OAAmB;IAClD,OAAO,mBAAmB,CAAC,SAAS,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;AACxD,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,UAAU,CAAC,OAAmB;IAC5C,iFAAiF;IACjF,oEAAoE;IACpE,OAAO,CAAC,WAAW;QACjB,gBAAgB,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAqC,CAAC;AAC5E,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,gBAAgB,CAAC,MAAW;IAC1C,OAAO,mBAAmB,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;AACpD,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,OAA2C;IACpE,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,IAAI,CAAC;KACvB,CAAC,CAAC;AACL,CAAC"}
@@ -1,2 +1,4 @@
1
1
  export const UNIVERSAL_RESOLVER_ADDRESS = "0xce01f8eee7E479C928F8919abD53E553a36CeF67";
2
+ export const BASENAME_RESOLVER_ADDRESS = "0xC6d566A56A1aFf6508b41f6c90ff131615583BCD";
3
+ export const BASE_SEPOLIA_BASENAME_RESOLVER_ADDRESS = "0x6533C94869D28fAA8dF77cc63f9e2b2D6Cf77eBA";
2
4
  //# sourceMappingURL=constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../src/extensions/ens/constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,0BAA0B,GACrC,4CAA4C,CAAC"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../src/extensions/ens/constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,0BAA0B,GACrC,4CAA4C,CAAC;AAC/C,MAAM,CAAC,MAAM,yBAAyB,GACpC,4CAA4C,CAAC;AAC/C,MAAM,CAAC,MAAM,sCAAsC,GACjD,4CAA4C,CAAC"}
@@ -19,6 +19,18 @@ import { UNIVERSAL_RESOLVER_ADDRESS } from "./constants.js";
19
19
  * name: "vitalik.eth",
20
20
  * });
21
21
  * ```
22
+ *
23
+ * Resolve an address to a Basename.
24
+ * ```ts
25
+ * import { resolveAddress, BASENAME_RESOLVER_ADDRESS } from "thirdweb/extensions/ens";
26
+ * import { base } from "thirdweb/chains";
27
+ * const address = await resolveAddress({
28
+ * client,
29
+ * name: "myk.base.eth",
30
+ * resolverAddress: BASENAME_RESOLVER_ADDRESS,
31
+ * resolverChain: base,
32
+ * });
33
+ * ```
22
34
  * @extension ENS
23
35
  * @returns A promise that resolves to the Ethereum address.
24
36
  */
@@ -42,7 +54,7 @@ export async function resolveAddress(options) {
42
54
  const resolvedAddress = getAddress(`0x${result[0].slice(-40)}`);
43
55
  return resolvedAddress;
44
56
  }, {
45
- cacheKey: `ens:addr:${name}`,
57
+ cacheKey: `ens:addr:${resolverChain?.id || 1}:${name}`,
46
58
  // 1min cache
47
59
  cacheTime: 60 * 1000,
48
60
  });
@@ -1 +1 @@
1
- {"version":3,"file":"resolve-address.js","sourceRoot":"","sources":["../../../../src/extensions/ens/resolve-address.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,4CAA4C,CAAC;AAGtE,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,KAAK,EAAE,MAAM,6BAA6B,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AACjE,OAAO,EAAE,SAAS,EAAE,MAAM,kCAAkC,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,MAAM,8CAA8C,CAAC;AAC1E,OAAO,EAAE,OAAO,EAAE,MAAM,mDAAmD,CAAC;AAC5E,OAAO,EAAE,0BAA0B,EAAE,MAAM,gBAAgB,CAAC;AAY5D;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,OAA8B;IACjE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,eAAe,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC;IACjE,IAAI,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;QACpB,OAAO,UAAU,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IACD,OAAO,SAAS,CACd,KAAK,IAAI,EAAE;QACT,MAAM,QAAQ,GAAG,WAAW,CAAC;YAC3B,MAAM;YACN,KAAK,EAAE,aAAa,IAAI,QAAQ;YAChC,OAAO,EAAE,eAAe,IAAI,0BAA0B;SACvD,CAAC,CAAC;QACH,MAAM,IAAI,GAAG,UAAU,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAClD,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC;YAC3B,QAAQ;YACR,IAAI,EAAE,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;YAChC,IAAI;SACL,CAAC,CAAC;QACH,MAAM,eAAe,GAAG,UAAU,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QAEhE,OAAO,eAAe,CAAC;IACzB,CAAC,EACD;QACE,QAAQ,EAAE,YAAY,IAAI,EAAE;QAC5B,aAAa;QACb,SAAS,EAAE,EAAE,GAAG,IAAI;KACrB,CACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"resolve-address.js","sourceRoot":"","sources":["../../../../src/extensions/ens/resolve-address.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,4CAA4C,CAAC;AAGtE,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,KAAK,EAAE,MAAM,6BAA6B,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AACjE,OAAO,EAAE,SAAS,EAAE,MAAM,kCAAkC,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,MAAM,8CAA8C,CAAC;AAC1E,OAAO,EAAE,OAAO,EAAE,MAAM,mDAAmD,CAAC;AAC5E,OAAO,EAAE,0BAA0B,EAAE,MAAM,gBAAgB,CAAC;AAY5D;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,OAA8B;IACjE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,eAAe,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC;IACjE,IAAI,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;QACpB,OAAO,UAAU,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IACD,OAAO,SAAS,CACd,KAAK,IAAI,EAAE;QACT,MAAM,QAAQ,GAAG,WAAW,CAAC;YAC3B,MAAM;YACN,KAAK,EAAE,aAAa,IAAI,QAAQ;YAChC,OAAO,EAAE,eAAe,IAAI,0BAA0B;SACvD,CAAC,CAAC;QACH,MAAM,IAAI,GAAG,UAAU,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAClD,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC;YAC3B,QAAQ;YACR,IAAI,EAAE,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;YAChC,IAAI;SACL,CAAC,CAAC;QACH,MAAM,eAAe,GAAG,UAAU,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QAEhE,OAAO,eAAe,CAAC;IACzB,CAAC,EACD;QACE,QAAQ,EAAE,YAAY,aAAa,EAAE,EAAE,IAAI,CAAC,IAAI,IAAI,EAAE;QACtD,aAAa;QACb,SAAS,EAAE,EAAE,GAAG,IAAI;KACrB,CACF,CAAC;AACJ,CAAC"}