thirdweb 5.95.0-nightly-4c1f384a635054a8cfaaa487e3ba7ada63b221ec-20250415110008 → 5.95.0-nightly-e7b01108037ebef07fba95f888be1905c8fab5df-20250417000348
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/chains/utils.js +41 -2
- package/dist/cjs/chains/utils.js.map +1 -1
- package/dist/cjs/event/actions/get-events.js +56 -8
- package/dist/cjs/event/actions/get-events.js.map +1 -1
- package/dist/cjs/extensions/erc1155/read/getNFT.js +2 -0
- package/dist/cjs/extensions/erc1155/read/getNFT.js.map +1 -1
- package/dist/cjs/extensions/erc20/read/getBalance.js +2 -0
- package/dist/cjs/extensions/erc20/read/getBalance.js.map +1 -1
- package/dist/cjs/extensions/erc721/read/getNFT.js +42 -0
- package/dist/cjs/extensions/erc721/read/getNFT.js.map +1 -1
- package/dist/cjs/extensions/erc721/read/getNFTs.js +44 -17
- package/dist/cjs/extensions/erc721/read/getNFTs.js.map +1 -1
- package/dist/cjs/extensions/erc721/read/getOwnedNFTs.js +46 -0
- package/dist/cjs/extensions/erc721/read/getOwnedNFTs.js.map +1 -1
- package/dist/cjs/extensions/marketplace/direct-listings/utils.js +7 -4
- package/dist/cjs/extensions/marketplace/direct-listings/utils.js.map +1 -1
- package/dist/cjs/extensions/marketplace/english-auctions/utils.js +9 -4
- package/dist/cjs/extensions/marketplace/english-auctions/utils.js.map +1 -1
- package/dist/cjs/extensions/marketplace/offers/utils.js +7 -4
- package/dist/cjs/extensions/marketplace/offers/utils.js.map +1 -1
- package/dist/cjs/insight/common.js +18 -0
- package/dist/cjs/insight/common.js.map +1 -0
- package/dist/cjs/insight/get-events.js +57 -0
- package/dist/cjs/insight/get-events.js.map +1 -0
- package/dist/cjs/insight/get-nfts.js +159 -17
- package/dist/cjs/insight/get-nfts.js.map +1 -1
- package/dist/cjs/insight/get-tokens.js +35 -15
- package/dist/cjs/insight/get-tokens.js.map +1 -1
- package/dist/cjs/insight/get-transactions.js +17 -11
- package/dist/cjs/insight/get-transactions.js.map +1 -1
- package/dist/cjs/insight/index.js +5 -1
- package/dist/cjs/insight/index.js.map +1 -1
- package/dist/cjs/pay/buyWithCrypto/getHistory.js +2 -2
- package/dist/cjs/pay/buyWithCrypto/getHistory.js.map +1 -1
- package/dist/cjs/pay/buyWithCrypto/getStatus.js +2 -2
- package/dist/cjs/pay/buyWithCrypto/getStatus.js.map +1 -1
- package/dist/cjs/pay/buyWithFiat/getHistory.js +2 -2
- package/dist/cjs/pay/buyWithFiat/getHistory.js.map +1 -1
- package/dist/cjs/pay/buyWithFiat/getStatus.js +2 -2
- package/dist/cjs/pay/buyWithFiat/getStatus.js.map +1 -1
- package/dist/cjs/pay/getBuyHistory.js +2 -2
- package/dist/cjs/pay/getBuyHistory.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/ConfirmationScreen.js +6 -2
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/ConfirmationScreen.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/TransferConfirmationScreen.js +3 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/TransferConfirmationScreen.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/SendFunds.js +3 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/SendFunds.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/ViewNFTs.js +6 -43
- package/dist/cjs/react/web/ui/ConnectWallet/screens/ViewNFTs.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/ViewTokens.js +3 -9
- package/dist/cjs/react/web/ui/ConnectWallet/screens/ViewTokens.js.map +1 -1
- package/dist/cjs/react/web/ui/components/TokenIcon.js +3 -1
- package/dist/cjs/react/web/ui/components/TokenIcon.js.map +1 -1
- package/dist/cjs/react/web/ui/prebuilt/NFT/utils.js +7 -2
- package/dist/cjs/react/web/ui/prebuilt/NFT/utils.js.map +1 -1
- package/dist/cjs/rpc/fetch-rpc.js +4 -4
- package/dist/cjs/rpc/fetch-rpc.js.map +1 -1
- package/dist/cjs/social/profiles.js +3 -8
- package/dist/cjs/social/profiles.js.map +1 -1
- package/dist/cjs/storage/download.js +2 -2
- package/dist/cjs/storage/download.js.map +1 -1
- package/dist/cjs/storage/unpin.js +2 -2
- package/dist/cjs/storage/unpin.js.map +1 -1
- package/dist/cjs/storage/upload/web-node.js +0 -1
- package/dist/cjs/storage/upload/web-node.js.map +1 -1
- package/dist/cjs/transaction/actions/gasless/providers/biconomy.js +0 -1
- package/dist/cjs/transaction/actions/gasless/providers/biconomy.js.map +1 -1
- package/dist/cjs/transaction/actions/gasless/providers/openzeppelin.js +0 -1
- package/dist/cjs/transaction/actions/gasless/providers/openzeppelin.js.map +1 -1
- package/dist/cjs/utils/nft/parseNft.js +4 -0
- package/dist/cjs/utils/nft/parseNft.js.map +1 -1
- package/dist/cjs/utils/signatures/resolve-signature.js +0 -2
- package/dist/cjs/utils/signatures/resolve-signature.js.map +1 -1
- package/dist/cjs/version.js +1 -1
- package/dist/cjs/wallets/smart/lib/calls.js +2 -2
- package/dist/cjs/wallets/smart/lib/calls.js.map +1 -1
- package/dist/cjs/wallets/utils/getWalletBalance.js +3 -0
- package/dist/cjs/wallets/utils/getWalletBalance.js.map +1 -1
- package/dist/esm/chains/utils.js +40 -2
- package/dist/esm/chains/utils.js.map +1 -1
- package/dist/esm/event/actions/get-events.js +56 -8
- package/dist/esm/event/actions/get-events.js.map +1 -1
- package/dist/esm/extensions/erc1155/read/getNFT.js +2 -0
- package/dist/esm/extensions/erc1155/read/getNFT.js.map +1 -1
- package/dist/esm/extensions/erc20/read/getBalance.js +2 -0
- package/dist/esm/extensions/erc20/read/getBalance.js.map +1 -1
- package/dist/esm/extensions/erc721/read/getNFT.js +42 -0
- package/dist/esm/extensions/erc721/read/getNFT.js.map +1 -1
- package/dist/esm/extensions/erc721/read/getNFTs.js +44 -17
- package/dist/esm/extensions/erc721/read/getNFTs.js.map +1 -1
- package/dist/esm/extensions/erc721/read/getOwnedNFTs.js +46 -0
- package/dist/esm/extensions/erc721/read/getOwnedNFTs.js.map +1 -1
- package/dist/esm/extensions/marketplace/direct-listings/utils.js +7 -4
- package/dist/esm/extensions/marketplace/direct-listings/utils.js.map +1 -1
- package/dist/esm/extensions/marketplace/english-auctions/utils.js +9 -4
- package/dist/esm/extensions/marketplace/english-auctions/utils.js.map +1 -1
- package/dist/esm/extensions/marketplace/offers/utils.js +7 -4
- package/dist/esm/extensions/marketplace/offers/utils.js.map +1 -1
- package/dist/esm/insight/common.js +15 -0
- package/dist/esm/insight/common.js.map +1 -0
- package/dist/esm/insight/get-events.js +54 -0
- package/dist/esm/insight/get-events.js.map +1 -0
- package/dist/esm/insight/get-nfts.js +155 -15
- package/dist/esm/insight/get-nfts.js.map +1 -1
- package/dist/esm/insight/get-tokens.js +32 -12
- package/dist/esm/insight/get-tokens.js.map +1 -1
- package/dist/esm/insight/get-transactions.js +14 -8
- package/dist/esm/insight/get-transactions.js.map +1 -1
- package/dist/esm/insight/index.js +2 -1
- package/dist/esm/insight/index.js.map +1 -1
- package/dist/esm/pay/buyWithCrypto/getHistory.js +2 -2
- package/dist/esm/pay/buyWithCrypto/getHistory.js.map +1 -1
- package/dist/esm/pay/buyWithCrypto/getStatus.js +2 -2
- package/dist/esm/pay/buyWithCrypto/getStatus.js.map +1 -1
- package/dist/esm/pay/buyWithFiat/getHistory.js +2 -2
- package/dist/esm/pay/buyWithFiat/getHistory.js.map +1 -1
- package/dist/esm/pay/buyWithFiat/getStatus.js +2 -2
- package/dist/esm/pay/buyWithFiat/getStatus.js.map +1 -1
- package/dist/esm/pay/getBuyHistory.js +2 -2
- package/dist/esm/pay/getBuyHistory.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/ConfirmationScreen.js +6 -2
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/ConfirmationScreen.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/TransferConfirmationScreen.js +3 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/TransferConfirmationScreen.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/SendFunds.js +3 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/SendFunds.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/ViewNFTs.js +6 -43
- package/dist/esm/react/web/ui/ConnectWallet/screens/ViewNFTs.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/ViewTokens.js +3 -9
- package/dist/esm/react/web/ui/ConnectWallet/screens/ViewTokens.js.map +1 -1
- package/dist/esm/react/web/ui/components/TokenIcon.js +3 -1
- package/dist/esm/react/web/ui/components/TokenIcon.js.map +1 -1
- package/dist/esm/react/web/ui/prebuilt/NFT/utils.js +7 -2
- package/dist/esm/react/web/ui/prebuilt/NFT/utils.js.map +1 -1
- package/dist/esm/rpc/fetch-rpc.js +4 -4
- package/dist/esm/rpc/fetch-rpc.js.map +1 -1
- package/dist/esm/social/profiles.js +3 -8
- package/dist/esm/social/profiles.js.map +1 -1
- package/dist/esm/storage/download.js +2 -2
- package/dist/esm/storage/download.js.map +1 -1
- package/dist/esm/storage/unpin.js +2 -2
- package/dist/esm/storage/unpin.js.map +1 -1
- package/dist/esm/storage/upload/web-node.js +0 -1
- package/dist/esm/storage/upload/web-node.js.map +1 -1
- package/dist/esm/transaction/actions/gasless/providers/biconomy.js +0 -1
- package/dist/esm/transaction/actions/gasless/providers/biconomy.js.map +1 -1
- package/dist/esm/transaction/actions/gasless/providers/openzeppelin.js +0 -1
- package/dist/esm/transaction/actions/gasless/providers/openzeppelin.js.map +1 -1
- package/dist/esm/utils/nft/parseNft.js +4 -0
- package/dist/esm/utils/nft/parseNft.js.map +1 -1
- package/dist/esm/utils/signatures/resolve-signature.js +0 -2
- package/dist/esm/utils/signatures/resolve-signature.js.map +1 -1
- package/dist/esm/version.js +1 -1
- package/dist/esm/wallets/smart/lib/calls.js +2 -2
- package/dist/esm/wallets/smart/lib/calls.js.map +1 -1
- package/dist/esm/wallets/utils/getWalletBalance.js +3 -0
- package/dist/esm/wallets/utils/getWalletBalance.js.map +1 -1
- package/dist/types/chains/types.d.ts +7 -0
- package/dist/types/chains/types.d.ts.map +1 -1
- package/dist/types/chains/utils.d.ts +15 -1
- package/dist/types/chains/utils.d.ts.map +1 -1
- package/dist/types/event/actions/get-events.d.ts +1 -6
- package/dist/types/event/actions/get-events.d.ts.map +1 -1
- package/dist/types/extensions/erc1155/read/getNFT.d.ts.map +1 -1
- package/dist/types/extensions/erc20/read/getBalance.d.ts +2 -0
- package/dist/types/extensions/erc20/read/getBalance.d.ts.map +1 -1
- package/dist/types/extensions/erc721/read/getNFT.d.ts +5 -0
- package/dist/types/extensions/erc721/read/getNFT.d.ts.map +1 -1
- package/dist/types/extensions/erc721/read/getNFTs.d.ts +5 -0
- package/dist/types/extensions/erc721/read/getNFTs.d.ts.map +1 -1
- package/dist/types/extensions/erc721/read/getOwnedNFTs.d.ts +3 -1
- package/dist/types/extensions/erc721/read/getOwnedNFTs.d.ts.map +1 -1
- package/dist/types/extensions/marketplace/direct-listings/utils.d.ts.map +1 -1
- package/dist/types/extensions/marketplace/english-auctions/utils.d.ts.map +1 -1
- package/dist/types/extensions/marketplace/offers/utils.d.ts.map +1 -1
- package/dist/types/insight/common.d.ts +3 -0
- package/dist/types/insight/common.d.ts.map +1 -0
- package/dist/types/insight/get-events.d.ts +31 -0
- package/dist/types/insight/get-events.d.ts.map +1 -0
- package/dist/types/insight/get-nfts.d.ts +52 -4
- package/dist/types/insight/get-nfts.d.ts.map +1 -1
- package/dist/types/insight/get-tokens.d.ts +4 -4
- package/dist/types/insight/get-tokens.d.ts.map +1 -1
- package/dist/types/insight/get-transactions.d.ts +2 -2
- package/dist/types/insight/get-transactions.d.ts.map +1 -1
- package/dist/types/insight/index.d.ts +3 -2
- package/dist/types/insight/index.d.ts.map +1 -1
- package/dist/types/pay/buyWithCrypto/getHistory.d.ts.map +1 -1
- package/dist/types/pay/buyWithCrypto/getStatus.d.ts.map +1 -1
- package/dist/types/pay/buyWithFiat/getHistory.d.ts.map +1 -1
- package/dist/types/pay/buyWithFiat/getStatus.d.ts.map +1 -1
- package/dist/types/pay/getBuyHistory.d.ts.map +1 -1
- package/dist/types/react/core/utils/wallet.d.ts +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/main/useBuyTxStates.d.ts +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/ConfirmationScreen.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/TransferConfirmationScreen.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/SendFunds.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/ViewNFTs.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/ViewTokens.d.ts.map +1 -1
- package/dist/types/react/web/ui/components/TokenIcon.d.ts.map +1 -1
- package/dist/types/react/web/ui/prebuilt/NFT/utils.d.ts.map +1 -1
- package/dist/types/rpc/fetch-rpc.d.ts.map +1 -1
- package/dist/types/social/profiles.d.ts.map +1 -1
- package/dist/types/storage/download.d.ts.map +1 -1
- package/dist/types/storage/unpin.d.ts.map +1 -1
- package/dist/types/storage/upload/web-node.d.ts.map +1 -1
- package/dist/types/transaction/actions/gasless/providers/biconomy.d.ts.map +1 -1
- package/dist/types/transaction/actions/gasless/providers/openzeppelin.d.ts.map +1 -1
- package/dist/types/utils/nft/parseNft.d.ts +8 -0
- package/dist/types/utils/nft/parseNft.d.ts.map +1 -1
- package/dist/types/utils/signatures/resolve-signature.d.ts.map +1 -1
- package/dist/types/version.d.ts +1 -1
- package/dist/types/wallets/utils/getWalletBalance.d.ts +2 -7
- package/dist/types/wallets/utils/getWalletBalance.d.ts.map +1 -1
- package/package.json +4 -4
- package/src/chains/types.ts +8 -0
- package/src/chains/utils.ts +65 -2
- package/src/event/actions/get-events.test.ts +96 -0
- package/src/event/actions/get-events.ts +87 -12
- package/src/extensions/erc1155/read/getNFT.test.ts +2 -0
- package/src/extensions/erc1155/read/getNFT.ts +2 -0
- package/src/extensions/erc20/drop20.test.ts +48 -132
- package/src/extensions/erc20/read/getBalance.test.ts +5 -9
- package/src/extensions/erc20/read/getBalance.ts +4 -0
- package/src/extensions/erc721/read/getNFT.test.ts +108 -0
- package/src/extensions/erc721/read/getNFT.ts +55 -1
- package/src/extensions/erc721/read/getNFTs.test.ts +219 -13
- package/src/extensions/erc721/read/getNFTs.ts +59 -20
- package/src/extensions/erc721/read/getOwnedNFTs.test.ts +27 -2
- package/src/extensions/erc721/read/getOwnedNFTs.ts +61 -1
- package/src/extensions/erc721/token721.test.ts +2 -0
- package/src/extensions/marketplace/direct-listings/direct-listings.test.ts +2 -18
- package/src/extensions/marketplace/direct-listings/utils.ts +7 -4
- package/src/extensions/marketplace/english-auctions/utils.ts +9 -4
- package/src/extensions/marketplace/offers/utils.ts +7 -4
- package/src/insight/common.ts +24 -0
- package/src/insight/get-events.ts +92 -0
- package/src/insight/get-nfts.ts +256 -22
- package/src/insight/get-tokens.ts +57 -26
- package/src/insight/get-transactions.ts +30 -20
- package/src/insight/index.ts +7 -2
- package/src/pay/buyWithCrypto/getHistory.ts +4 -2
- package/src/pay/buyWithCrypto/getStatus.ts +4 -2
- package/src/pay/buyWithFiat/getHistory.ts +4 -2
- package/src/pay/buyWithFiat/getStatus.ts +4 -2
- package/src/pay/getBuyHistory.ts +4 -2
- package/src/react/web/ui/ConnectWallet/screens/Buy/swap/ConfirmationScreen.tsx +10 -2
- package/src/react/web/ui/ConnectWallet/screens/Buy/swap/TransferConfirmationScreen.tsx +5 -1
- package/src/react/web/ui/ConnectWallet/screens/SendFunds.tsx +5 -1
- package/src/react/web/ui/ConnectWallet/screens/ViewNFTs.tsx +43 -68
- package/src/react/web/ui/ConnectWallet/screens/ViewTokens.tsx +4 -14
- package/src/react/web/ui/components/TokenIcon.tsx +12 -3
- package/src/react/web/ui/prebuilt/NFT/utils.test.ts +2 -64
- package/src/react/web/ui/prebuilt/NFT/utils.ts +7 -2
- package/src/rpc/fetch-rpc.ts +6 -4
- package/src/social/profiles.ts +5 -9
- package/src/storage/download.ts +4 -2
- package/src/storage/unpin.ts +4 -2
- package/src/storage/upload/web-node.ts +0 -1
- package/src/transaction/actions/gasless/providers/biconomy.ts +0 -1
- package/src/transaction/actions/gasless/providers/openzeppelin.ts +0 -1
- package/src/utils/nft/parseNft.test.ts +8 -0
- package/src/utils/nft/parseNft.ts +12 -0
- package/src/utils/signatures/resolve-signature.ts +0 -2
- package/src/version.ts +1 -1
- package/src/wallets/smart/lib/calls.ts +2 -2
- package/src/wallets/utils/getWalletBalance.ts +5 -7
@@ -21,6 +21,8 @@ function parseNFT(base, options) {
|
|
21
21
|
id: options.tokenId,
|
22
22
|
tokenURI: options.tokenUri,
|
23
23
|
type: options.type,
|
24
|
+
tokenAddress: options.tokenAddress,
|
25
|
+
chainId: options.chainId,
|
24
26
|
};
|
25
27
|
case "ERC1155":
|
26
28
|
return {
|
@@ -30,6 +32,8 @@ function parseNFT(base, options) {
|
|
30
32
|
tokenURI: options.tokenUri,
|
31
33
|
type: options.type,
|
32
34
|
supply: options.supply,
|
35
|
+
tokenAddress: options.tokenAddress,
|
36
|
+
chainId: options.chainId,
|
33
37
|
};
|
34
38
|
default:
|
35
39
|
throw new Error("Invalid NFT type");
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"parseNft.js","sourceRoot":"","sources":["../../../../src/utils/nft/parseNft.ts"],"names":[],"mappings":";;
|
1
|
+
{"version":3,"file":"parseNft.js","sourceRoot":"","sources":["../../../../src/utils/nft/parseNft.ts"],"names":[],"mappings":"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"}
|
@@ -13,7 +13,6 @@ async function resolveFunctionSignature(hexSig) {
|
|
13
13
|
}
|
14
14
|
const res = await fetch(`${SIGNATURE_API}/signatures/?format=json&hex_signature=${hexSig}`);
|
15
15
|
if (!res.ok) {
|
16
|
-
res.body?.cancel();
|
17
16
|
return null;
|
18
17
|
}
|
19
18
|
const data = await res.json();
|
@@ -30,7 +29,6 @@ async function resolveEventSignature(hexSig) {
|
|
30
29
|
}
|
31
30
|
const res = await fetch(`${SIGNATURE_API}/event-signatures/?format=json&hex_signature=${hexSig}`);
|
32
31
|
if (!res.ok) {
|
33
|
-
res.body?.cancel();
|
34
32
|
return null;
|
35
33
|
}
|
36
34
|
const data = await res.json();
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"resolve-signature.js","sourceRoot":"","sources":["../../../../src/utils/signatures/resolve-signature.ts"],"names":[],"mappings":";;
|
1
|
+
{"version":3,"file":"resolve-signature.js","sourceRoot":"","sources":["../../../../src/utils/signatures/resolve-signature.ts"],"names":[],"mappings":"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"}
|
package/dist/cjs/version.js
CHANGED
@@ -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.95.0-nightly-
|
4
|
+
exports.version = "5.95.0-nightly-e7b01108037ebef07fba95f888be1905c8fab5df-20250417000348";
|
5
5
|
//# sourceMappingURL=version.js.map
|
@@ -86,8 +86,8 @@ async function predictAddress(args) {
|
|
86
86
|
if (retries === maxRetries) {
|
87
87
|
throw error;
|
88
88
|
}
|
89
|
-
// Exponential backoff: 2^(retries + 1) *
|
90
|
-
const delay = 2 ** (retries + 1) *
|
89
|
+
// Exponential backoff: 2^(retries + 1) * 200ms (400ms, 800ms, 1600ms)
|
90
|
+
const delay = 2 ** (retries + 1) * 200;
|
91
91
|
await new Promise((resolve) => setTimeout(resolve, delay));
|
92
92
|
retries++;
|
93
93
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"calls.js","sourceRoot":"","sources":["../../../../../src/wallets/smart/lib/calls.ts"],"names":[],"mappings":";;AA8BA,gEAgBC;AAmBD,wCAqEC;AAKD,oDA2BC;AAKD,wCAyBC;AAKD,kDAyBC;AAhOD,+DAGuC;AACvC,4FAAoF;AAEpF,4EAAqE;AACrE,2DAAoE;AACpE,sEAAgE;AAEhE,iDAA8D;AAE9D;;;;;;;;;;;;;;;GAeG;AACI,KAAK,UAAU,0BAA0B,CAAC,IAMhD;IACC,OAAO,cAAc,CAAC;QACpB,YAAY,EAAE,IAAI,CAAC,YAAY;QAC/B,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,eAAe,EAAE,IAAA,yBAAW,EAAC;YAC3B,OAAO,EAAE,IAAI,CAAC,cAAc,IAAI,2CAA4B;YAC5D,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,MAAM,EAAE,IAAI,CAAC,MAAM;SACpB,CAAC;KACH,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACI,KAAK,UAAU,cAAc,CAAC,IASpC;IACC,MAAM,EACJ,eAAe,EACf,sBAAsB,EAAE,cAAc,EACtC,YAAY,EACZ,WAAW,EACX,cAAc,GACf,GAAG,IAAI,CAAC;IACT,IAAI,cAAc,EAAE,CAAC;QACnB,OAAO,cAAc,CAAC,eAAe,EAAE,YAAY,CAAC,CAAC;IACvD,CAAC;IACD,IAAI,cAAc,EAAE,CAAC;QACnB,OAAO,cAAc,CAAC;IACxB,CAAC;IACD,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CACb,kEAAkE,CACnE,CAAC;IACJ,CAAC;IACD,OAAO,IAAA,wBAAS,EACd,KAAK,IAAI,EAAE;QACT,MAAM,OAAO,GACX,WAAW,IAAI,IAAA,cAAK,EAAC,WAAW,CAAC;YAC/B,CAAC,CAAC,WAAW;YACb,CAAC,CAAC,IAAA,oBAAW,EAAC,WAAW,IAAI,EAAE,CAAC,CAAC;QACrC,IAAI,MAA0B,CAAC;QAC/B,IAAI,OAAO,GAAG,CAAC,CAAC;QAChB,MAAM,UAAU,GAAG,CAAC,CAAC;QAErB,OAAO,OAAO,IAAI,UAAU,EAAE,CAAC;YAC7B,IAAI,CAAC;gBACH,MAAM,GAAG,MAAM,IAAA,+BAAY,EAAC;oBAC1B,QAAQ,EAAE,eAAe;oBACzB,MAAM,EAAE,uDAAuD;oBAC/D,MAAM,EAAE,CAAC,YAAY,EAAE,OAAO,CAAC;iBAChC,CAAC,CAAC;gBACH,MAAM;YACR,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,OAAO,KAAK,UAAU,EAAE,CAAC;oBAC3B,MAAM,KAAK,CAAC;gBACd,CAAC;gBAED,
|
1
|
+
{"version":3,"file":"calls.js","sourceRoot":"","sources":["../../../../../src/wallets/smart/lib/calls.ts"],"names":[],"mappings":"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"}
|
@@ -2,6 +2,7 @@
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
3
|
exports.getWalletBalance = getWalletBalance;
|
4
4
|
const utils_js_1 = require("../../chains/utils.js");
|
5
|
+
const addresses_js_1 = require("../../constants/addresses.js");
|
5
6
|
const contract_js_1 = require("../../contract/contract.js");
|
6
7
|
const eth_getBalance_js_1 = require("../../rpc/actions/eth_getBalance.js");
|
7
8
|
const rpc_js_1 = require("../../rpc/rpc.js");
|
@@ -46,6 +47,8 @@ async function getWalletBalance(options) {
|
|
46
47
|
displayValue: (0, units_js_1.toTokens)(nativeBalance, nativeDecimals),
|
47
48
|
symbol: nativeSymbol,
|
48
49
|
name: nativeName,
|
50
|
+
tokenAddress: tokenAddress ?? addresses_js_1.NATIVE_TOKEN_ADDRESS,
|
51
|
+
chainId: chain.id,
|
49
52
|
};
|
50
53
|
}
|
51
54
|
//# sourceMappingURL=getWalletBalance.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"getWalletBalance.js","sourceRoot":"","sources":["../../../../src/wallets/utils/getWalletBalance.ts"],"names":[],"mappings":";;
|
1
|
+
{"version":3,"file":"getWalletBalance.js","sourceRoot":"","sources":["../../../../src/wallets/utils/getWalletBalance.ts"],"names":[],"mappings":";;AAyCA,4CAmCC;AA3ED,oDAI+B;AAE/B,+DAAoE;AACpE,4DAAyD;AAEzD,2EAAqE;AACrE,6CAAgD;AAChD,mDAAgD;AAchD;;;;;;;;;;;;;;GAcG;AACI,KAAK,UAAU,gBAAgB,CACpC,OAAgC;IAEhC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC;IACzD,aAAa;IACb,IAAI,YAAY,EAAE,CAAC;QACjB,0DAA0D;QAC1D,MAAM,EAAE,UAAU,EAAE,GAAG,2CACrB,2CAA2C,EAC5C,CAAC;QACF,OAAO,UAAU,CAAC;YAChB,QAAQ,EAAE,IAAA,yBAAW,EAAC,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,CAAC;YAC/D,OAAO;SACR,CAAC,CAAC;IACL,CAAC;IACD,oBAAoB;IACpB,MAAM,UAAU,GAAG,IAAA,qBAAY,EAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;IAEnD,MAAM,CAAC,YAAY,EAAE,cAAc,EAAE,UAAU,EAAE,aAAa,CAAC,GAC7D,MAAM,OAAO,CAAC,GAAG,CAAC;QAChB,IAAA,yBAAc,EAAC,KAAK,CAAC;QACrB,IAAA,2BAAgB,EAAC,KAAK,CAAC;QACvB,IAAA,qCAA0B,EAAC,KAAK,CAAC;QACjC,IAAA,kCAAc,EAAC,UAAU,EAAE,EAAE,OAAO,EAAE,CAAC;KACxC,CAAC,CAAC;IAEL,OAAO;QACL,KAAK,EAAE,aAAa;QACpB,QAAQ,EAAE,cAAc;QACxB,YAAY,EAAE,IAAA,mBAAQ,EAAC,aAAa,EAAE,cAAc,CAAC;QACrD,MAAM,EAAE,YAAY;QACpB,IAAI,EAAE,UAAU;QAChB,YAAY,EAAE,YAAY,IAAI,mCAAoB;QAClD,OAAO,EAAE,KAAK,CAAC,EAAE;KAClB,CAAC;AACJ,CAAC"}
|
package/dist/esm/chains/utils.js
CHANGED
@@ -242,8 +242,7 @@ export function getChainMetadata(chain) {
|
|
242
242
|
try {
|
243
243
|
const res = await fetch(`https://api.thirdweb.com/v1/chains/${chainId}`);
|
244
244
|
if (!res.ok) {
|
245
|
-
res.
|
246
|
-
throw new Error(`Failed to fetch chain data for chainId ${chainId}`);
|
245
|
+
throw new Error(`Failed to fetch chain data for chainId ${chainId}. ${res.status} ${res.statusText}`);
|
247
246
|
}
|
248
247
|
const response = (await res.json());
|
249
248
|
if (response.error) {
|
@@ -263,6 +262,45 @@ export function getChainMetadata(chain) {
|
|
263
262
|
cacheTime: 5 * 60 * 1000, // 5 minutes
|
264
263
|
});
|
265
264
|
}
|
265
|
+
/**
|
266
|
+
* Retrieves a list of services available on a given chain
|
267
|
+
* @param chain - The chain object containing the chain ID.
|
268
|
+
* @returns A Promise that resolves to chain services.
|
269
|
+
* @throws If there is an error fetching the chain services.
|
270
|
+
* @example
|
271
|
+
* ```ts
|
272
|
+
* const chain = defineChain({ id: 1 });
|
273
|
+
* const chainServices = await getChainServices(chain);
|
274
|
+
* console.log(chainServices);
|
275
|
+
* ```
|
276
|
+
* @chain
|
277
|
+
*/
|
278
|
+
export function getChainServices(chain) {
|
279
|
+
const chainId = chain.id;
|
280
|
+
return withCache(async () => {
|
281
|
+
try {
|
282
|
+
const res = await fetch(`https://api.thirdweb.com/v1/chains/${chainId}/services`);
|
283
|
+
if (!res.ok) {
|
284
|
+
throw new Error(`Failed to fetch services for chainId ${chainId}. ${res.status} ${res.statusText}`);
|
285
|
+
}
|
286
|
+
const response = (await res.json());
|
287
|
+
if (response.error) {
|
288
|
+
throw new Error(`Failed to fetch services for chainId ${chainId}`);
|
289
|
+
}
|
290
|
+
if (!response.data) {
|
291
|
+
throw new Error(`Failed to fetch services for chainId ${chainId}`);
|
292
|
+
}
|
293
|
+
const services = response.data.services;
|
294
|
+
return services;
|
295
|
+
}
|
296
|
+
catch {
|
297
|
+
throw new Error(`Failed to fetch services for chainId ${chainId}`);
|
298
|
+
}
|
299
|
+
}, {
|
300
|
+
cacheKey: `chain:${chainId}:services`,
|
301
|
+
cacheTime: 24 * 60 * 60 * 1000, // 1 day
|
302
|
+
});
|
303
|
+
}
|
266
304
|
/**
|
267
305
|
* Convert `ApiChain` to `Chain` object
|
268
306
|
* @internal
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/chains/utils.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAC1E,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/chains/utils.ts"],"names":[],"mappings":"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"}
|
@@ -1,14 +1,11 @@
|
|
1
|
-
|
2
|
-
* 1. blockTime + contract (with abi) + no events -> logs with types and parsing *if* contract has abi defined
|
3
|
-
* 2. blockTime + contract (no abi) + no events -> logs with NO types but *with* parsing
|
4
|
-
* 3. blockTime + no contract + events -> logs with types and parsing (across all "addresses") (no contract filter)
|
5
|
-
* 4. blockTime + contract + events -> logs with types and parsing (filtered by contract address + event topics)
|
6
|
-
*/
|
1
|
+
import { formatLog } from "viem";
|
7
2
|
import { resolveContractAbi } from "../../contract/actions/resolve-abi.js";
|
3
|
+
import { getContractEvents as getContractEventsInsight } from "../../insight/get-events.js";
|
8
4
|
import { eth_blockNumber } from "../../rpc/actions/eth_blockNumber.js";
|
9
5
|
import { eth_getLogs, } from "../../rpc/actions/eth_getLogs.js";
|
10
6
|
import { getRpcClient } from "../../rpc/rpc.js";
|
11
7
|
import { getAddress } from "../../utils/address.js";
|
8
|
+
import { numberToHex } from "../../utils/encoding/hex.js";
|
12
9
|
import { prepareEvent } from "../prepare-event.js";
|
13
10
|
import { isAbiEvent } from "../utils.js";
|
14
11
|
import { parseEventLogs } from "./parse-logs.js";
|
@@ -61,7 +58,7 @@ import { parseEventLogs } from "./parse-logs.js";
|
|
61
58
|
* @contract
|
62
59
|
*/
|
63
60
|
export async function getContractEvents(options) {
|
64
|
-
const { contract, events, blockRange, ...restParams } = options;
|
61
|
+
const { contract, events, blockRange, useIndexer = true, ...restParams } = options;
|
65
62
|
const rpcRequest = getRpcClient(contract);
|
66
63
|
if (restParams.blockHash &&
|
67
64
|
(blockRange || restParams.fromBlock || restParams.toBlock)) {
|
@@ -116,7 +113,25 @@ export async function getContractEvents(options) {
|
|
116
113
|
}))
|
117
114
|
: // otherwise we want "all" events (aka not pass any topics at all)
|
118
115
|
[{ ...restParams, address: getAddress(contract.address) }];
|
119
|
-
|
116
|
+
let logs = [];
|
117
|
+
// try fetching from insight if available
|
118
|
+
if (useIndexer) {
|
119
|
+
try {
|
120
|
+
logs = await Promise.all(logsParams.map((p) => getLogsFromInsight({
|
121
|
+
params: p,
|
122
|
+
contract,
|
123
|
+
})));
|
124
|
+
}
|
125
|
+
catch (e) {
|
126
|
+
console.warn("Error fetching from insight, falling back to rpc", e);
|
127
|
+
// fetch from rpc
|
128
|
+
logs = await Promise.all(logsParams.map((ethLogParams) => eth_getLogs(rpcRequest, ethLogParams)));
|
129
|
+
}
|
130
|
+
}
|
131
|
+
else {
|
132
|
+
// fetch from rpc
|
133
|
+
logs = await Promise.all(logsParams.map((ethLogParams) => eth_getLogs(rpcRequest, ethLogParams)));
|
134
|
+
}
|
120
135
|
const flattenLogs = logs
|
121
136
|
.flat()
|
122
137
|
.sort((a, b) => Number((a.blockNumber ?? 0n) - (b.blockNumber ?? 0n)));
|
@@ -125,4 +140,37 @@ export async function getContractEvents(options) {
|
|
125
140
|
events: resolvedEvents,
|
126
141
|
});
|
127
142
|
}
|
143
|
+
async function getLogsFromInsight(options) {
|
144
|
+
const { params, contract } = options;
|
145
|
+
const fromBlock = typeof params.fromBlock === "bigint" ? Number(params.fromBlock) : undefined;
|
146
|
+
const toBlock = typeof params.toBlock === "bigint" ? Number(params.toBlock) : undefined;
|
147
|
+
const r = await getContractEventsInsight({
|
148
|
+
client: contract.client,
|
149
|
+
chains: [contract.chain],
|
150
|
+
contractAddress: contract.address,
|
151
|
+
queryOptions: {
|
152
|
+
limit: 500,
|
153
|
+
filter_block_hash: params.blockHash,
|
154
|
+
filter_block_number_gte: fromBlock,
|
155
|
+
filter_block_number_lte: toBlock,
|
156
|
+
filter_topic_0: params.topics?.[0],
|
157
|
+
filter_topic_1: params.topics?.[1],
|
158
|
+
filter_topic_2: params.topics?.[2],
|
159
|
+
filter_topic_3: params.topics?.[3],
|
160
|
+
},
|
161
|
+
});
|
162
|
+
const cleanedEventData = r.map((tx) => ({
|
163
|
+
chainId: tx.chain_id,
|
164
|
+
blockNumber: numberToHex(Number(tx.block_number)),
|
165
|
+
blockHash: tx.block_hash,
|
166
|
+
blockTimestamp: tx.block_timestamp,
|
167
|
+
transactionHash: tx.transaction_hash,
|
168
|
+
transactionIndex: numberToHex(tx.transaction_index),
|
169
|
+
logIndex: numberToHex(tx.log_index),
|
170
|
+
address: tx.address,
|
171
|
+
data: tx.data,
|
172
|
+
topics: tx.topics,
|
173
|
+
}));
|
174
|
+
return cleanedEventData.map((e) => formatLog(e));
|
175
|
+
}
|
128
176
|
//# sourceMappingURL=get-events.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"get-events.js","sourceRoot":"","sources":["../../../../src/event/actions/get-events.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"get-events.js","sourceRoot":"","sources":["../../../../src/event/actions/get-events.ts"],"names":[],"mappings":"AAMA,OAAO,EAAY,SAAS,EAAE,MAAM,MAAM,CAAC;AAC3C,OAAO,EAAE,kBAAkB,EAAE,MAAM,uCAAuC,CAAC;AAE3E,OAAO,EAAE,iBAAiB,IAAI,wBAAwB,EAAE,MAAM,6BAA6B,CAAC;AAC5F,OAAO,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AACvE,OAAO,EAGL,WAAW,GACZ,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAY,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAEpE,OAAO,EAAsB,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACvE,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAA6B,cAAc,EAAE,MAAM,iBAAiB,CAAC;AA8B5E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+CG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAOrC,OAA0D;IAE1D,MAAM,EACJ,QAAQ,EACR,MAAM,EACN,UAAU,EACV,UAAU,GAAG,IAAI,EACjB,GAAG,UAAU,EACd,GAAG,OAAO,CAAC;IAEZ,MAAM,UAAU,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC;IAE1C,IACE,UAAU,CAAC,SAAS;QACpB,CAAC,UAAU,IAAI,UAAU,CAAC,SAAS,IAAI,UAAU,CAAC,OAAO,CAAC,EAC1D,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;IACxE,CAAC;IAED,MAAM,iBAAiB,GAAG,MAAM,eAAe,CAAC,UAAU,CAAC,CAAC;IAE5D,yDAAyD;IACzD,IAAI,UAAU,EAAE,CAAC;QACf,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,UAAU,CAAC;QAE1C,6CAA6C;QAC7C,IACE,SAAS,KAAK,SAAS;YACvB,OAAO,KAAK,SAAS;YACrB,MAAM,CAAC,OAAO,CAAC,GAAG,MAAM,CAAC,SAAS,CAAC,KAAK,MAAM,CAAC,UAAU,CAAC,EAC1D,CAAC;YACD,MAAM,IAAI,KAAK,CACb,mIAAmI,CACpI,CAAC;QACJ,CAAC;QAED,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YAC5B,UAAU,CAAC,OAAO,GAAG,MAAM,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,CAAC,4CAA4C;QAChH,CAAC;aAAM,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YACjC,UAAU,CAAC,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,CAAC,yCAAyC;QAC7G,CAAC;aAAM,CAAC;YACN,yEAAyE;YACzE,UAAU,CAAC,OAAO,GAAG,iBAAiB,CAAC;YACvC,UAAU,CAAC,SAAS,GAAG,iBAAiB,GAAG,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,CAAC,yCAAyC;QAC/G,CAAC;IACH,CAAC;IAED,IAAI,cAAc,GAAG,MAAM,IAAI,EAAE,CAAC;IAElC,sEAAsE;IACtE,IAAI,CAAC,MAAM,EAAE,MAAM,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC;QAClC,sDAAsD;QACtD,IAAI,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,CAAC;YACzB,2FAA2F;YAC3F,cAAc,GAAG,QAAQ,CAAC,GAAG;iBAC1B,MAAM,CAAC,UAAU,CAAC;iBAClB,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,YAAY,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC;QAC9D,CAAC;aAAM,CAAC;YACN,MAAM,UAAU,GAAG,MAAM,kBAAkB,CAAC,QAAQ,CAAC,CAAC;YACtD,2FAA2F;YAC3F,cAAc,GAAG,UAAU;iBACxB,MAAM,CAAC,UAAU,CAAC;iBAClB,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,YAAY,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC;QAC9D,CAAC;IACH,CAAC;IAED,MAAM,UAAU,GACd,MAAM,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC;QACzB,CAAC,CAAC,gDAAgD;YAChD,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBACjB,GAAG,UAAU;gBACb,OAAO,EAAE,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC;gBACrC,MAAM,EAAE,CAAC,CAAC,MAAM;aACjB,CAAC,CAAC;QACL,CAAC,CAAC,kEAAkE;YAClE,CAAC,EAAE,GAAG,UAAU,EAAE,OAAO,EAAE,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAEjE,IAAI,IAAI,GAAY,EAAE,CAAC;IAEvB,yCAAyC;IACzC,IAAI,UAAU,EAAE,CAAC;QACf,IAAI,CAAC;YACH,IAAI,GAAG,MAAM,OAAO,CAAC,GAAG,CACtB,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CACnB,kBAAkB,CAAC;gBACjB,MAAM,EAAE,CAAC;gBACT,QAAQ;aACT,CAAC,CACH,CACF,CAAC;QACJ,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,CAAC,IAAI,CAAC,kDAAkD,EAAE,CAAC,CAAC,CAAC;YACpE,iBAAiB;YACjB,IAAI,GAAG,MAAM,OAAO,CAAC,GAAG,CACtB,UAAU,CAAC,GAAG,CAAC,CAAC,YAAY,EAAE,EAAE,CAAC,WAAW,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC,CACxE,CAAC;QACJ,CAAC;IACH,CAAC;SAAM,CAAC;QACN,iBAAiB;QACjB,IAAI,GAAG,MAAM,OAAO,CAAC,GAAG,CACtB,UAAU,CAAC,GAAG,CAAC,CAAC,YAAY,EAAE,EAAE,CAAC,WAAW,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC,CACxE,CAAC;IACJ,CAAC;IAED,MAAM,WAAW,GAAG,IAAI;SACrB,IAAI,EAAE;SACN,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IACzE,OAAO,cAAc,CAAC;QACpB,IAAI,EAAE,WAAW;QACjB,MAAM,EAAE,cAAc;KACvB,CAAC,CAAC;AACL,CAAC;AAED,KAAK,UAAU,kBAAkB,CAAC,OAGjC;IACC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC;IAErC,MAAM,SAAS,GACb,OAAO,MAAM,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAE9E,MAAM,OAAO,GACX,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAE1E,MAAM,CAAC,GAAG,MAAM,wBAAwB,CAAC;QACvC,MAAM,EAAE,QAAQ,CAAC,MAAM;QACvB,MAAM,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC;QACxB,eAAe,EAAE,QAAQ,CAAC,OAAO;QACjC,YAAY,EAAE;YACZ,KAAK,EAAE,GAAG;YACV,iBAAiB,EAAE,MAAM,CAAC,SAAS;YACnC,uBAAuB,EAAE,SAAS;YAClC,uBAAuB,EAAE,OAAO;YAChC,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAoB;YACrD,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAoB;YACrD,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAoB;YACrD,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAoB;SACtD;KACF,CAAC,CAAC;IAEH,MAAM,gBAAgB,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QACtC,OAAO,EAAE,EAAE,CAAC,QAAQ;QACpB,WAAW,EAAE,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC;QACjD,SAAS,EAAE,EAAE,CAAC,UAAiB;QAC/B,cAAc,EAAE,EAAE,CAAC,eAAe;QAClC,eAAe,EAAE,EAAE,CAAC,gBAAuB;QAC3C,gBAAgB,EAAE,WAAW,CAAC,EAAE,CAAC,iBAAiB,CAAC;QACnD,QAAQ,EAAE,WAAW,CAAC,EAAE,CAAC,SAAS,CAAC;QACnC,OAAO,EAAE,EAAE,CAAC,OAAO;QACnB,IAAI,EAAE,EAAE,CAAC,IAAW;QACpB,MAAM,EAAE,EAAE,CAAC,MAA8D;KAC1E,CAAC,CAAC,CAAC;IAEJ,OAAO,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;AACnD,CAAC"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"getNFT.js","sourceRoot":"","sources":["../../../../../src/extensions/erc1155/read/getNFT.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,0CAA0C,CAAC;AAC9E,OAAO,EAAY,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,WAAW,EAAE,MAAM,+CAA+C,CAAC;AAC5E,OAAO,EAAE,GAAG,EAAE,MAAM,uCAAuC,CAAC;AAE5D,OAAO,EAAE,cAAc,IAAI,iBAAiB,EAAE,MAAM,uCAAuC,CAAC;AAU5F;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,KAAK,UAAU,MAAM,CAC1B,OAA6C;IAE7C,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QAC3C,GAAG,CAAC;YACF,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,OAAO,EAAE,OAAO,CAAC,OAAO;SACzB,CAAC;QACF,WAAW,CAAC;YACV,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,EAAE,EAAE,OAAO,CAAC,OAAO;YACnB,+DAA+D;SAChE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC;KACnB,CAAC,CAAC;IACH,OAAO,QAAQ,CACb,MAAM,kBAAkB,CAAC;QACvB,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,MAAM;QAC/B,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,QAAQ;KACT,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;QACd,EAAE,EAAE,OAAO,CAAC,OAAO;QACnB,IAAI,EAAE,SAAS;QACf,GAAG,EAAE,QAAQ;KACd,CAAC,CAAC,EACH;QACE,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,QAAQ;QACR,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,IAAI;QACX,MAAM;
|
1
|
+
{"version":3,"file":"getNFT.js","sourceRoot":"","sources":["../../../../../src/extensions/erc1155/read/getNFT.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,0CAA0C,CAAC;AAC9E,OAAO,EAAY,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,WAAW,EAAE,MAAM,+CAA+C,CAAC;AAC5E,OAAO,EAAE,GAAG,EAAE,MAAM,uCAAuC,CAAC;AAE5D,OAAO,EAAE,cAAc,IAAI,iBAAiB,EAAE,MAAM,uCAAuC,CAAC;AAU5F;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,KAAK,UAAU,MAAM,CAC1B,OAA6C;IAE7C,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QAC3C,GAAG,CAAC;YACF,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,OAAO,EAAE,OAAO,CAAC,OAAO;SACzB,CAAC;QACF,WAAW,CAAC;YACV,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,EAAE,EAAE,OAAO,CAAC,OAAO;YACnB,+DAA+D;SAChE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC;KACnB,CAAC,CAAC;IACH,OAAO,QAAQ,CACb,MAAM,kBAAkB,CAAC;QACvB,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,MAAM;QAC/B,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,QAAQ;KACT,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;QACd,EAAE,EAAE,OAAO,CAAC,OAAO;QACnB,IAAI,EAAE,SAAS;QACf,GAAG,EAAE,QAAQ;KACd,CAAC,CAAC,EACH;QACE,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,QAAQ;QACR,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,IAAI;QACX,MAAM;QACN,YAAY,EAAE,OAAO,CAAC,QAAQ,CAAC,OAAO;QACtC,OAAO,EAAE,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;KACnC,CACF,CAAC;AACJ,CAAC"}
|
@@ -22,6 +22,8 @@ export async function getBalance(options) {
|
|
22
22
|
...currencyMetadata,
|
23
23
|
value: balanceWei,
|
24
24
|
displayValue: toTokens(balanceWei, currencyMetadata.decimals),
|
25
|
+
tokenAddress: options.contract.address,
|
26
|
+
chainId: options.contract.chain.id,
|
25
27
|
};
|
26
28
|
}
|
27
29
|
//# sourceMappingURL=getBalance.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"getBalance.js","sourceRoot":"","sources":["../../../../../src/extensions/erc20/read/getBalance.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,2CAA2C,CAAC;AACtE,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;
|
1
|
+
{"version":3,"file":"getBalance.js","sourceRoot":"","sources":["../../../../../src/extensions/erc20/read/getBalance.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,2CAA2C,CAAC;AACtE,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AA0B/D;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,OAAiD;IAEjD,MAAM,CAAC,UAAU,EAAE,gBAAgB,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QACvD,SAAS,CAAC,OAAO,CAAC;QAClB,mBAAmB,CAAC,OAAO,CAAC;KAC7B,CAAC,CAAC;IACH,OAAO;QACL,GAAG,gBAAgB;QACnB,KAAK,EAAE,UAAU;QACjB,YAAY,EAAE,QAAQ,CAAC,UAAU,EAAE,gBAAgB,CAAC,QAAQ,CAAC;QAC7D,YAAY,EAAE,OAAO,CAAC,QAAQ,CAAC,OAAO;QACtC,OAAO,EAAE,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;KACnC,CAAC;AACJ,CAAC"}
|
@@ -3,6 +3,7 @@ import { parseNFT } from "../../../utils/nft/parseNft.js";
|
|
3
3
|
import { tokenURI, } from "../__generated__/IERC721A/read/tokenURI.js";
|
4
4
|
import { tokenByIndex } from "../__generated__/IERC721Enumerable/read/tokenByIndex.js";
|
5
5
|
export { isTokenURISupported as isGetNFTSupported } from "../__generated__/IERC721A/read/tokenURI.js";
|
6
|
+
import { getNFT as getNFTInsight } from "../../../insight/index.js";
|
6
7
|
/**
|
7
8
|
* Retrieves information about a specific ERC721 non-fungible token (NFT).
|
8
9
|
* @param options - The options for retrieving the NFT.
|
@@ -30,6 +31,43 @@ export { isTokenURISupported as isGetNFTSupported } from "../__generated__/IERC7
|
|
30
31
|
* ```
|
31
32
|
*/
|
32
33
|
export async function getNFT(options) {
|
34
|
+
const { useIndexer = true } = options;
|
35
|
+
if (useIndexer) {
|
36
|
+
try {
|
37
|
+
return await getNFTFromInsight(options);
|
38
|
+
}
|
39
|
+
catch {
|
40
|
+
return await getNFTFromRPC(options);
|
41
|
+
}
|
42
|
+
}
|
43
|
+
return await getNFTFromRPC(options);
|
44
|
+
}
|
45
|
+
async function getNFTFromInsight(options) {
|
46
|
+
const tokenId = options.tokenId;
|
47
|
+
const nft = await getNFTInsight({
|
48
|
+
client: options.contract.client,
|
49
|
+
chain: options.contract.chain,
|
50
|
+
contractAddress: options.contract.address,
|
51
|
+
tokenId: options.tokenId,
|
52
|
+
includeOwners: options.includeOwner,
|
53
|
+
});
|
54
|
+
if (!nft) {
|
55
|
+
return parseNFT({
|
56
|
+
id: tokenId,
|
57
|
+
type: "ERC721",
|
58
|
+
uri: "",
|
59
|
+
}, {
|
60
|
+
tokenId,
|
61
|
+
tokenUri: "",
|
62
|
+
type: "ERC721",
|
63
|
+
owner: null,
|
64
|
+
tokenAddress: options.contract.address,
|
65
|
+
chainId: options.contract.chain.id,
|
66
|
+
});
|
67
|
+
}
|
68
|
+
return nft;
|
69
|
+
}
|
70
|
+
async function getNFTFromRPC(options) {
|
33
71
|
let tokenId = options.tokenId;
|
34
72
|
if (options.tokenByIndex) {
|
35
73
|
try {
|
@@ -58,6 +96,8 @@ export async function getNFT(options) {
|
|
58
96
|
tokenUri: "",
|
59
97
|
type: "ERC721",
|
60
98
|
owner,
|
99
|
+
tokenAddress: options.contract.address,
|
100
|
+
chainId: options.contract.chain.id,
|
61
101
|
});
|
62
102
|
}
|
63
103
|
return parseNFT(await fetchTokenMetadata({
|
@@ -73,6 +113,8 @@ export async function getNFT(options) {
|
|
73
113
|
tokenUri: uri,
|
74
114
|
type: "ERC721",
|
75
115
|
owner,
|
116
|
+
tokenAddress: options.contract.address,
|
117
|
+
chainId: options.contract.chain.id,
|
76
118
|
});
|
77
119
|
}
|
78
120
|
//# sourceMappingURL=getNFT.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"getNFT.js","sourceRoot":"","sources":["../../../../../src/extensions/erc721/read/getNFT.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,0CAA0C,CAAC;AAC9E,OAAO,EAAY,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAEpE,OAAO,EAEL,QAAQ,GACT,MAAM,4CAA4C,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,yDAAyD,CAAC;
|
1
|
+
{"version":3,"file":"getNFT.js","sourceRoot":"","sources":["../../../../../src/extensions/erc721/read/getNFT.ts"],"names":[],"mappings":"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"}
|
@@ -1,3 +1,4 @@
|
|
1
|
+
import { getContractNFTs } from "../../../insight/index.js";
|
1
2
|
import { min } from "../../../utils/bigint.js";
|
2
3
|
import { startTokenId } from "../__generated__/IERC721A/read/startTokenId.js";
|
3
4
|
import { isTotalSupplySupported, totalSupply, } from "../__generated__/IERC721A/read/totalSupply.js";
|
@@ -21,6 +22,49 @@ const DEFAULT_QUERY_ALL_COUNT = 100n;
|
|
21
22
|
* ```
|
22
23
|
*/
|
23
24
|
export async function getNFTs(options) {
|
25
|
+
const { useIndexer = true } = options;
|
26
|
+
if (useIndexer) {
|
27
|
+
try {
|
28
|
+
return await getNFTsFromInsight(options);
|
29
|
+
}
|
30
|
+
catch {
|
31
|
+
return await getNFTsFromRPC(options);
|
32
|
+
}
|
33
|
+
}
|
34
|
+
return await getNFTsFromRPC(options);
|
35
|
+
}
|
36
|
+
/**
|
37
|
+
* Checks if the `getNFTs` method is supported by the given contract.
|
38
|
+
* @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.
|
39
|
+
* @returns A boolean indicating if the `getNFTs` method is supported.
|
40
|
+
* @extension ERC721
|
41
|
+
* @example
|
42
|
+
* ```ts
|
43
|
+
* import { isGetNFTsSupported } from "thirdweb/extensions/erc721";
|
44
|
+
*
|
45
|
+
* const supported = isGetNFTsSupported(["0x..."]);
|
46
|
+
* ```
|
47
|
+
*/
|
48
|
+
export function isGetNFTsSupported(availableSelectors) {
|
49
|
+
return (isGetNFTSupported(availableSelectors) &&
|
50
|
+
(isTotalSupplySupported(availableSelectors) ||
|
51
|
+
isNextTokenIdToMintSupported(availableSelectors)));
|
52
|
+
}
|
53
|
+
async function getNFTsFromInsight(options) {
|
54
|
+
const { contract, start, count = Number(DEFAULT_QUERY_ALL_COUNT) } = options;
|
55
|
+
const result = await getContractNFTs({
|
56
|
+
client: contract.client,
|
57
|
+
chains: [contract.chain],
|
58
|
+
contractAddress: contract.address,
|
59
|
+
includeOwners: options.includeOwners ?? false,
|
60
|
+
queryOptions: {
|
61
|
+
limit: count,
|
62
|
+
page: start ? Math.floor(start / count) : undefined,
|
63
|
+
},
|
64
|
+
});
|
65
|
+
return result;
|
66
|
+
}
|
67
|
+
async function getNFTsFromRPC(options) {
|
24
68
|
const [startTokenId_, maxSupply] = await Promise.allSettled([
|
25
69
|
startTokenId(options),
|
26
70
|
nextTokenIdToMint(options),
|
@@ -56,21 +100,4 @@ export async function getNFTs(options) {
|
|
56
100
|
}
|
57
101
|
return await Promise.all(promises);
|
58
102
|
}
|
59
|
-
/**
|
60
|
-
* Checks if the `getNFTs` method is supported by the given contract.
|
61
|
-
* @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.
|
62
|
-
* @returns A boolean indicating if the `getNFTs` method is supported.
|
63
|
-
* @extension ERC721
|
64
|
-
* @example
|
65
|
-
* ```ts
|
66
|
-
* import { isGetNFTsSupported } from "thirdweb/extensions/erc721";
|
67
|
-
*
|
68
|
-
* const supported = isGetNFTsSupported(["0x..."]);
|
69
|
-
* ```
|
70
|
-
*/
|
71
|
-
export function isGetNFTsSupported(availableSelectors) {
|
72
|
-
return (isGetNFTSupported(availableSelectors) &&
|
73
|
-
(isTotalSupplySupported(availableSelectors) ||
|
74
|
-
isNextTokenIdToMintSupported(availableSelectors)));
|
75
|
-
}
|
76
103
|
//# sourceMappingURL=getNFTs.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"getNFTs.js","sourceRoot":"","sources":["../../../../../src/extensions/erc721/read/getNFTs.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"getNFTs.js","sourceRoot":"","sources":["../../../../../src/extensions/erc721/read/getNFTs.ts"],"names":[],"mappings":"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"}
|
@@ -1,3 +1,4 @@
|
|
1
|
+
import { getOwnedNFTs as getInsightNFTs } from "../../../insight/index.js";
|
1
2
|
import { getNFT } from "./getNFT.js";
|
2
3
|
import { getOwnedTokenIds, } from "./getOwnedTokenIds.js";
|
3
4
|
/**
|
@@ -17,6 +18,18 @@ import { getOwnedTokenIds, } from "./getOwnedTokenIds.js";
|
|
17
18
|
* ```
|
18
19
|
*/
|
19
20
|
export async function getOwnedNFTs(options) {
|
21
|
+
const { useIndexer = true } = options;
|
22
|
+
if (useIndexer) {
|
23
|
+
try {
|
24
|
+
return await getOwnedNFTsFromInsight(options);
|
25
|
+
}
|
26
|
+
catch {
|
27
|
+
return await getOwnedNFTsFromRPC(options);
|
28
|
+
}
|
29
|
+
}
|
30
|
+
return await getOwnedNFTsFromRPC(options);
|
31
|
+
}
|
32
|
+
async function getOwnedNFTsFromRPC(options) {
|
20
33
|
const tokenIds = await getOwnedTokenIds(options);
|
21
34
|
return Promise.all(tokenIds.map((tokenId) => getNFT({
|
22
35
|
contract: options.contract,
|
@@ -27,4 +40,37 @@ export async function getOwnedNFTs(options) {
|
|
27
40
|
owner: options.owner,
|
28
41
|
}))));
|
29
42
|
}
|
43
|
+
async function getOwnedNFTsFromInsight(options) {
|
44
|
+
const limit = 50;
|
45
|
+
const nfts = [];
|
46
|
+
let page = 0;
|
47
|
+
let hasMore = true;
|
48
|
+
// TODO (insight): add support for contract address filters
|
49
|
+
while (hasMore) {
|
50
|
+
const pageResults = await getInsightNFTs({
|
51
|
+
client: options.contract.client,
|
52
|
+
chains: [options.contract.chain],
|
53
|
+
ownerAddress: options.owner,
|
54
|
+
queryOptions: {
|
55
|
+
limit,
|
56
|
+
page,
|
57
|
+
},
|
58
|
+
});
|
59
|
+
nfts.push(...pageResults);
|
60
|
+
// If we got fewer results than the limit, we've reached the end
|
61
|
+
if (pageResults.length < limit) {
|
62
|
+
hasMore = false;
|
63
|
+
}
|
64
|
+
else {
|
65
|
+
page++;
|
66
|
+
}
|
67
|
+
}
|
68
|
+
const results = nfts;
|
69
|
+
return results
|
70
|
+
.filter((n) => n.tokenAddress.toLowerCase() === options.contract.address.toLowerCase())
|
71
|
+
.map((result) => ({
|
72
|
+
...result,
|
73
|
+
owner: options.owner,
|
74
|
+
}));
|
75
|
+
}
|
30
76
|
//# sourceMappingURL=getOwnedNFTs.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"getOwnedNFTs.js","sourceRoot":"","sources":["../../../../../src/extensions/erc721/read/getOwnedNFTs.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"getOwnedNFTs.js","sourceRoot":"","sources":["../../../../../src/extensions/erc721/read/getOwnedNFTs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,IAAI,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAG3E,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAEL,gBAAgB,GACjB,MAAM,uBAAuB,CAAC;AAS/B;;;;;;;;;;;;;;;GAeG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,OAAmD;IAEnD,MAAM,EAAE,UAAU,GAAG,IAAI,EAAE,GAAG,OAAO,CAAC;IACtC,IAAI,UAAU,EAAE,CAAC;QACf,IAAI,CAAC;YACH,OAAO,MAAM,uBAAuB,CAAC,OAAO,CAAC,CAAC;QAChD,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,MAAM,mBAAmB,CAAC,OAAO,CAAC,CAAC;QAC5C,CAAC;IACH,CAAC;IACD,OAAO,MAAM,mBAAmB,CAAC,OAAO,CAAC,CAAC;AAC5C,CAAC;AAED,KAAK,UAAU,mBAAmB,CAChC,OAAmD;IAEnD,MAAM,QAAQ,GAAG,MAAM,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAEjD,OAAO,OAAO,CAAC,GAAG,CAChB,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CACvB,MAAM,CAAC;QACL,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,OAAO;KACR,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QAChB,GAAG,GAAG;QACN,4CAA4C;QAC5C,KAAK,EAAE,OAAO,CAAC,KAAK;KACrB,CAAC,CAAC,CACJ,CACF,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,uBAAuB,CACpC,OAAmD;IAEnD,MAAM,KAAK,GAAG,EAAE,CAAC;IACjB,MAAM,IAAI,GAAU,EAAE,CAAC;IACvB,IAAI,IAAI,GAAG,CAAC,CAAC;IACb,IAAI,OAAO,GAAG,IAAI,CAAC;IAEnB,2DAA2D;IAC3D,OAAO,OAAO,EAAE,CAAC;QACf,MAAM,WAAW,GAAG,MAAM,cAAc,CAAC;YACvC,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,MAAM;YAC/B,MAAM,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC;YAChC,YAAY,EAAE,OAAO,CAAC,KAAK;YAC3B,YAAY,EAAE;gBACZ,KAAK;gBACL,IAAI;aACL;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC,CAAC;QAE1B,gEAAgE;QAChE,IAAI,WAAW,CAAC,MAAM,GAAG,KAAK,EAAE,CAAC;YAC/B,OAAO,GAAG,KAAK,CAAC;QAClB,CAAC;aAAM,CAAC;YACN,IAAI,EAAE,CAAC;QACT,CAAC;IACH,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,CAAC;IAErB,OAAO,OAAO;SACX,MAAM,CACL,CAAC,CAAC,EAAE,EAAE,CACJ,CAAC,CAAC,YAAY,CAAC,WAAW,EAAE,KAAK,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,CAC1E;SACA,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QAChB,GAAG,MAAM;QACT,KAAK,EAAE,OAAO,CAAC,KAAK;KACrB,CAAC,CAAC,CAAC;AACR,CAAC"}
|