@0xsequence/marketplace-sdk 0.8.9 → 0.8.11
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/.changeset/fluffy-jokes-lay.md +5 -0
- package/.changeset/wise-bugs-boil.md +8 -0
- package/CHANGELOG.md +43 -0
- package/dist/{chunk-FMEEJFAF.js → chunk-5C6ZZ6WX.js} +1 -1
- package/dist/{chunk-YEGD7PWE.js → chunk-5O44EPXZ.js} +2 -2
- package/dist/chunk-6CTFVBKU.js +1 -0
- package/dist/{chunk-DWTLVJAW.js → chunk-6OPMUCGX.js} +1 -1
- package/dist/chunk-6OPMUCGX.js.map +1 -0
- package/dist/{chunk-O34GCB47.js → chunk-L6KWLCER.js} +4 -4
- package/dist/chunk-L6KWLCER.js.map +1 -0
- package/dist/{chunk-4XLXOEXQ.js → chunk-LAP2CKLN.js} +78 -4
- package/dist/chunk-LAP2CKLN.js.map +1 -0
- package/dist/{chunk-Y63BOO6M.js → chunk-LECCEZAO.js} +1 -1
- package/dist/{chunk-YALXP2PW.js → chunk-N7SQWS2R.js} +3 -3
- package/dist/{chunk-KGM2WLSP.js → chunk-OAOONM4S.js} +695 -440
- package/dist/chunk-OAOONM4S.js.map +1 -0
- package/dist/chunk-Q3ECVC4F.js +811 -0
- package/dist/chunk-Q3ECVC4F.js.map +1 -0
- package/dist/chunk-QY52UADF.js +107 -0
- package/dist/chunk-QY52UADF.js.map +1 -0
- package/dist/{chunk-I2BYHDFE.js → chunk-TNAR3XEF.js} +3898 -844
- package/dist/chunk-TNAR3XEF.js.map +1 -0
- package/dist/chunk-XABYNWXO.js +549 -0
- package/dist/chunk-XABYNWXO.js.map +1 -0
- package/dist/chunk-YB5UUF2G.js +11 -0
- package/dist/chunk-YB5UUF2G.js.map +1 -0
- package/dist/{chunk-35WWD5V6.js → chunk-YWGFI4PN.js} +88 -25
- package/dist/chunk-YWGFI4PN.js.map +1 -0
- package/dist/{create-config-DwrnzwpM.d.ts → create-config-DLMvMTkZ.d.ts} +2 -2
- package/dist/index.css +7 -7
- package/dist/index.css.map +1 -1
- package/dist/index.d.ts +8 -6
- package/dist/index.js +19 -14
- package/dist/{lowestListing-BQHIuvNF.d.ts → marketCurrencies-enNVYwBk.d.ts} +95 -3
- package/dist/{marketplace.gen-DQzWciwC.d.ts → marketplace.gen-D24veUQs.d.ts} +3 -2
- package/dist/marketplaceConfig-BwNAbLPw.d.ts +21 -0
- package/dist/new-marketplace-types-BCw19X9S.d.ts +102 -0
- package/dist/react/_internal/api/index.d.ts +4 -3
- package/dist/react/_internal/api/index.js +5 -1
- package/dist/react/_internal/databeat/index.css +2764 -0
- package/dist/react/_internal/databeat/index.css.map +1 -0
- package/dist/react/_internal/databeat/index.d.ts +1 -1
- package/dist/react/_internal/databeat/index.js +15 -14
- package/dist/react/_internal/index.d.ts +62 -9
- package/dist/react/_internal/index.js +7 -3
- package/dist/react/_internal/wagmi/index.d.ts +5 -6
- package/dist/react/_internal/wagmi/index.js +1 -1
- package/dist/react/hooks/index.css +2764 -0
- package/dist/react/hooks/index.css.map +1 -0
- package/dist/react/hooks/index.d.ts +74 -222
- package/dist/react/hooks/index.js +21 -22
- package/dist/react/hooks/options/index.d.ts +5 -4
- package/dist/react/hooks/options/index.js +9 -7
- package/dist/react/index.css +7 -7
- package/dist/react/index.css.map +1 -1
- package/dist/react/index.d.ts +12 -11
- package/dist/react/index.js +34 -37
- package/dist/react/queries/index.d.ts +4 -3
- package/dist/react/queries/index.js +19 -6
- package/dist/react/ssr/index.d.ts +3 -3
- package/dist/react/ssr/index.js +6 -5
- package/dist/react/ssr/index.js.map +1 -1
- package/dist/react/ui/components/collectible-card/index.css +7 -7
- package/dist/react/ui/components/collectible-card/index.css.map +1 -1
- package/dist/react/ui/components/collectible-card/index.d.ts +9 -6
- package/dist/react/ui/components/collectible-card/index.js +19 -23
- package/dist/react/ui/components/marketplace-logos/index.js +1 -1
- package/dist/react/ui/icons/index.js +9 -8
- package/dist/react/ui/index.css +7 -7
- package/dist/react/ui/index.css.map +1 -1
- package/dist/react/ui/index.d.ts +2 -2
- package/dist/react/ui/index.js +17 -21
- package/dist/react/ui/modals/_internal/components/actionModal/index.css +2764 -0
- package/dist/react/ui/modals/_internal/components/actionModal/index.css.map +1 -0
- package/dist/react/ui/modals/_internal/components/actionModal/index.js +15 -14
- package/dist/sdk-config-qorA0TgF.d.ts +165 -0
- package/dist/{services-BI_w8Eq4.d.ts → services-WrshxCqc.d.ts} +6 -3
- package/dist/types/index.d.ts +5 -4
- package/dist/types/index.js +7 -7
- package/dist/{index-DGsVBflk.d.ts → useCollection-YAdXfVO7.d.ts} +1 -2
- package/dist/utils/abi/index.d.ts +1 -0
- package/dist/utils/abi/index.js +7 -1
- package/dist/utils/abi/primary-sale/index.d.ts +1054 -0
- package/dist/utils/abi/primary-sale/index.js +9 -0
- package/dist/utils/index.d.ts +2 -1
- package/dist/utils/index.js +13 -6
- package/package.json +32 -32
- package/src/react/_internal/api/__mocks__/builder.msw.ts +157 -80
- package/src/react/_internal/api/builder-api.ts +2 -2
- package/src/react/_internal/api/builder.gen.ts +667 -112
- package/src/react/_internal/api/marketplace.gen.ts +1981 -1316
- package/src/react/_internal/api/services.ts +12 -1
- package/src/react/_internal/types.ts +1 -13
- package/src/react/_internal/wagmi/__tests__/create-config.test.ts +99 -84
- package/src/react/_internal/wagmi/create-config.ts +8 -4
- package/src/react/_internal/wagmi/get-connectors.ts +24 -19
- package/src/react/hooks/__tests__/__snapshots__/useListCollections.test.tsx.snap +114 -0
- package/src/react/hooks/__tests__/__snapshots__/useMarketplaceConfig.test.tsx.snap +85 -83
- package/src/react/hooks/__tests__/useFilters.test.tsx +0 -16
- package/src/react/hooks/__tests__/useInventory.test.tsx +16 -16
- package/src/react/hooks/__tests__/useListCollections.test.tsx +23 -56
- package/src/react/hooks/__tests__/{useCurrencies.test.tsx → useMarketCurrencies.test.tsx} +21 -15
- package/src/react/hooks/__tests__/useMarketplaceConfig.test.tsx +2 -59
- package/src/react/hooks/index.ts +3 -1
- package/src/react/hooks/useBalanceOfCollectible.tsx +5 -3
- package/src/react/hooks/useConvertPriceToUSD.tsx +1 -1
- package/src/react/hooks/useFilters.tsx +14 -22
- package/src/react/hooks/useGetTokenSuppliesMap.ts +28 -0
- package/src/react/hooks/useInventory.tsx +4 -3
- package/src/react/hooks/useList1155SaleSupplies.tsx +62 -0
- package/src/react/hooks/useListBalances.tsx +5 -3
- package/src/react/hooks/useListCollectibles.tsx +5 -3
- package/src/react/hooks/useListCollections.tsx +14 -76
- package/src/react/hooks/useListTokenMetadata.ts +19 -0
- package/src/react/hooks/useMarketCurrencies.tsx +8 -0
- package/src/react/hooks/useMarketplaceConfig.tsx +0 -2
- package/src/react/queries/index.ts +2 -0
- package/src/react/queries/inventory.ts +1 -1
- package/src/react/queries/listCollections.ts +118 -0
- package/src/react/queries/listTokenMetadata.ts +38 -0
- package/src/react/queries/marketCurrencies.ts +77 -0
- package/src/react/queries/marketplaceConfig.ts +83 -55
- package/src/react/ssr/__tests__/__snapshots__/create-ssr-client.test.ts.snap +85 -83
- package/src/react/ui/components/collectible-card/CollectibleCard.tsx +2 -2
- package/src/react/ui/components/collectible-card/__tests__/{CollectibleAsset.test.tsx → Media.test.tsx} +48 -14
- package/src/react/ui/components/collectible-card/index.ts +1 -1
- package/src/react/ui/components/collectible-card/media/Media.tsx +211 -0
- package/src/react/ui/components/collectible-card/{collectible-asset/CollectibleAssetSkeleton.tsx → media/MediaSkeleton.tsx} +2 -2
- package/src/react/ui/components/collectible-card/media/types.ts +18 -0
- package/src/react/ui/components/collectible-card/{collectible-asset → media}/utils.ts +8 -3
- package/src/react/ui/index.ts +1 -1
- package/src/react/ui/modals/BuyModal/ERC1155QuantityModal.tsx +9 -3
- package/src/react/ui/modals/BuyModal/hooks/__tests__/useFees.test.tsx +31 -21
- package/src/react/ui/modals/BuyModal/hooks/useFees.ts +3 -2
- package/src/react/ui/modals/BuyModal/hooks/usePaymentModalParams.ts +28 -3
- package/src/react/ui/modals/CreateListingModal/Modal.tsx +3 -5
- package/src/react/ui/modals/CreateListingModal/hooks/useCreateListing.tsx +5 -3
- package/src/react/ui/modals/CreateListingModal/hooks/useTransactionSteps.tsx +2 -2
- package/src/react/ui/modals/MakeOfferModal/Modal.tsx +2 -3
- package/src/react/ui/modals/MakeOfferModal/hooks/useMakeOffer.tsx +4 -3
- package/src/react/ui/modals/SellModal/Modal.tsx +0 -1
- package/src/react/ui/modals/SellModal/hooks/useTransactionSteps.tsx +2 -2
- package/src/react/ui/modals/TransferModal/_views/enterWalletAddress/_components/WalletAddressInput.tsx +1 -1
- package/src/react/ui/modals/TransferModal/_views/enterWalletAddress/index.tsx +0 -1
- package/src/react/ui/modals/TransferModal/index.tsx +0 -1
- package/src/react/ui/modals/_internal/components/currencyOptionsSelect/__tests__/index.test.tsx +2 -2
- package/src/react/ui/modals/_internal/components/currencyOptionsSelect/index.tsx +7 -6
- package/src/react/ui/modals/_internal/components/selectWaasFeeOptions/__tests__/SelectWaasFeeOptions.test.tsx +13 -7
- package/src/react/ui/modals/_internal/components/selectWaasFeeOptions/index.tsx +3 -5
- package/src/react/ui/modals/_internal/components/selectWaasFeeOptions/useWaasFeeOptionManager.tsx +5 -3
- package/src/react/ui/modals/_internal/components/transactionDetails/index.tsx +2 -2
- package/src/react/ui/modals/_internal/hooks/useSelectWaasFeeOptions.ts +2 -12
- package/src/types/index.ts +1 -6
- package/src/types/new-marketplace-types.ts +119 -0
- package/src/types/sdk-config.ts +19 -2
- package/src/types/types.ts +1 -0
- package/src/utils/abi/index.ts +1 -0
- package/src/utils/abi/primary-sale/index.ts +2 -0
- package/src/utils/abi/primary-sale/sequence-1155-sales-contract.ts +450 -0
- package/src/utils/abi/primary-sale/sequence-721-sales-contract.ts +352 -0
- package/src/utils/abi/token/sequence-erc1155-items.ts +454 -0
- package/src/utils/fetchContentType.ts +5 -1
- package/tsconfig.tsbuildinfo +1 -1
- package/dist/chunk-35WWD5V6.js.map +0 -1
- package/dist/chunk-4XLXOEXQ.js.map +0 -1
- package/dist/chunk-D7RVSZAQ.js +0 -332
- package/dist/chunk-D7RVSZAQ.js.map +0 -1
- package/dist/chunk-DWTLVJAW.js.map +0 -1
- package/dist/chunk-EODKQL6Y.js +0 -76
- package/dist/chunk-EODKQL6Y.js.map +0 -1
- package/dist/chunk-G3447GIP.js +0 -2880
- package/dist/chunk-G3447GIP.js.map +0 -1
- package/dist/chunk-HHYNOPPI.js +0 -53
- package/dist/chunk-HHYNOPPI.js.map +0 -1
- package/dist/chunk-I2BYHDFE.js.map +0 -1
- package/dist/chunk-JKCF7HEA.js +0 -1
- package/dist/chunk-KGM2WLSP.js.map +0 -1
- package/dist/chunk-MAD64DLJ.js +0 -81
- package/dist/chunk-MAD64DLJ.js.map +0 -1
- package/dist/chunk-N7BPFK46.js +0 -1
- package/dist/chunk-O34GCB47.js.map +0 -1
- package/dist/chunk-UISBTKFF.js +0 -1
- package/dist/chunk-UISBTKFF.js.map +0 -1
- package/dist/chunk-YBOFRP65.js +0 -128
- package/dist/chunk-YBOFRP65.js.map +0 -1
- package/dist/marketplaceConfig-B4Fdsmxu.d.ts +0 -17
- package/dist/sdk-config-txlivEKe.d.ts +0 -133
- package/dist/types-isjvwapz.d.ts +0 -68
- package/src/react/hooks/useCurrencies.tsx +0 -77
- package/src/react/ui/components/collectible-card/collectible-asset/CollectibleAsset.tsx +0 -174
- /package/dist/{chunk-FMEEJFAF.js.map → chunk-5C6ZZ6WX.js.map} +0 -0
- /package/dist/{chunk-YEGD7PWE.js.map → chunk-5O44EPXZ.js.map} +0 -0
- /package/dist/{chunk-JKCF7HEA.js.map → chunk-6CTFVBKU.js.map} +0 -0
- /package/dist/{chunk-Y63BOO6M.js.map → chunk-LECCEZAO.js.map} +0 -0
- /package/dist/{chunk-YALXP2PW.js.map → chunk-N7SQWS2R.js.map} +0 -0
- /package/dist/{chunk-N7BPFK46.js.map → utils/abi/primary-sale/index.js.map} +0 -0
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
---
|
|
2
|
+
"@0xsequence/marketplace-sdk": patch
|
|
3
|
+
---
|
|
4
|
+
Refactored marketplace config to support new market and shop structure:
|
|
5
|
+
- Added new marketplace types and interfaces
|
|
6
|
+
- Updated collection references to use itemsAddress instead of address
|
|
7
|
+
- Renamed useCurrencies to useMarketCurrencies
|
|
8
|
+
- Added support for shop collections with primary sales contract address
|
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,48 @@
|
|
|
1
1
|
# @0xsequence/marketplace-sdk
|
|
2
2
|
|
|
3
|
+
## 0.8.11
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- Handle fee options of non-sponsored testnets
|
|
8
|
+
|
|
9
|
+
- Refactored marketplace configuration to support the new dual-market structure:
|
|
10
|
+
- Marketplace config now contains Market (P2P marketplace) and the upcoming Shop (primary sales)
|
|
11
|
+
- Added new marketplace types and interfaces to support the upcoming Shop/Market structure
|
|
12
|
+
- Updated collection references to use `itemsAddress` instead of `address` for consistency
|
|
13
|
+
- Renamed `useCurrencies` to `useMarketCurrencies` to indicate that it is only used for the currency related to the market
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
## 0.8.10
|
|
17
|
+
|
|
18
|
+
### Patch Changes
|
|
19
|
+
|
|
20
|
+
#### New hooks
|
|
21
|
+
|
|
22
|
+
- useList1155SaleSupplies to batch fetch supply data for the ERC1155 sales contracts
|
|
23
|
+
- useListTokenMetadata to list token metadata for a given set of tokens
|
|
24
|
+
|
|
25
|
+
#### New ABIs
|
|
26
|
+
|
|
27
|
+
- ERC1155 sales contract (ERC1155_SALES_CONTRACT_ABI).
|
|
28
|
+
- ERC721 sales contract (ERC721_SALE_ABI).
|
|
29
|
+
- ERC1155 Items contract (SEQUENCE_1155_ITEMS_ABI).
|
|
30
|
+
|
|
31
|
+
#### Media Component
|
|
32
|
+
|
|
33
|
+
- Renamed `CollectibleAsset` to `Media`
|
|
34
|
+
- Introduced a new `supply` prop to display asset supply information.
|
|
35
|
+
- Improved error handling for scenarios where asset data might be missing or malformed.
|
|
36
|
+
|
|
37
|
+
#### Utility Functions
|
|
38
|
+
|
|
39
|
+
- Enhanced `getContentType` utility with better error handling mechanisms.
|
|
40
|
+
- Updated `fetchContentType` to gracefully handle cases where the URL might be undefined.
|
|
41
|
+
|
|
42
|
+
#### Other
|
|
43
|
+
|
|
44
|
+
- Fetching Transak configs for nftCheckout
|
|
45
|
+
|
|
3
46
|
## 0.8.9
|
|
4
47
|
|
|
5
48
|
### Patch Changes
|
|
@@ -7,7 +7,7 @@ import {
|
|
|
7
7
|
OpenSeaLogo,
|
|
8
8
|
SequenceLogo,
|
|
9
9
|
X2y2Logo
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-5C6ZZ6WX.js";
|
|
11
11
|
|
|
12
12
|
// src/utils/address.ts
|
|
13
13
|
var truncateMiddle = (address, minPrefix = 20, minSuffix = 3) => {
|
|
@@ -204,4 +204,4 @@ export {
|
|
|
204
204
|
networkToWagmiChain,
|
|
205
205
|
cn
|
|
206
206
|
};
|
|
207
|
-
//# sourceMappingURL=chunk-
|
|
207
|
+
//# sourceMappingURL=chunk-5O44EPXZ.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
//# sourceMappingURL=chunk-6CTFVBKU.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/react/_internal/get-provider.ts","../src/react/_internal/types.ts"],"sourcesContent":["export const PROVIDER_ID = 'sdk-provider';\n\nexport function getProviderEl() {\n\tif (!globalThis.document) return null;\n\treturn document.getElementById(PROVIDER_ID);\n}\n","import type { Address } from 'viem';\nimport { z } from 'zod';\nimport type { ContractType, CreateReq } from '../../types';\nimport type { MarketplaceKind } from './api';\n\nexport const QueryArgSchema = z\n\t.object({\n\t\tenabled: z.boolean().optional(),\n\t})\n\t.optional();\n\nexport type QueryArg = z.infer<typeof QueryArgSchema>;\n\nexport const CollectableIdSchema = z.string().or(z.number());\n\nexport const AddressSchema = z.string().transform((val, ctx) => {\n\tconst regex = /^0x[a-fA-F0-9]{40}$/;\n\n\tif (!regex.test(val)) {\n\t\tctx.addIssue({\n\t\t\tcode: z.ZodIssueCode.custom,\n\t\t\tmessage: `Invalid Address ${val}`,\n\t\t});\n\t}\n\n\treturn val as Address;\n});\n\nexport type CollectionType = ContractType.ERC1155 | ContractType.ERC721;\n\ntype TransactionStep = {\n\texist: boolean;\n\tisExecuting: boolean;\n\texecute: () => Promise<void>;\n};\n\nexport type TransactionSteps = {\n\tapproval: TransactionStep;\n\ttransaction: TransactionStep;\n};\n\nexport enum TransactionType {\n\tBUY = 'BUY',\n\tSELL = 'SELL',\n\tLISTING = 'LISTING',\n\tOFFER = 'OFFER',\n\tTRANSFER = 'TRANSFER',\n\tCANCEL = 'CANCEL',\n}\n\nexport interface BuyInput {\n\torderId: string;\n\tcollectableDecimals: number;\n\tmarketplace: MarketplaceKind;\n\tquantity: string;\n}\n\nexport interface SellInput {\n\torderId: string;\n\tmarketplace: MarketplaceKind;\n\tquantity?: string;\n}\n\nexport interface ListingInput {\n\tcontractType: ContractType;\n\tlisting: CreateReq;\n}\n\nexport interface OfferInput {\n\tcontractType: ContractType;\n\toffer: CreateReq;\n}\n\nexport interface CancelInput {\n\torderId: string;\n\tmarketplace: MarketplaceKind;\n}\n"],"mappings":";AAAO,IAAM,cAAc;AAEpB,SAAS,gBAAgB;AAC/B,MAAI,CAAC,WAAW,SAAU,QAAO;AACjC,SAAO,SAAS,eAAe,WAAW;AAC3C;;;ACJA,SAAS,SAAS;AAIX,IAAM,iBAAiB,EAC5B,OAAO;AAAA,EACP,SAAS,EAAE,QAAQ,EAAE,SAAS;AAC/B,CAAC,EACA,SAAS;AAIJ,IAAM,sBAAsB,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,CAAC;AAEpD,IAAM,gBAAgB,EAAE,OAAO,EAAE,UAAU,CAAC,KAAK,QAAQ;AAC/D,QAAM,QAAQ;AAEd,MAAI,CAAC,MAAM,KAAK,GAAG,GAAG;AACrB,QAAI,SAAS;AAAA,MACZ,MAAM,EAAE,aAAa;AAAA,MACrB,SAAS,mBAAmB,GAAG;AAAA,IAChC,CAAC;AAAA,EACF;AAEA,SAAO;AACR,CAAC;AAeM,IAAK,kBAAL,kBAAKA,qBAAL;AACN,EAAAA,iBAAA,SAAM;AACN,EAAAA,iBAAA,UAAO;AACP,EAAAA,iBAAA,aAAU;AACV,EAAAA,iBAAA,WAAQ;AACR,EAAAA,iBAAA,cAAW;AACX,EAAAA,iBAAA,YAAS;AANE,SAAAA;AAAA,GAAA;","names":["TransactionType"]}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import {
|
|
2
|
-
|
|
3
|
-
} from "./chunk-
|
|
2
|
+
MarketplaceService
|
|
3
|
+
} from "./chunk-XABYNWXO.js";
|
|
4
4
|
|
|
5
5
|
// src/react/_internal/api/builder-api.ts
|
|
6
|
-
var BuilderAPI = class extends
|
|
6
|
+
var BuilderAPI = class extends MarketplaceService {
|
|
7
7
|
constructor(hostname, projectAccessKey, jwtAuth) {
|
|
8
8
|
super(hostname.endsWith("/") ? hostname.slice(0, -1) : hostname, fetch);
|
|
9
9
|
this.projectAccessKey = projectAccessKey;
|
|
@@ -29,4 +29,4 @@ var BuilderAPI = class extends API {
|
|
|
29
29
|
export {
|
|
30
30
|
BuilderAPI
|
|
31
31
|
};
|
|
32
|
-
//# sourceMappingURL=chunk-
|
|
32
|
+
//# sourceMappingURL=chunk-L6KWLCER.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/react/_internal/api/builder-api.ts"],"sourcesContent":["import { MarketplaceService } from './builder.gen';\n\nexport class BuilderAPI extends MarketplaceService {\n\tconstructor(\n\t\thostname: string,\n\t\tpublic projectAccessKey?: string,\n\t\tpublic jwtAuth?: string,\n\t) {\n\t\tsuper(hostname.endsWith('/') ? hostname.slice(0, -1) : hostname, fetch);\n\t\tthis.fetch = this._fetch;\n\t}\n\n\t_fetch = (input: RequestInfo, init?: RequestInit): Promise<Response> => {\n\t\tconst headers: Record<string, string> = {};\n\n\t\tconst jwtAuth = this.jwtAuth;\n\t\tconst projectAccessKey = this.projectAccessKey;\n\n\t\tif (jwtAuth && jwtAuth.length > 0) {\n\t\t\theaders.Authorization = `BEARER ${jwtAuth}`;\n\t\t}\n\n\t\tif (projectAccessKey && projectAccessKey.length > 0) {\n\t\t\theaders['X-Access-Key'] = projectAccessKey;\n\t\t}\n\n\t\tconst requestInit = init || {};\n\t\trequestInit.headers = { ...init?.headers, ...headers };\n\n\t\treturn fetch(input, requestInit);\n\t};\n}\n"],"mappings":";;;;;AAEO,IAAM,aAAN,cAAyB,mBAAmB;AAAA,EAClD,YACC,UACO,kBACA,SACN;AACD,UAAM,SAAS,SAAS,GAAG,IAAI,SAAS,MAAM,GAAG,EAAE,IAAI,UAAU,KAAK;AAH/D;AACA;AAGP,SAAK,QAAQ,KAAK;AAAA,EACnB;AAAA,EAEA,SAAS,CAAC,OAAoB,SAA0C;AACvE,UAAM,UAAkC,CAAC;AAEzC,UAAM,UAAU,KAAK;AACrB,UAAM,mBAAmB,KAAK;AAE9B,QAAI,WAAW,QAAQ,SAAS,GAAG;AAClC,cAAQ,gBAAgB,UAAU,OAAO;AAAA,IAC1C;AAEA,QAAI,oBAAoB,iBAAiB,SAAS,GAAG;AACpD,cAAQ,cAAc,IAAI;AAAA,IAC3B;AAEA,UAAM,cAAc,QAAQ,CAAC;AAC7B,gBAAY,UAAU,EAAE,GAAG,MAAM,SAAS,GAAG,QAAQ;AAErD,WAAO,MAAM,OAAO,WAAW;AAAA,EAChC;AACD;","names":[]}
|
|
@@ -1,10 +1,19 @@
|
|
|
1
|
+
import {
|
|
2
|
+
marketplaceConfigOptions
|
|
3
|
+
} from "./chunk-QY52UADF.js";
|
|
4
|
+
import {
|
|
5
|
+
compareAddress
|
|
6
|
+
} from "./chunk-5O44EPXZ.js";
|
|
1
7
|
import {
|
|
2
8
|
LaosAPI,
|
|
3
9
|
balanceQueries,
|
|
4
10
|
collectableKeys,
|
|
11
|
+
currencyKeys,
|
|
5
12
|
getIndexerClient,
|
|
6
|
-
getMarketplaceClient
|
|
7
|
-
|
|
13
|
+
getMarketplaceClient,
|
|
14
|
+
getMetadataClient,
|
|
15
|
+
getQueryClient
|
|
16
|
+
} from "./chunk-OAOONM4S.js";
|
|
8
17
|
|
|
9
18
|
// src/react/queries/balanceOfCollectible.ts
|
|
10
19
|
import { queryOptions, skipToken } from "@tanstack/react-query";
|
|
@@ -392,9 +401,73 @@ function lowestListingOptions(args, config) {
|
|
|
392
401
|
});
|
|
393
402
|
}
|
|
394
403
|
|
|
404
|
+
// src/react/queries/listTokenMetadata.ts
|
|
405
|
+
import { queryOptions as queryOptions5 } from "@tanstack/react-query";
|
|
406
|
+
var fetchTokenMetadata = async ({ chainId, contractAddress, tokenIds }, config) => {
|
|
407
|
+
const metadataClient = getMetadataClient(config);
|
|
408
|
+
const response = await metadataClient.getTokenMetadata({
|
|
409
|
+
chainID: chainId.toString(),
|
|
410
|
+
contractAddress,
|
|
411
|
+
tokenIDs: tokenIds
|
|
412
|
+
});
|
|
413
|
+
return response.tokenMetadata;
|
|
414
|
+
};
|
|
415
|
+
var tokenMetadataOptions = (args, config) => {
|
|
416
|
+
return queryOptions5({
|
|
417
|
+
...args.query,
|
|
418
|
+
queryKey: ["listTokenMetadata", args.chainId, args.contractAddress],
|
|
419
|
+
queryFn: () => fetchTokenMetadata(args, config)
|
|
420
|
+
});
|
|
421
|
+
};
|
|
422
|
+
|
|
423
|
+
// src/react/queries/marketCurrencies.ts
|
|
424
|
+
import { queryOptions as queryOptions6 } from "@tanstack/react-query";
|
|
425
|
+
import { zeroAddress } from "viem";
|
|
426
|
+
var fetchMarketCurrencies = async (args, config) => {
|
|
427
|
+
const includeNativeCurrency = args.includeNativeCurrency ?? true;
|
|
428
|
+
const marketplaceClient = getMarketplaceClient(args.chainId, config);
|
|
429
|
+
let currencies = await marketplaceClient.listCurrencies().then(
|
|
430
|
+
(resp) => resp.currencies.map((currency) => ({
|
|
431
|
+
...currency,
|
|
432
|
+
contractAddress: currency.contractAddress || zeroAddress
|
|
433
|
+
}))
|
|
434
|
+
);
|
|
435
|
+
if (args.collectionAddress) {
|
|
436
|
+
const queryClient = getQueryClient();
|
|
437
|
+
const marketplaceConfig = await queryClient.fetchQuery(
|
|
438
|
+
marketplaceConfigOptions(config)
|
|
439
|
+
);
|
|
440
|
+
const currenciesOptions2 = marketplaceConfig.market.collections.find(
|
|
441
|
+
(collection) => compareAddress(collection.itemsAddress, args.collectionAddress)
|
|
442
|
+
)?.currencyOptions;
|
|
443
|
+
if (currenciesOptions2) {
|
|
444
|
+
currencies = currencies.filter(
|
|
445
|
+
(currency) => currenciesOptions2.includes(currency.contractAddress)
|
|
446
|
+
);
|
|
447
|
+
}
|
|
448
|
+
}
|
|
449
|
+
if (!includeNativeCurrency) {
|
|
450
|
+
currencies = currencies.filter((currency) => !currency.nativeCurrency);
|
|
451
|
+
}
|
|
452
|
+
return currencies;
|
|
453
|
+
};
|
|
454
|
+
var currenciesOptions = (args, config) => {
|
|
455
|
+
return queryOptions6({
|
|
456
|
+
...args.query,
|
|
457
|
+
queryKey: [
|
|
458
|
+
...currencyKeys.lists,
|
|
459
|
+
args.chainId,
|
|
460
|
+
args.includeNativeCurrency ?? true,
|
|
461
|
+
args.collectionAddress
|
|
462
|
+
],
|
|
463
|
+
queryFn: () => fetchMarketCurrencies(args, config)
|
|
464
|
+
});
|
|
465
|
+
};
|
|
466
|
+
|
|
395
467
|
export {
|
|
396
468
|
fetchBalanceOfCollectible,
|
|
397
469
|
balanceOfCollectibleOptions,
|
|
470
|
+
currenciesOptions,
|
|
398
471
|
getTokenSupplies,
|
|
399
472
|
getTokenSuppliesOptions,
|
|
400
473
|
fetchBalances,
|
|
@@ -406,6 +479,7 @@ export {
|
|
|
406
479
|
fetchHighestOffer,
|
|
407
480
|
highestOfferOptions,
|
|
408
481
|
fetchLowestListing,
|
|
409
|
-
lowestListingOptions
|
|
482
|
+
lowestListingOptions,
|
|
483
|
+
tokenMetadataOptions
|
|
410
484
|
};
|
|
411
|
-
//# sourceMappingURL=chunk-
|
|
485
|
+
//# sourceMappingURL=chunk-LAP2CKLN.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/react/queries/balanceOfCollectible.ts","../src/react/queries/getTokenSupplies.ts","../src/react/queries/inventory.ts","../src/react/queries/listCollectibles.ts","../src/react/queries/listBalances.ts","../src/react/queries/highestOffer.ts","../src/react/queries/lowestListing.ts","../src/react/queries/listTokenMetadata.ts","../src/react/queries/marketCurrencies.ts"],"sourcesContent":["import { queryOptions, skipToken } from '@tanstack/react-query';\nimport type { Hex } from 'viem';\nimport type { UseQueryParameters } from 'wagmi/query';\nimport type { SdkConfig } from '../../types';\nimport { LaosAPI, collectableKeys, getIndexerClient } from '../_internal';\n\nexport type UseBalanceOfCollectibleArgs = {\n\tcollectionAddress: Hex;\n\tcollectableId: string;\n\tuserAddress: Hex | undefined;\n\tchainId: number;\n\tisLaos721?: boolean;\n\tquery?: UseQueryParameters;\n};\n\n/**\n * Fetches the balance of a specific collectible for a user\n *\n * @param args - Arguments for the API call\n * @param config - SDK configuration\n * @returns The balance data\n */\nexport async function fetchBalanceOfCollectible(\n\targs: Omit<UseBalanceOfCollectibleArgs, 'userAddress'> & { userAddress: Hex },\n\tconfig: SdkConfig,\n) {\n\tif (args.isLaos721) {\n\t\tconst laosApi = new LaosAPI();\n\t\tconst response = await laosApi.getTokenBalances({\n\t\t\tchainId: args.chainId.toString(),\n\t\t\taccountAddress: args.userAddress,\n\t\t\tincludeMetadata: true,\n\t\t});\n\n\t\treturn response.balances[0] || null;\n\t}\n\n\tconst indexerClient = getIndexerClient(args.chainId, config);\n\treturn indexerClient\n\t\t.getTokenBalances({\n\t\t\taccountAddress: args.userAddress,\n\t\t\tcontractAddress: args.collectionAddress,\n\t\t\ttokenID: args.collectableId,\n\t\t\tincludeMetadata: false,\n\t\t\tmetadataOptions: {\n\t\t\t\tverifiedOnly: true,\n\t\t\t\tincludeContracts: [args.collectionAddress],\n\t\t\t},\n\t\t})\n\t\t.then((res) => res.balances[0] || null);\n}\n\n/**\n * Creates a tanstack query options object for the balance query\n *\n * @param args - The query arguments\n * @param config - SDK configuration\n * @returns Query options configuration\n */\nexport function balanceOfCollectibleOptions(\n\targs: UseBalanceOfCollectibleArgs,\n\tconfig: SdkConfig,\n) {\n\tconst enabled = !!args.userAddress && (args.query?.enabled ?? true);\n\treturn queryOptions({\n\t\tqueryKey: [...collectableKeys.userBalances, args],\n\t\tqueryFn: enabled\n\t\t\t? () =>\n\t\t\t\t\tfetchBalanceOfCollectible(\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t...args,\n\t\t\t\t\t\t\t// biome-ignore lint/style/noNonNullAssertion: this is guaranteed by the userAddress check above\n\t\t\t\t\t\t\tuserAddress: args.userAddress!,\n\t\t\t\t\t\t},\n\t\t\t\t\t\tconfig,\n\t\t\t\t\t)\n\t\t\t: skipToken,\n\t});\n}\n","import { queryOptions } from '@tanstack/react-query';\nimport type { SdkConfig } from '../../types';\n//TODO: This is not complete, there is no hook for this,\n// add it if we need it in the future\nimport { LaosAPI, getIndexerClient } from '../_internal';\n\nexport type UseGetTokenSuppliesArgs = {\n\tchainId: number;\n\tcontractAddress: string;\n\ttokenId: string;\n\tisLaos721?: boolean;\n};\n\nexport async function getTokenSupplies(\n\targs: UseGetTokenSuppliesArgs,\n\tconfig: SdkConfig,\n) {\n\tif (args.isLaos721) {\n\t\tconst laosApi = new LaosAPI();\n\t\treturn laosApi.getTokenSupplies({\n\t\t\tchainId: args.chainId.toString(),\n\t\t\tcontractAddress: args.contractAddress,\n\t\t});\n\t}\n\n\tconst indexerClient = getIndexerClient(args.chainId, config);\n\treturn await indexerClient.getTokenSupplies(args);\n}\n\nexport function getTokenSuppliesOptions(\n\targs: UseGetTokenSuppliesArgs,\n\tconfig: SdkConfig,\n) {\n\treturn queryOptions({\n\t\tqueryKey: ['getTokenSupplies', args],\n\t\tqueryFn: () => getTokenSupplies(args, config),\n\t});\n}\n","import type {\n\tContractInfo,\n\tPage as IndexerPage,\n\tTokenBalance,\n} from '@0xsequence/indexer';\nimport { infiniteQueryOptions } from '@tanstack/react-query';\nimport type { Address } from 'viem';\nimport { OrderSide, type Page, type SdkConfig } from '../../types';\nimport {\n\ttype CollectibleOrder,\n\ttype ContractType,\n\tgetIndexerClient,\n} from '../_internal';\nimport { fetchCollectibles } from './listCollectibles';\n\nexport interface UseInventoryArgs {\n\taccountAddress: Address;\n\tcollectionAddress: Address;\n\tchainId: number;\n\tisLaos721?: boolean;\n\tquery?: {\n\t\tenabled?: boolean;\n\t};\n}\n\n// Maintain collection state across calls\ninterface InventoryState {\n\tseenTokenIds: Set<string>;\n\tmarketplaceFinished: boolean;\n\t// Track if we've already fetched all indexer tokens\n\tindexerTokensFetched: boolean;\n\t// Store the token balances from the indexer\n\tindexerTokenBalances: Map<string, CollectibleWithBalance>;\n}\n\n// Store state per collection\nconst stateByCollection = new Map<string, InventoryState>();\n\nconst getCollectionKey = (args: UseInventoryArgs) =>\n\t`${args.chainId}-${args.collectionAddress}-${args.accountAddress}`;\n\ninterface GetInventoryArgs extends Omit<UseInventoryArgs, 'query'> {\n\tisLaos721: boolean;\n}\n\ninterface CollectibleWithBalance extends CollectibleOrder {\n\tbalance: string;\n\tcontractInfo?: ContractInfo;\n\tcontractType: ContractType.ERC1155 | ContractType.ERC721;\n}\n\nexport interface CollectiblesResponse {\n\tcollectibles: CollectibleWithBalance[];\n\tpage: Page;\n}\n\nfunction getOrInitState(collectionKey: string): InventoryState {\n\tif (!stateByCollection.has(collectionKey)) {\n\t\tstateByCollection.set(collectionKey, {\n\t\t\tseenTokenIds: new Set<string>(),\n\t\t\tmarketplaceFinished: false,\n\t\t\tindexerTokensFetched: false,\n\t\t\tindexerTokenBalances: new Map(),\n\t\t});\n\t}\n\n\t// biome-ignore lint/style/noNonNullAssertion: guaranteed to exist, by the above init\n\treturn stateByCollection.get(collectionKey)!;\n}\n\nfunction collectibleFromTokenBalance(\n\ttoken: TokenBalance,\n): CollectibleWithBalance {\n\treturn {\n\t\tmetadata: {\n\t\t\ttokenId: token.tokenID ?? '',\n\t\t\tattributes: token.tokenMetadata?.attributes ?? [],\n\t\t\timage: token.tokenMetadata?.image,\n\t\t\tname: token.tokenMetadata?.name ?? '',\n\t\t\tdescription: token.tokenMetadata?.description,\n\t\t\tvideo: token.tokenMetadata?.video,\n\t\t\taudio: token.tokenMetadata?.audio,\n\t\t},\n\t\tcontractInfo: token.contractInfo,\n\t\tcontractType: token.contractType as unknown as\n\t\t\t| ContractType.ERC1155\n\t\t\t| ContractType.ERC721,\n\t\tbalance: token.balance,\n\t};\n}\n\nasync function fetchAllIndexerTokens(\n\tchainId: number,\n\taccountAddress: Address,\n\tcollectionAddress: Address,\n\tconfig: SdkConfig,\n\tstate: InventoryState,\n): Promise<void> {\n\tconst indexerClient = getIndexerClient(chainId, config);\n\n\tlet page: IndexerPage = {\n\t\tpageSize: 50,\n\t};\n\n\twhile (true) {\n\t\tconst { balances, page: nextPage } = await indexerClient.getTokenBalances({\n\t\t\taccountAddress,\n\t\t\tcontractAddress: collectionAddress,\n\t\t\tincludeMetadata: true,\n\t\t\tpage: page,\n\t\t});\n\n\t\tfor (const balance of balances) {\n\t\t\tif (balance.tokenID) {\n\t\t\t\tstate.indexerTokenBalances.set(\n\t\t\t\t\tbalance.tokenID,\n\t\t\t\t\tcollectibleFromTokenBalance(balance),\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\n\t\tif (!nextPage.more) {\n\t\t\tbreak;\n\t\t}\n\t\tpage = nextPage;\n\t}\n\n\tstate.indexerTokensFetched = true;\n}\n\n// Process indexer tokens that we haven't seen yet\nfunction processRemainingIndexerTokens(\n\tstate: InventoryState,\n\tpage: Page,\n): CollectiblesResponse {\n\tconst allTokens = Array.from(state.indexerTokenBalances.values());\n\n\t// Filter out tokens that we've already seen\n\tconst newTokens = allTokens.filter(\n\t\t(token) => !state.seenTokenIds.has(token.metadata.tokenId),\n\t);\n\n\t// Calculate pagination\n\tconst startIndex = (page.page - 1) * page.pageSize;\n\tconst endIndex = startIndex + page.pageSize;\n\tconst paginatedTokens = newTokens.slice(startIndex, endIndex);\n\n\t// Add new token IDs to the set\n\tfor (const token of paginatedTokens) {\n\t\tstate.seenTokenIds.add(token.metadata.tokenId);\n\t}\n\n\treturn {\n\t\tcollectibles: paginatedTokens,\n\t\tpage: {\n\t\t\tpage: page.page,\n\t\t\tpageSize: page.pageSize,\n\t\t\tmore: endIndex < newTokens.length,\n\t\t},\n\t};\n}\n\nfunction processMarketplaceCollectibles(\n\tcollectibles: CollectibleOrder[],\n\tstate: InventoryState,\n\tpage: Page,\n): {\n\tenrichedCollectibles: CollectibleWithBalance[];\n\tmissingTokens: CollectibleWithBalance[];\n} {\n\t// Add new token IDs to the set\n\tfor (const c of collectibles) {\n\t\tstate.seenTokenIds.add(c.metadata.tokenId);\n\t}\n\n\t// Enrich marketplace collectibles with balance data from indexer\n\tconst enrichedCollectibles = collectibles.map((c: CollectibleOrder) => {\n\t\tconst tokenId = c.metadata.tokenId;\n\t\tconst indexerData = state.indexerTokenBalances.get(tokenId);\n\n\t\treturn {\n\t\t\t...c,\n\t\t\tbalance: indexerData?.balance,\n\t\t\tcontractInfo: indexerData?.contractInfo,\n\t\t\tcontractType: indexerData?.contractType,\n\t\t} as CollectibleWithBalance;\n\t});\n\n\t// Check for missing tokens in the marketplace data\n\tconst marketplaceTokenIds = new Set(\n\t\tenrichedCollectibles.map((c) => c.metadata.tokenId),\n\t);\n\n\tconst missingTokens = Array.from(state.indexerTokenBalances.entries())\n\t\t.filter(([tokenId]) => !marketplaceTokenIds.has(tokenId))\n\t\t.map(([_, balance]) => balance)\n\t\t.slice(0, page.pageSize);\n\n\treturn { enrichedCollectibles, missingTokens };\n}\n\nexport async function fetchInventory(\n\targs: GetInventoryArgs,\n\tconfig: SdkConfig,\n\tpage: Page,\n): Promise<CollectiblesResponse> {\n\tconst { accountAddress, collectionAddress, chainId, isLaos721 } = args;\n\tconst collectionKey = getCollectionKey(args);\n\tconst state = getOrInitState(collectionKey);\n\n\t// On first run, fetch all pages from the indexer\n\tif (!state.indexerTokensFetched) {\n\t\tawait fetchAllIndexerTokens(\n\t\t\tchainId,\n\t\t\taccountAddress,\n\t\t\tcollectionAddress,\n\t\t\tconfig,\n\t\t\tstate,\n\t\t);\n\t}\n\n\t// If marketplace API has no more results, use the indexer data\n\tif (state.marketplaceFinished) {\n\t\treturn processRemainingIndexerTokens(state, page);\n\t}\n\n\t// Fetch collectibles from marketplace API\n\tconst collectibles = await fetchCollectibles(\n\t\t{\n\t\t\tchainId,\n\t\t\tcollectionAddress,\n\t\t\tfilter: {\n\t\t\t\tinAccounts: [accountAddress],\n\t\t\t\tincludeEmpty: true,\n\t\t\t},\n\t\t\tside: OrderSide.listing,\n\t\t\tisLaos721,\n\t\t},\n\t\tconfig,\n\t\tpage,\n\t);\n\n\t// Process the collectibles and find missing tokens\n\tconst { enrichedCollectibles, missingTokens } =\n\t\tprocessMarketplaceCollectibles(collectibles.collectibles, state, page);\n\n\t// If there are no more results from the marketplace API\n\tif (!collectibles.page?.more) {\n\t\t// Mark marketplace as finished and start using indexer data on next call\n\t\tstate.marketplaceFinished = true;\n\t\treturn {\n\t\t\tcollectibles: [...enrichedCollectibles, ...missingTokens],\n\t\t\tpage: {\n\t\t\t\tpage: collectibles.page?.page ?? page.page,\n\t\t\t\tpageSize: collectibles.page?.pageSize ?? page.pageSize,\n\t\t\t\tmore: missingTokens.length > 0,\n\t\t\t},\n\t\t};\n\t}\n\n\treturn {\n\t\tcollectibles: enrichedCollectibles,\n\t\tpage: {\n\t\t\tpage: collectibles.page?.page ?? page.page,\n\t\t\tpageSize: collectibles.page?.pageSize ?? page.pageSize,\n\t\t\tmore: Boolean(collectibles.page?.more),\n\t\t},\n\t};\n}\n\nexport function inventoryOptions(args: UseInventoryArgs, config: SdkConfig) {\n\tconst collectionKey = getCollectionKey(args);\n\tconst enabledQuery = args.query?.enabled ?? true;\n\tconst enabled =\n\t\tenabledQuery && !!args.accountAddress && !!args.collectionAddress;\n\n\treturn infiniteQueryOptions({\n\t\tqueryKey: [\n\t\t\t'inventory',\n\t\t\targs.accountAddress,\n\t\t\targs.collectionAddress,\n\t\t\targs.chainId,\n\t\t],\n\t\tqueryFn: ({ pageParam }) =>\n\t\t\tfetchInventory(\n\t\t\t\t{\n\t\t\t\t\t...args,\n\t\t\t\t\tisLaos721: args.isLaos721 ?? false,\n\t\t\t\t},\n\t\t\t\tconfig,\n\t\t\t\tpageParam,\n\t\t\t),\n\t\tinitialPageParam: { page: 1, pageSize: 30 } as Page,\n\t\tgetNextPageParam: (lastPage) =>\n\t\t\tlastPage.page?.more ? lastPage.page : undefined,\n\t\tenabled,\n\t\tmeta: {\n\t\t\tonInvalidate: () => {\n\t\t\t\tstateByCollection.delete(collectionKey);\n\t\t\t},\n\t\t},\n\t});\n}\n","import { infiniteQueryOptions } from '@tanstack/react-query';\nimport type { Address, Hex } from 'viem';\nimport type { Page, SdkConfig } from '../../types';\nimport type {\n\tCollectibleOrder,\n\tCollectiblesFilter,\n\tListCollectiblesArgs,\n\tListCollectiblesReturn,\n} from '../_internal';\nimport { OrderSide, collectableKeys, getMarketplaceClient } from '../_internal';\nimport { type UseListBalancesArgs, fetchBalances } from './listBalances';\nexport type UseListCollectiblesArgs = {\n\tcollectionAddress: Hex;\n\tchainId: number;\n\tside: OrderSide;\n\tfilter?: CollectiblesFilter;\n\tisLaos721?: boolean;\n\tquery?: {\n\t\tenabled?: boolean;\n\t};\n};\n\n/**\n * Fetches a list of collectibles with pagination support\n *\n * @param args - Arguments for the API call\n * @param config - SDK configuration\n * @param page - Page parameters for pagination\n * @returns The collectibles data\n */\nexport async function fetchCollectibles(\n\targs: UseListCollectiblesArgs,\n\tconfig: SdkConfig,\n\tpage: Page,\n): Promise<ListCollectiblesReturn> {\n\tconst marketplaceClient = getMarketplaceClient(args.chainId, config);\n\tconst parsedArgs = {\n\t\t...args,\n\t\tcontractAddress: args.collectionAddress,\n\t\tpage: page,\n\t\tside: args.side,\n\t} satisfies ListCollectiblesArgs;\n\n\tif (args.isLaos721 && args.side === OrderSide.listing) {\n\t\ttry {\n\t\t\tconst fetchBalancesArgs = {\n\t\t\t\tchainId: args.chainId,\n\t\t\t\taccountAddress: args.filter?.inAccounts?.[0] as Address,\n\t\t\t\tcontractAddress: args.collectionAddress,\n\t\t\t\tpage: page,\n\t\t\t\tincludeMetadata: true,\n\t\t\t\tisLaos721: true,\n\t\t\t} satisfies UseListBalancesArgs;\n\n\t\t\tconst balances = await fetchBalances(fetchBalancesArgs, config, page);\n\t\t\tconst collectibles: CollectibleOrder[] = balances.balances.map(\n\t\t\t\t(balance) => {\n\t\t\t\t\tif (!balance.tokenMetadata)\n\t\t\t\t\t\tthrow new Error('Token metadata not found');\n\t\t\t\t\treturn {\n\t\t\t\t\t\tmetadata: {\n\t\t\t\t\t\t\ttokenId: balance.tokenID ?? '',\n\t\t\t\t\t\t\tattributes: balance.tokenMetadata.attributes,\n\t\t\t\t\t\t\timage: balance.tokenMetadata.image,\n\t\t\t\t\t\t\tname: balance.tokenMetadata.name,\n\t\t\t\t\t\t\tdescription: balance.tokenMetadata.description,\n\t\t\t\t\t\t\tvideo: balance.tokenMetadata.video,\n\t\t\t\t\t\t\taudio: balance.tokenMetadata.audio,\n\t\t\t\t\t\t},\n\t\t\t\t\t};\n\t\t\t\t},\n\t\t\t);\n\t\t\treturn {\n\t\t\t\tcollectibles: collectibles,\n\t\t\t\t//@ts-expect-error\n\t\t\t\tpage: balances.page,\n\t\t\t};\n\t\t} catch (error) {\n\t\t\t// If the request fails, ignore the error and return the collectibles from our indexer\n\t\t\tconsole.error(error);\n\t\t}\n\t}\n\treturn await marketplaceClient.listCollectibles(parsedArgs);\n}\n\n/**\n * Creates a tanstack infinite query options object for the collectibles query\n *\n * @param args - The query arguments\n * @param config - SDK configuration\n * @returns Query options configuration\n */\nexport function listCollectiblesOptions(\n\targs: UseListCollectiblesArgs,\n\tconfig: SdkConfig,\n) {\n\treturn infiniteQueryOptions({\n\t\t...args.query,\n\t\tqueryKey: [...collectableKeys.lists, args, config],\n\t\tqueryFn: ({ pageParam }) => fetchCollectibles(args, config, pageParam),\n\t\tinitialPageParam: { page: 1, pageSize: 30 } as Page,\n\t\tgetNextPageParam: (lastPage) =>\n\t\t\tlastPage.page?.more ? lastPage.page : undefined,\n\t});\n}\n","import type { GetTokenBalancesReturn, Page } from '@0xsequence/indexer';\nimport { infiniteQueryOptions } from '@tanstack/react-query';\nimport type { Hex } from 'viem';\nimport type { SdkConfig } from '../../types';\nimport { balanceQueries, getIndexerClient } from '../_internal';\n\nexport type UseListBalancesArgs = {\n\tchainId: number;\n\taccountAddress?: Hex;\n\tcontractAddress?: Hex;\n\ttokenId?: string;\n\tincludeMetadata?: boolean;\n\tmetadataOptions?: {\n\t\tverifiedOnly?: boolean;\n\t\tunverifiedOnly?: boolean;\n\t\tincludeContracts?: Hex[];\n\t};\n\tincludeCollectionTokens?: boolean;\n\tpage?: Page;\n\tisLaos721?: boolean;\n\t//TODO: More options\n\tquery?: {\n\t\tenabled?: boolean;\n\t};\n};\n\nexport async function fetchBalances(\n\targs: UseListBalancesArgs,\n\tconfig: SdkConfig,\n\tpage: Page,\n): Promise<GetTokenBalancesReturn> {\n\tif (args.isLaos721) {\n\t\tconst response = await fetch(\n\t\t\t'https://extensions.api.laosnetwork.io/token/GetTokenBalances',\n\t\t\t{\n\t\t\t\tmethod: 'POST',\n\t\t\t\theaders: {\n\t\t\t\t\t'Content-Type': 'application/json',\n\t\t\t\t},\n\t\t\t\tbody: JSON.stringify({\n\t\t\t\t\tchainId: args.chainId.toString(),\n\t\t\t\t\taccountAddress: args.accountAddress,\n\t\t\t\t\tcontractAddress: args.contractAddress,\n\t\t\t\t\tincludeMetadata: args.includeMetadata ?? true,\n\t\t\t\t\tpage: {\n\t\t\t\t\t\tsort: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tcolumn: 'CREATED_AT',\n\t\t\t\t\t\t\t\torder: 'DESC',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t],\n\t\t\t\t\t},\n\t\t\t\t}),\n\t\t\t},\n\t\t);\n\n\t\tif (!response.ok) {\n\t\t\tthrow new Error(`Laos API request failed with status ${response.status}`);\n\t\t}\n\n\t\t// TODO: This is pretty unsafe, we should validate the response\n\t\treturn response.json() as Promise<GetTokenBalancesReturn>;\n\t}\n\n\tconst indexerClient = getIndexerClient(args.chainId, config);\n\treturn indexerClient.getTokenBalances({\n\t\t...args,\n\t\ttokenID: args.tokenId,\n\t\tpage: page,\n\t});\n}\n\n/**\n * Creates a tanstack infinite query options object for the balances query\n *\n * @param args - The query arguments\n * @param config - SDK configuration\n * @returns Query options configuration\n */\nexport function listBalancesOptions(\n\targs: UseListBalancesArgs,\n\tconfig: SdkConfig,\n) {\n\treturn infiniteQueryOptions({\n\t\t...args.query,\n\t\tqueryKey: [...balanceQueries.lists, args, config],\n\t\tqueryFn: ({ pageParam }) => fetchBalances(args, config, pageParam),\n\t\tinitialPageParam: { page: 1, pageSize: 30 } as Page,\n\t\tgetNextPageParam: (lastPage) => lastPage.page.after,\n\t});\n}\n","import { queryOptions } from '@tanstack/react-query';\nimport type { Address } from 'viem';\nimport type { SdkConfig } from '../../types';\nimport {\n\ttype GetCollectibleHighestOfferArgs,\n\tcollectableKeys,\n\tgetMarketplaceClient,\n} from '../_internal';\n\nexport interface UseHighestOfferArgs\n\textends Omit<GetCollectibleHighestOfferArgs, 'contractAddress'> {\n\tcollectionAddress: Address;\n\tchainId: number;\n\tquery?: {\n\t\tenabled?: boolean;\n\t};\n}\n\nexport async function fetchHighestOffer(\n\targs: UseHighestOfferArgs,\n\tconfig: SdkConfig,\n) {\n\tconst marketplaceClient = getMarketplaceClient(args.chainId, config);\n\n\tconst data = await marketplaceClient.getCollectibleHighestOffer({\n\t\tcontractAddress: args.collectionAddress,\n\t\t...args,\n\t});\n\n\t// let order: Order | undefined;\n\t// if (data.order) {\n\t// \torder = {\n\t// \t\t...data.order,\n\t// \t\tpriceAmount: BigInt(data.order.priceAmount),\n\t// \t\tpriceAmountNet: BigInt(data.order.priceAmountNet),\n\t// \t};\n\t// }\n\n\treturn data.order ?? null;\n}\n\n/**\n * Creates a tanstack query options object for the highest offer query\n *\n * @param args - The query arguments\n * @param config - SDK configuration\n * @returns Query options configuration\n */\nexport function highestOfferOptions(\n\targs: UseHighestOfferArgs,\n\tconfig: SdkConfig,\n) {\n\treturn queryOptions({\n\t\tenabled: args.query?.enabled ?? true,\n\t\tqueryKey: [...collectableKeys.highestOffers, args],\n\t\tqueryFn: () => fetchHighestOffer(args, config),\n\t});\n}\n","import { queryOptions } from '@tanstack/react-query';\nimport type { Address } from 'viem';\nimport type { SdkConfig } from '../../types';\nimport {\n\ttype GetCollectibleLowestListingArgs,\n\ttype GetCollectibleLowestListingReturn,\n\tcollectableKeys,\n\tgetMarketplaceClient,\n} from '../_internal';\n\nexport interface UseLowestListingArgs\n\textends Omit<GetCollectibleLowestListingArgs, 'contractAddress'> {\n\tcollectionAddress: Address;\n\tchainId: number;\n\tquery?: {\n\t\tenabled?: boolean;\n\t};\n}\n\nexport async function fetchLowestListing(\n\targs: UseLowestListingArgs,\n\tconfig: SdkConfig,\n): Promise<GetCollectibleLowestListingReturn['order'] | null> {\n\tconst marketplaceClient = getMarketplaceClient(args.chainId, config);\n\n\tconst data = await marketplaceClient.getCollectibleLowestListing({\n\t\tcontractAddress: args.collectionAddress,\n\t\t...args,\n\t});\n\n\t// let order: Order | undefined;\n\t// if (data.order) {\n\t// \torder = {\n\t// \t\t...data.order,\n\t// \t\tpriceAmount: BigInt(data.order.priceAmount),\n\t// \t\tpriceAmountNet: BigInt(data.order.priceAmountNet),\n\t// \t};\n\t// }\n\n\treturn data.order || null;\n}\n\nexport function lowestListingOptions(\n\targs: UseLowestListingArgs,\n\tconfig: SdkConfig,\n) {\n\treturn queryOptions({\n\t\tenabled: args.query?.enabled ?? true,\n\t\tqueryKey: [...collectableKeys.lowestListings, args],\n\t\tqueryFn: () => fetchLowestListing(args, config),\n\t});\n}\n","import { queryOptions } from '@tanstack/react-query';\nimport type { SdkConfig } from '../../types';\nimport { getMetadataClient } from '../_internal';\n\nexport interface FetchTokenMetadataArgs {\n\tchainId: number;\n\tcontractAddress: string;\n\ttokenIds: string[];\n\tquery?: {\n\t\tenabled?: boolean;\n\t};\n}\n\nconst fetchTokenMetadata = async (\n\t{ chainId, contractAddress, tokenIds }: FetchTokenMetadataArgs,\n\tconfig: SdkConfig,\n) => {\n\tconst metadataClient = getMetadataClient(config);\n\n\tconst response = await metadataClient.getTokenMetadata({\n\t\tchainID: chainId.toString(),\n\t\tcontractAddress: contractAddress,\n\t\ttokenIDs: tokenIds,\n\t});\n\n\treturn response.tokenMetadata;\n};\n\nexport const tokenMetadataOptions = (\n\targs: FetchTokenMetadataArgs,\n\tconfig: SdkConfig,\n) => {\n\treturn queryOptions({\n\t\t...args.query,\n\t\tqueryKey: ['listTokenMetadata', args.chainId, args.contractAddress],\n\t\tqueryFn: () => fetchTokenMetadata(args, config),\n\t});\n};\n","import { queryOptions } from '@tanstack/react-query';\nimport { type Address, zeroAddress } from 'viem';\nimport type { SdkConfig } from '../../types';\nimport { compareAddress } from '../../utils';\nimport {\n\tcurrencyKeys,\n\tgetMarketplaceClient,\n\tgetQueryClient,\n} from '../_internal';\nimport { marketplaceConfigOptions } from './marketplaceConfig';\n\ntype QueryArg = {\n\tenabled?: boolean;\n};\n\nexport interface UseMarketCurrenciesArgs {\n\tchainId: number;\n\tincludeNativeCurrency?: boolean;\n\tcollectionAddress?: Address;\n\tquery?: QueryArg;\n}\n\nconst fetchMarketCurrencies = async (\n\targs: UseMarketCurrenciesArgs,\n\tconfig: SdkConfig,\n) => {\n\tconst includeNativeCurrency = args.includeNativeCurrency ?? true;\n\tconst marketplaceClient = getMarketplaceClient(args.chainId, config);\n\n\tlet currencies = await marketplaceClient.listCurrencies().then((resp) =>\n\t\tresp.currencies.map((currency) => ({\n\t\t\t...currency,\n\t\t\tcontractAddress: currency.contractAddress || zeroAddress,\n\t\t})),\n\t);\n\n\tif (args.collectionAddress) {\n\t\tconst queryClient = getQueryClient();\n\t\tconst marketplaceConfig = await queryClient.fetchQuery(\n\t\t\tmarketplaceConfigOptions(config),\n\t\t);\n\n\t\tconst currenciesOptions = marketplaceConfig.market.collections.find(\n\t\t\t(collection) =>\n\t\t\t\tcompareAddress(collection.itemsAddress, args.collectionAddress),\n\t\t)?.currencyOptions;\n\n\t\t// Filter currencies based on collection currency options\n\t\tif (currenciesOptions) {\n\t\t\tcurrencies = currencies.filter((currency) =>\n\t\t\t\tcurrenciesOptions.includes(currency.contractAddress),\n\t\t\t);\n\t\t}\n\t}\n\n\tif (!includeNativeCurrency) {\n\t\tcurrencies = currencies.filter((currency) => !currency.nativeCurrency);\n\t}\n\n\treturn currencies;\n};\n\nexport const currenciesOptions = (\n\targs: UseMarketCurrenciesArgs,\n\tconfig: SdkConfig,\n) => {\n\treturn queryOptions({\n\t\t...args.query,\n\t\tqueryKey: [\n\t\t\t...currencyKeys.lists,\n\t\t\targs.chainId,\n\t\t\targs.includeNativeCurrency ?? true,\n\t\t\targs.collectionAddress,\n\t\t],\n\t\tqueryFn: () => fetchMarketCurrencies(args, config),\n\t});\n};\n"],"mappings":"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","names":["queryOptions","queryOptions","infiniteQueryOptions","infiniteQueryOptions","infiniteQueryOptions","infiniteQueryOptions","queryOptions","queryOptions","queryOptions","queryOptions","queryOptions","queryOptions","queryOptions","currenciesOptions","queryOptions"]}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import {
|
|
2
2
|
AddressSchema,
|
|
3
3
|
QueryArgSchema
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-6OPMUCGX.js";
|
|
5
5
|
import {
|
|
6
6
|
collectionKeys,
|
|
7
7
|
getMetadataClient
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-OAOONM4S.js";
|
|
9
9
|
|
|
10
10
|
// src/react/hooks/options/collectionOptions.ts
|
|
11
11
|
import { queryOptions } from "@tanstack/react-query";
|
|
@@ -35,4 +35,4 @@ export {
|
|
|
35
35
|
fetchCollection,
|
|
36
36
|
collectionOptions
|
|
37
37
|
};
|
|
38
|
-
//# sourceMappingURL=chunk-
|
|
38
|
+
//# sourceMappingURL=chunk-N7SQWS2R.js.map
|