@0xsequence/marketplace-sdk 1.1.0 → 1.2.0
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/CHANGELOG.md +58 -5
- package/dist/{BellIcon-IpHHEy8h.js → BellIcon-DMKEumAz.js} +2 -2
- package/dist/BellIcon-DMKEumAz.js.map +1 -0
- package/dist/{CartIcon-C8zbor8H.js → CartIcon-UyB4NYKt.js} +3 -3
- package/dist/CartIcon-UyB4NYKt.js.map +1 -0
- package/dist/CollectibleCard-z05qWzKE.d.ts +8 -0
- package/dist/_internal-DkS2VUn5.js.map +1 -1
- package/dist/abi-fa-o9gH3.js +134 -0
- package/dist/abi-fa-o9gH3.js.map +1 -0
- package/dist/{alien_swap-BTJ7mSR-.js → alien_swap-Cq8LuElo.js} +1 -1
- package/dist/{alien_swap-BTJ7mSR-.js.map → alien_swap-Cq8LuElo.js.map} +1 -1
- package/dist/{api-DuLKn__v.js → api-GwTR0dBA.js} +13 -49
- package/dist/api-GwTR0dBA.js.map +1 -0
- package/dist/{aqua-xyz-BYJ9WSP_.js → aqua-xyz-0yye_c-Z.js} +1 -1
- package/dist/{aqua-xyz-BYJ9WSP_.js.map → aqua-xyz-0yye_c-Z.js.map} +1 -1
- package/dist/{aura-D7SUjgro.js → aura-TaxFvTFQ.js} +1 -1
- package/dist/{aura-D7SUjgro.js.map → aura-TaxFvTFQ.js.map} +1 -1
- package/dist/{blur-BcnRFCaV.js → blur-BupOTobO.js} +1 -1
- package/dist/{blur-BcnRFCaV.js.map → blur-BupOTobO.js.map} +1 -1
- package/dist/{builder-api-BFuZNOaN.js → builder-api-m4JAA6ee.js} +3 -3
- package/dist/builder-api-m4JAA6ee.js.map +1 -0
- package/dist/{builder.gen-B9wR2nvF.js → builder.gen--XD71cNL.js} +2 -2
- package/dist/builder.gen--XD71cNL.js.map +1 -0
- package/dist/{coinbase-ChoX9Hw2.js → coinbase-DTgZ4wDT.js} +1 -1
- package/dist/{coinbase-ChoX9Hw2.js.map → coinbase-DTgZ4wDT.js.map} +1 -1
- package/dist/collectibles-CZ6i8sXK.js +324 -0
- package/dist/collectibles-CZ6i8sXK.js.map +1 -0
- package/dist/collections-5NcU-7ZR.js +331 -0
- package/dist/collections-5NcU-7ZR.js.map +1 -0
- package/dist/{components-CUv-wQr8.js → components-CY8kx2kb.js} +13 -9
- package/dist/components-CY8kx2kb.js.map +1 -0
- package/dist/{contracts-D72LBOX3.js → contracts-DRJHF89h.js} +5 -4
- package/dist/{contracts-D72LBOX3.js.map → contracts-DRJHF89h.js.map} +1 -1
- package/dist/{create-config-CIfejoCk.js → create-config-BxyfYCEk.js} +6 -5
- package/dist/create-config-BxyfYCEk.js.map +1 -0
- package/dist/{create-config-DV_dtaLt.d.ts → create-config-CFBeD8CB.d.ts} +149 -57
- package/dist/{element-Dbcv5qya.js → element-D4dDznlu.js} +1 -1
- package/dist/{element-Dbcv5qya.js.map → element-D4dDznlu.js.map} +1 -1
- package/dist/filters-B5niI_fX.d.ts +60 -0
- package/dist/{foundation-QPhUEUy8.js → foundation-GHZOKAzN.js} +1 -1
- package/dist/{foundation-QPhUEUy8.js.map → foundation-GHZOKAzN.js.map} +1 -1
- package/dist/index-8scPf0CS.d.ts +55 -0
- package/dist/index-9qsplZ8r.d.ts +18 -0
- package/dist/index-BIuYTMc2.d.ts +122 -0
- package/dist/{index-BoNNplSx.d.ts → index-BNrz99xy.d.ts} +3 -3
- package/dist/{index-BaytncQc.d.ts → index-BYQOPS8e.d.ts} +108 -51
- package/dist/{index-CXscCUg7.d.ts → index-BkZ7SPLc.d.ts} +19 -29
- package/dist/{index-D6YMj82n.d.ts → index-BnUku_aF.d.ts} +109 -114
- package/dist/index-BtDAHMW_.d.ts +50 -0
- package/dist/index-C-c_M_sE.d.ts +107 -0
- package/dist/index-CKefEBrI.d.ts +1 -0
- package/dist/{index-CMPUveNz.d.ts → index-CNIiC8Z_.d.ts} +11 -8
- package/dist/{index-DLUjc7Bx.d.ts → index-CbERNN3s.d.ts} +201 -12
- package/dist/{index-C768pAfu.d.ts → index-CsfxsN0t.d.ts} +4 -4
- package/dist/{index-CQecU53t.d.ts → index-DASjaiJL.d.ts} +119 -24
- package/dist/{index-CT8ZorFd.d.ts → index-DD7Vc4cE.d.ts} +2 -2
- package/dist/{index-DpeWm_vF.d.ts → index-DIc8OqWV.d.ts} +7 -6
- package/dist/index-DVI_vggD.d.ts +171 -0
- package/dist/index-DgsCqh_P.d.ts +1 -0
- package/dist/{index-DMBMM16q.d.ts → index-DqxQeYT2.d.ts} +39 -36
- package/dist/{index-D-UXGo5d.d.ts → index-Dsf9FRtr.d.ts} +19 -3
- package/dist/{index-DJG0kiII.d.ts → index-DxAReMEO.d.ts} +45 -34
- package/dist/index-UXRoZmd_.d.ts +70 -0
- package/dist/{index-CM0ZTePs.d.ts → index-isFvc5gd.d.ts} +2 -2
- package/dist/{index-jGgfEHfQ.d.ts → index-j3nuJWyJ.d.ts} +18 -10
- package/dist/{index-B6aSbaw2.d.ts → index-nVb7o0hc.d.ts} +2 -2
- package/dist/{index-Bv5XVLjH.d.ts → index-pbE88Tt7.d.ts} +2 -2
- package/dist/index-xpO4AQyS.d.ts +1 -0
- package/dist/index.d.ts +8 -8
- package/dist/index.js +13 -13
- package/dist/inventory--t6Zu55O.js +75 -0
- package/dist/inventory--t6Zu55O.js.map +1 -0
- package/dist/listCollectiblesPaginated-BlE5mSzh.d.ts +327 -0
- package/dist/listCollections-DWyqFSQ3.d.ts +828 -0
- package/dist/{looks-rare-C7cQztTR.js → looks-rare-2HBhMpOf.js} +1 -1
- package/dist/{looks-rare-C7cQztTR.js.map → looks-rare-2HBhMpOf.js.map} +1 -1
- package/dist/lowestListing-DsunDO1c.d.ts +475 -0
- package/dist/{magic-eden-D3r7jiBG.js → magic-eden-BYdTp-uk.js} +1 -1
- package/dist/{magic-eden-D3r7jiBG.js.map → magic-eden-BYdTp-uk.js.map} +1 -1
- package/dist/{manifold-DsX0CBP-.js → manifold-yE0x6ZmO.js} +1 -1
- package/dist/{manifold-DsX0CBP-.js.map → manifold-yE0x6ZmO.js.map} +1 -1
- package/dist/market-DuBpFsDg.js +219 -0
- package/dist/market-DuBpFsDg.js.map +1 -0
- package/dist/{marketCurrencies-Bzj8X4TL.d.ts → marketCurrencies-BgwmbGFk.d.ts} +57 -15
- package/dist/marketCurrencies-Bolonndy.js +59 -0
- package/dist/marketCurrencies-Bolonndy.js.map +1 -0
- package/dist/{marketplace-BYY8OloA.js → marketplace-NQB-sEQL.js} +1 -1
- package/dist/{marketplace-BYY8OloA.js.map → marketplace-NQB-sEQL.js.map} +1 -1
- package/dist/{marketplace-logos-Csv2MBwf.js → marketplace-logos-Cz9RrtQo.js} +21 -21
- package/dist/marketplace-logos-Cz9RrtQo.js.map +1 -0
- package/dist/{marketplace.gen-w2YvbEEo.js → marketplace.gen-906FrJQJ.js} +75 -5
- package/dist/marketplace.gen-906FrJQJ.js.map +1 -0
- package/dist/{marketplaceConfig-BTy75Mbf.js → marketplaceConfig-Bqjo7NYO.js} +9 -5
- package/dist/marketplaceConfig-Bqjo7NYO.js.map +1 -0
- package/dist/{mintify-DiOoDmO1.js → mintify-BXQx3mZB.js} +1 -1
- package/dist/{mintify-DiOoDmO1.js.map → mintify-BXQx3mZB.js.map} +1 -1
- package/dist/{network-DtmiMhcg.js → network-DwdZ_5-7.js} +2 -2
- package/dist/network-DwdZ_5-7.js.map +1 -0
- package/dist/{networkconfigToWagmiChain-DbUf6HiO.js → networkconfigToWagmiChain-Ct-hGq8M.js} +4 -3
- package/dist/networkconfigToWagmiChain-Ct-hGq8M.js.map +1 -0
- package/dist/{nftx-CP82jNra.js → nftx-B929_3Ce.js} +1 -1
- package/dist/{nftx-CP82jNra.js.map → nftx-B929_3Ce.js.map} +1 -1
- package/dist/{okx-p9-4xRjs.js → okx-sZ0-Udny.js} +1 -1
- package/dist/{okx-p9-4xRjs.js.map → okx-sZ0-Udny.js.map} +1 -1
- package/dist/{open-sea-D2GwAmKS.js → open-sea-DO9PhTrz.js} +1 -1
- package/dist/{open-sea-D2GwAmKS.js.map → open-sea-DO9PhTrz.js.map} +1 -1
- package/dist/orders-DH76ym2e.js +469 -0
- package/dist/orders-DH76ym2e.js.map +1 -0
- package/dist/{primary-sale-DOmNDq2P.js → primary-sale-1u4QlPdA.js} +1 -1
- package/dist/{primary-sale-DOmNDq2P.js.map → primary-sale-1u4QlPdA.js.map} +1 -1
- package/dist/primary-sales-CECrqatg.js +156 -0
- package/dist/primary-sales-CECrqatg.js.map +1 -0
- package/dist/{query-BG-MA1MB.d.ts → query-brXxOcH0.d.ts} +1 -1
- package/dist/{rarible-DqiiW9ki.js → rarible-Ccb2hs7y.js} +1 -1
- package/dist/{rarible-DqiiW9ki.js.map → rarible-Ccb2hs7y.js.map} +1 -1
- package/dist/react/_internal/api/index.d.ts +2 -2
- package/dist/react/_internal/api/index.js +6 -6
- package/dist/react/_internal/databeat/index.d.ts +1 -1
- package/dist/react/_internal/databeat/index.js +32 -22
- package/dist/react/_internal/index.d.ts +2 -2
- package/dist/react/_internal/index.js +8 -8
- package/dist/react/_internal/wagmi/index.d.ts +1 -1
- package/dist/react/_internal/wagmi/index.js +3 -3
- package/dist/react/hooks/config/index.d.ts +8 -8
- package/dist/react/hooks/config/index.js +32 -22
- package/dist/react/hooks/contracts/index.d.ts +6 -6
- package/dist/react/hooks/contracts/index.js +12 -12
- package/dist/react/hooks/data/collectibles/index.d.ts +10 -4
- package/dist/react/hooks/data/collectibles/index.js +32 -22
- package/dist/react/hooks/data/collections/index.d.ts +11 -11
- package/dist/react/hooks/data/collections/index.js +33 -23
- package/dist/react/hooks/data/index.d.ts +37 -29
- package/dist/react/hooks/data/index.js +33 -23
- package/dist/react/hooks/data/inventory/index.d.ts +36 -28
- package/dist/react/hooks/data/inventory/index.js +32 -22
- package/dist/react/hooks/data/market/index.d.ts +11 -5
- package/dist/react/hooks/data/market/index.js +32 -22
- package/dist/react/hooks/data/orders/index.d.ts +11 -5
- package/dist/react/hooks/data/orders/index.js +33 -23
- package/dist/react/hooks/data/primary-sales/index.d.ts +37 -29
- package/dist/react/hooks/data/primary-sales/index.js +33 -23
- package/dist/react/hooks/data/tokens/index.d.ts +4 -4
- package/dist/react/hooks/data/tokens/index.js +32 -22
- package/dist/react/hooks/index.d.ts +37 -29
- package/dist/react/hooks/index.js +33 -23
- package/dist/react/hooks/transactions/index.d.ts +2 -2
- package/dist/react/hooks/transactions/index.js +32 -22
- package/dist/react/hooks/ui/index.d.ts +4 -4
- package/dist/react/hooks/ui/index.js +32 -22
- package/dist/react/hooks/utils/index.d.ts +36 -28
- package/dist/react/hooks/utils/index.js +32 -22
- package/dist/react/index.d.ts +37 -29
- package/dist/react/index.js +33 -23
- package/dist/react/queries/collectibles/index.d.ts +11 -0
- package/dist/react/queries/collectibles/index.js +22 -0
- package/dist/react/queries/collections/index.d.ts +11 -0
- package/dist/react/queries/collections/index.js +20 -0
- package/dist/react/queries/index.d.ts +24 -16
- package/dist/react/queries/index.js +26 -16
- package/dist/react/queries/inventory/index.d.ts +3 -0
- package/dist/react/queries/inventory/index.js +22 -0
- package/dist/react/queries/market/index.d.ts +6 -0
- package/dist/react/queries/market/index.js +22 -0
- package/dist/react/queries/orders/index.d.ts +11 -0
- package/dist/react/queries/orders/index.js +13 -0
- package/dist/react/queries/primary-sales/index.d.ts +4 -0
- package/dist/react/queries/primary-sales/index.js +13 -0
- package/dist/react/queries/tokens/index.d.ts +5 -0
- package/dist/react/queries/tokens/index.js +13 -0
- package/dist/react/queries/utils/index.d.ts +4 -0
- package/dist/react/queries/utils/index.js +22 -0
- package/dist/react/ssr/index.d.ts +7 -7
- package/dist/react/ssr/index.js +8 -8
- package/dist/react/ssr/index.js.map +1 -1
- package/dist/react/ui/components/marketplace-collectible-card/components/footer/components/index.d.ts +2 -2
- package/dist/react/ui/components/marketplace-collectible-card/components/footer/components/index.js +16 -16
- package/dist/react/ui/components/marketplace-collectible-card/components/footer/index.d.ts +7 -10
- package/dist/react/ui/components/marketplace-collectible-card/components/footer/index.js +32 -22
- package/dist/react/ui/components/marketplace-collectible-card/index.d.ts +4 -4
- package/dist/react/ui/components/marketplace-collectible-card/index.js +32 -22
- package/dist/react/ui/components/marketplace-collectible-card/utils/index.d.ts +2 -2
- package/dist/react/ui/components/marketplace-collectible-card/utils/index.js +8 -8
- package/dist/react/ui/components/marketplace-logos/index.d.ts +21 -21
- package/dist/react/ui/components/marketplace-logos/index.js +1 -1
- package/dist/react/ui/icons/index.js +12 -12
- package/dist/react/ui/index.d.ts +4 -4
- package/dist/react/ui/index.js +32 -22
- package/dist/react/ui/modals/_internal/components/actionModal/index.d.ts +2 -2
- package/dist/react/ui/modals/_internal/components/actionModal/index.js +32 -22
- package/dist/react/utils/index.d.ts +3 -3
- package/dist/react/utils/index.js +6 -6
- package/dist/{react-BLJ4DkPx.js → react-CBsgOdVP.js} +1540 -474
- package/dist/react-CBsgOdVP.js.map +1 -0
- package/dist/{sequence-Bbb-TFKg.js → sequence-CRdb1yEs.js} +1 -1
- package/dist/{sequence-Bbb-TFKg.js.map → sequence-CRdb1yEs.js.map} +1 -1
- package/dist/styles/index.css +155 -1
- package/dist/{sudo-swap-CEPIM3Js.js → sudo-swap-BIklG2gq.js} +1 -1
- package/dist/{sudo-swap-CEPIM3Js.js.map → sudo-swap-BIklG2gq.js.map} +1 -1
- package/dist/{super-rare-CMEn9PoO.js → super-rare-h8645_5E.js} +1 -1
- package/dist/{super-rare-CMEn9PoO.js.map → super-rare-h8645_5E.js.map} +1 -1
- package/dist/{token-CcyLz8Z8.js → token-Cv7l2ZaL.js} +1 -1
- package/dist/{token-CcyLz8Z8.js.map → token-Cv7l2ZaL.js.map} +1 -1
- package/dist/tokenBalances-CouzNX4j.js +57 -0
- package/dist/tokenBalances-CouzNX4j.js.map +1 -0
- package/dist/tokenSupplies-C3zJll0M.d.ts +265 -0
- package/dist/tokens-BvIRUCGG.js +225 -0
- package/dist/tokens-BvIRUCGG.js.map +1 -0
- package/dist/transaction-DZUW5RHu.js.map +1 -1
- package/dist/types/index.d.ts +1 -1
- package/dist/types/index.js +2 -2
- package/dist/types-B_-cnkcP.js.map +1 -1
- package/dist/{types-D6LkVrF0.d.ts → types-CMDwfhfR.d.ts} +6 -5
- package/dist/utils/abi/index.d.ts +5 -5
- package/dist/utils/abi/index.js +5 -5
- package/dist/utils/abi/marketplace/index.d.ts +1 -1
- package/dist/utils/abi/marketplace/index.js +1 -1
- package/dist/utils/abi/primary-sale/index.d.ts +1 -1
- package/dist/utils/abi/primary-sale/index.js +1 -1
- package/dist/utils/abi/token/index.d.ts +1 -1
- package/dist/utils/abi/token/index.js +1 -1
- package/dist/utils/index.d.ts +7 -7
- package/dist/utils/index.js +11 -11
- package/dist/{utils-BZEkdqWK.js → utils-9ToOvt-c.js} +50 -7
- package/dist/utils-9ToOvt-c.js.map +1 -0
- package/dist/{utils-oVZxdK0o.js → utils-B6di6O-C.js} +2 -2
- package/dist/utils-B6di6O-C.js.map +1 -0
- package/dist/utils-BCYTEOvy.js +122 -0
- package/dist/utils-BCYTEOvy.js.map +1 -0
- package/dist/waitForTransactionReceipt-CbSeUSXe.js +26 -0
- package/dist/waitForTransactionReceipt-CbSeUSXe.js.map +1 -0
- package/dist/{x2y2-DNe6JgtG.js → x2y2-OvF__ugj.js} +1 -1
- package/dist/{x2y2-DNe6JgtG.js.map → x2y2-OvF__ugj.js.map} +1 -1
- package/dist/{zora-w0Zqxxs4.js → zora-DzCeu-eE.js} +1 -1
- package/dist/{zora-w0Zqxxs4.js.map → zora-DzCeu-eE.js.map} +1 -1
- package/package.json +46 -41
- package/src/react/_internal/api/__mocks__/marketplace.msw.ts +15 -0
- package/src/react/_internal/api/index.ts +0 -1
- package/src/react/_internal/api/marketplace.gen.ts +1774 -2383
- package/src/react/_internal/api/query-keys.ts +23 -0
- package/src/react/_internal/api/services.ts +1 -1
- package/src/react/_internal/databeat/types.ts +1 -0
- package/src/react/_internal/types.ts +14 -0
- package/src/react/_internal/utils.ts +3 -0
- package/src/react/hooks/config/useMarketplaceConfig.tsx +1 -1
- package/src/react/hooks/data/collectibles/useBalanceOfCollectible.tsx +1 -10
- package/src/react/hooks/data/collectibles/useCollectible.tsx +1 -1
- package/src/react/hooks/data/collectibles/useCountOfCollectables.tsx +1 -1
- package/src/react/hooks/data/collectibles/useListCollectibleActivities.tsx +1 -1
- package/src/react/hooks/data/collectibles/useListCollectibles.tsx +2 -17
- package/src/react/hooks/data/collectibles/useListCollectiblesPaginated.tsx +1 -1
- package/src/react/hooks/data/collectibles/useTokenBalances.tsx +1 -10
- package/src/react/hooks/data/collections/index.ts +2 -0
- package/src/react/hooks/data/collections/useCollection.tsx +1 -1
- package/src/react/hooks/data/collections/useCollectionActiveListingsCurrencies.test.tsx +112 -0
- package/src/react/hooks/data/collections/useCollectionActiveListingsCurrencies.tsx +74 -0
- package/src/react/hooks/data/collections/useCollectionActiveOffersCurrencies.test.tsx +110 -0
- package/src/react/hooks/data/collections/useCollectionActiveOffersCurrencies.tsx +74 -0
- package/src/react/hooks/data/collections/useCollectionBalanceDetails.tsx +1 -1
- package/src/react/hooks/data/collections/useCollectionDetails.ts +1 -1
- package/src/react/hooks/data/collections/useListCollectionActivities.tsx +1 -1
- package/src/react/hooks/data/collections/useListCollections.tsx +1 -1
- package/src/react/hooks/data/inventory/useInventory.tsx +2 -11
- package/src/react/hooks/data/market/useCurrency.tsx +1 -1
- package/src/react/hooks/data/market/useListMarketCardData.tsx +7 -0
- package/src/react/hooks/data/market/useMarketCurrencies.test.tsx +31 -2
- package/src/react/hooks/data/market/useMarketCurrencies.tsx +1 -1
- package/src/react/hooks/data/orders/index.ts +4 -0
- package/src/react/hooks/data/orders/useCountItemsOrdersForCollection.tsx +90 -0
- package/src/react/hooks/data/orders/useCountListingsForCollectible.tsx +1 -1
- package/src/react/hooks/data/orders/useCountOffersForCollectible.tsx +1 -1
- package/src/react/hooks/data/orders/useFloorOrder.tsx +1 -1
- package/src/react/hooks/data/orders/useGetCountOfFilteredOrders.tsx +39 -0
- package/src/react/hooks/data/orders/useHighestOffer.tsx +1 -1
- package/src/react/hooks/data/orders/useListItemsOrdersForCollection.tsx +93 -0
- package/src/react/hooks/data/orders/useListItemsOrdersForCollectionPaginated.tsx +108 -0
- package/src/react/hooks/data/orders/useListListingsForCollectible.tsx +1 -1
- package/src/react/hooks/data/orders/useListOffersForCollectible.tsx +1 -1
- package/src/react/hooks/data/orders/useLowestListing.tsx +1 -1
- package/src/react/hooks/data/primary-sales/index.ts +1 -0
- package/src/react/hooks/data/primary-sales/useGetCountOfPrimarySaleItems.tsx +2 -2
- package/src/react/hooks/data/primary-sales/useListPrimarySaleItems.tsx +1 -1
- package/src/react/hooks/data/primary-sales/usePrimarySaleItem.tsx +71 -0
- package/src/react/hooks/data/tokens/useGetTokenRanges.tsx +2 -2
- package/src/react/hooks/data/tokens/useListBalances.tsx +3 -12
- package/src/react/hooks/data/tokens/useListTokenMetadata.tsx +1 -1
- package/src/react/hooks/data/tokens/useSearchTokenMetadata.tsx +1 -1
- package/src/react/hooks/data/tokens/useTokenSupplies.ts +2 -14
- package/src/react/hooks/transactions/useGenerateCancelTransaction.test.tsx +1 -0
- package/src/react/hooks/transactions/useGenerateListingTransaction.test.tsx +13 -0
- package/src/react/hooks/transactions/useGenerateOfferTransaction.test.tsx +3 -0
- package/src/react/hooks/transactions/useGenerateSellTransaction.test.tsx +6 -0
- package/src/react/hooks/transactions/useProcessStep.test.tsx +8 -6
- package/src/react/hooks/transactions/useProcessStep.ts +8 -6
- package/src/react/hooks/ui/useFilterState.tsx +72 -2
- package/src/react/hooks/ui/useFilters.tsx +1 -1
- package/src/react/hooks/utils/useCheckoutOptions.tsx +2 -2
- package/src/react/hooks/utils/useCheckoutOptionsSalesContract.tsx +1 -1
- package/src/react/hooks/utils/useComparePrices.test.tsx +1 -1
- package/src/react/hooks/utils/useComparePrices.tsx +1 -1
- package/src/react/hooks/utils/useConvertPriceToUSD.tsx +1 -1
- package/src/react/providers/analytics-provider.tsx +45 -0
- package/src/react/providers/index.tsx +30 -41
- package/src/react/providers/modal-provider.tsx +14 -2
- package/src/react/queries/{balanceOfCollectible.ts → collectibles/balanceOfCollectible.ts} +23 -16
- package/src/react/queries/{collectible.ts → collectibles/collectible.ts} +20 -5
- package/src/react/queries/{countOfCollectables.ts → collectibles/countOfCollectables.ts} +32 -6
- package/src/react/queries/collectibles/index.ts +7 -0
- package/src/react/queries/{listCollectibleActivities.ts → collectibles/listCollectibleActivities.ts} +29 -5
- package/src/react/queries/{listCollectibles.ts → collectibles/listCollectibles.ts} +22 -56
- package/src/react/queries/{listCollectiblesPaginated.ts → collectibles/listCollectiblesPaginated.ts} +22 -5
- package/src/react/queries/{tokenBalances.ts → collectibles/tokenBalances.ts} +20 -16
- package/src/react/queries/collections/activeListingsCurrencies.ts +84 -0
- package/src/react/queries/collections/activeOffersCurrencies.ts +84 -0
- package/src/react/queries/{collection.ts → collections/collection.ts} +19 -5
- package/src/react/queries/{collectionBalanceDetails.ts → collections/collectionBalanceDetails.ts} +19 -4
- package/src/react/queries/{collectionDetails.ts → collections/collectionDetails.ts} +21 -6
- package/src/react/queries/collections/index.ts +7 -0
- package/src/react/queries/{listCollectionActivities.ts → collections/listCollectionActivities.ts} +28 -6
- package/src/react/queries/{listCollections.ts → collections/listCollections.ts} +17 -6
- package/src/react/queries/index.ts +7 -34
- package/src/react/queries/inventory/index.ts +1 -0
- package/src/react/queries/{inventory.ts → inventory/inventory.ts} +13 -14
- package/src/react/queries/{checkoutOptions.ts → market/checkoutOptions.ts} +28 -6
- package/src/react/queries/{checkoutOptionsSalesContract.ts → market/checkoutOptionsSalesContract.ts} +24 -5
- package/src/react/queries/{currency.ts → market/currency.ts} +13 -4
- package/src/react/queries/{filters.ts → market/filters.ts} +25 -6
- package/src/react/queries/market/index.ts +6 -0
- package/src/react/queries/{marketCurrencies.ts → market/marketCurrencies.ts} +32 -6
- package/src/react/queries/{marketplaceConfig.ts → market/marketplaceConfig.ts} +5 -5
- package/src/react/queries/orders/countItemsOrdersForCollection.ts +86 -0
- package/src/react/queries/{countListingsForCollectible.ts → orders/countListingsForCollectible.ts} +23 -6
- package/src/react/queries/{countOffersForCollectible.ts → orders/countOffersForCollectible.ts} +23 -6
- package/src/react/queries/{floorOrder.ts → orders/floorOrder.ts} +15 -4
- package/src/react/queries/orders/getCountOfFilteredOrders.ts +88 -0
- package/src/react/queries/{highestOffer.ts → orders/highestOffer.ts} +16 -4
- package/src/react/queries/orders/index.ts +11 -0
- package/src/react/queries/orders/listItemsOrdersForCollection.ts +90 -0
- package/src/react/queries/orders/listItemsOrdersForCollectionPaginated.ts +90 -0
- package/src/react/queries/{listListingsForCollectible.ts → orders/listListingsForCollectible.ts} +20 -5
- package/src/react/queries/{listOffersForCollectible.ts → orders/listOffersForCollectible.ts} +20 -5
- package/src/react/queries/{lowestListing.ts → orders/lowestListing.ts} +16 -4
- package/src/react/queries/{countOfPrimarySaleItems.ts → primary-sales/countOfPrimarySaleItems.ts} +17 -3
- package/src/react/queries/primary-sales/index.ts +4 -0
- package/src/react/queries/primary-sales/primarySaleItem.ts +80 -0
- package/src/react/queries/{primarySaleItems.ts → primary-sales/primarySaleItems.ts} +18 -4
- package/src/react/queries/{primarySaleItemsCount.ts → primary-sales/primarySaleItemsCount.ts} +19 -4
- package/src/react/queries/{getTokenRanges.ts → tokens/getTokenRanges.ts} +17 -4
- package/src/react/queries/tokens/index.ts +5 -0
- package/src/react/queries/{listBalances.ts → tokens/listBalances.ts} +17 -22
- package/src/react/queries/{listTokenMetadata.ts → tokens/listTokenMetadata.ts} +18 -4
- package/src/react/queries/{searchTokenMetadata.ts → tokens/searchTokenMetadata.ts} +18 -4
- package/src/react/queries/{tokenSupplies.ts → tokens/tokenSupplies.ts} +17 -34
- package/src/react/queries/{comparePrices.ts → utils/comparePrices.ts} +29 -5
- package/src/react/queries/{convertPriceToUSD.ts → utils/convertPriceToUSD.ts} +18 -5
- package/src/react/queries/utils/index.ts +2 -0
- package/src/react/ssr/create-ssr-client.ts +1 -1
- package/src/react/ui/components/_internals/ErrorLogBox.tsx +85 -0
- package/src/react/ui/components/_internals/action-button/ActionButton.stories.tsx +2 -0
- package/src/react/ui/components/_internals/action-button/ActionButton.tsx +4 -0
- package/src/react/ui/components/_internals/action-button/components/NonOwnerActions.tsx +4 -0
- package/src/react/ui/components/marketplace-collectible-card/components/ActionButtonWrapper.tsx +3 -0
- package/src/react/ui/components/marketplace-collectible-card/components/footer/Footer.tsx +4 -18
- package/src/react/ui/components/marketplace-collectible-card/types.ts +1 -0
- package/src/react/ui/components/marketplace-collectible-card/variants/MarketCard.tsx +5 -2
- package/src/react/ui/components/marketplace-collectible-card/variants/ShopCard.tsx +2 -2
- package/src/react/ui/modals/BuyModal/__tests__/BuyModalRouter.test.tsx +3 -0
- package/src/react/ui/modals/BuyModal/__tests__/Modal1155.test.tsx +1 -0
- package/src/react/ui/modals/BuyModal/components/ERC1155BuyModal.tsx +65 -3
- package/src/react/ui/modals/BuyModal/components/ERC721BuyModal.tsx +31 -0
- package/src/react/ui/modals/BuyModal/hooks/__tests__/useERC721SalePaymentParams.test.tsx +20 -1
- package/src/react/ui/modals/BuyModal/hooks/useERC1155Checkout.ts +7 -2
- package/src/react/ui/modals/BuyModal/hooks/useERC721SalePaymentParams.ts +12 -3
- package/src/react/ui/modals/BuyModal/hooks/usePaymentModalParams.ts +11 -25
- package/src/react/ui/modals/BuyModal/store.ts +3 -0
- package/src/react/ui/modals/CreateListingModal/Modal.tsx +63 -24
- package/src/react/ui/modals/CreateListingModal/__tests__/Modal.test.tsx +4 -0
- package/src/react/ui/modals/CreateListingModal/hooks/useCreateListing.tsx +18 -12
- package/src/react/ui/modals/CreateListingModal/hooks/useGetTokenApproval.ts +4 -1
- package/src/react/ui/modals/CreateListingModal/hooks/useTransactionSteps.tsx +1 -0
- package/src/react/ui/modals/MakeOfferModal/Modal.tsx +77 -10
- package/src/react/ui/modals/MakeOfferModal/__tests__/Modal.test.tsx +12 -0
- package/src/react/ui/modals/MakeOfferModal/hooks/useGetTokenApproval.tsx +6 -1
- package/src/react/ui/modals/MakeOfferModal/hooks/useMakeOffer.tsx +15 -26
- package/src/react/ui/modals/MakeOfferModal/hooks/useTransactionSteps.tsx +3 -0
- package/src/react/ui/modals/SellModal/Modal.tsx +21 -3
- package/src/react/ui/modals/SellModal/__tests__/Modal.test.tsx +2 -0
- package/src/react/ui/modals/SellModal/hooks/useGetTokenApproval.tsx +3 -1
- package/src/react/ui/modals/SellModal/hooks/useSell.tsx +13 -7
- package/src/react/ui/modals/SuccessfulPurchaseModal/__tests__/Modal.test.tsx +9 -0
- package/src/react/ui/modals/_internal/components/calendarDropdown/TimeSelector.tsx +105 -0
- package/src/react/ui/modals/_internal/components/calendarDropdown/index.tsx +45 -12
- package/src/react/ui/modals/_internal/components/calendarDropdown/overrides.css +39 -0
- package/src/react/ui/modals/_internal/components/currencyOptionsSelect/index.tsx +34 -10
- package/src/react/ui/modals/_internal/components/expirationDateSelect/index.tsx +18 -9
- package/src/react/ui/modals/_internal/components/floorPriceText/__tests__/FloorPriceText.test.tsx +2 -0
- package/src/react/ui/modals/_internal/components/floorPriceText/index.tsx +1 -1
- package/src/react/ui/modals/_internal/components/priceInput/index.tsx +198 -11
- package/src/react/ui/modals/_internal/components/transactionDetails/index.tsx +58 -10
- package/src/react/ui/modals/_internal/components/transactionStatusModal/__tests__/utils.test.ts +2 -0
- package/src/react/utils/waitForTransactionReceipt.ts +26 -32
- package/src/styles/index.css +1 -0
- package/src/styles/styles.ts +156 -2
- package/src/types/index.ts +1 -1
- package/src/utils/abi/index.ts +1 -0
- package/src/utils/abi/mainModule.ts +158 -0
- package/src/utils/networkconfigToWagmiChain.ts +7 -0
- package/src/utils/price.ts +58 -0
- package/test/const.ts +2 -0
- package/test/server-setup.ts +0 -2
- package/dist/BellIcon-IpHHEy8h.js.map +0 -1
- package/dist/CartIcon-C8zbor8H.js.map +0 -1
- package/dist/CollectibleCard-C2EWF0zo.d.ts +0 -8
- package/dist/api-DuLKn__v.js.map +0 -1
- package/dist/builder-api-BFuZNOaN.js.map +0 -1
- package/dist/builder.gen-B9wR2nvF.js.map +0 -1
- package/dist/components-CUv-wQr8.js.map +0 -1
- package/dist/create-config-CIfejoCk.js.map +0 -1
- package/dist/filters-zkMJaPey.d.ts +0 -31
- package/dist/index-B8vaT3_s.d.ts +0 -18
- package/dist/index-Yobo6icm.d.ts +0 -234
- package/dist/listCollectiblesPaginated-Bq0QSOjJ.d.ts +0 -168
- package/dist/listCollections-dTCq00l5.d.ts +0 -669
- package/dist/lowestListing-CB5Te-Q9.d.ts +0 -168
- package/dist/marketplace-logos-Csv2MBwf.js.map +0 -1
- package/dist/marketplace.gen-w2YvbEEo.js.map +0 -1
- package/dist/marketplaceConfig-BTy75Mbf.js.map +0 -1
- package/dist/network-DtmiMhcg.js.map +0 -1
- package/dist/networkconfigToWagmiChain-DbUf6HiO.js.map +0 -1
- package/dist/queries-EMA5CcwY.js +0 -1399
- package/dist/queries-EMA5CcwY.js.map +0 -1
- package/dist/react-BLJ4DkPx.js.map +0 -1
- package/dist/react-F03jPjPk.css +0 -80
- package/dist/react-F03jPjPk.css.map +0 -1
- package/dist/tokenSupplies-C470zTT0.d.ts +0 -147
- package/dist/utils-BZEkdqWK.js.map +0 -1
- package/dist/utils-oVZxdK0o.js.map +0 -1
- package/dist/waitForTransactionReceipt-B08YZiDY.js +0 -26
- package/dist/waitForTransactionReceipt-B08YZiDY.js.map +0 -1
- package/src/react/_internal/api/__mocks__/laos.msw.ts +0 -387
- package/src/react/_internal/api/__tests__/laos-api.test.ts +0 -756
- package/src/react/_internal/api/laos-api.ts +0 -106
- package/src/react/hooks/data/collectibles/useBalanceOfCollectible.laos.test.tsx +0 -367
- package/src/react/queries/__tests__/balanceOfCollectible.laos.test.ts +0 -123
- package/src/react/queries/__tests__/inventory.laos.test.ts +0 -499
- package/src/react/queries/__tests__/tokenBalances.laos.test.ts +0 -123
- /package/dist/{index-Cg5cFzs-.d.ts → index-CCggO_hw.d.ts} +0 -0
- /package/dist/{abi-DYsUABe6.js → queries-CyajGg_O.js} +0 -0
|
@@ -0,0 +1,219 @@
|
|
|
1
|
+
import { FilterCondition$1 as FilterCondition } from "./builder.gen--XD71cNL.js";
|
|
2
|
+
import { checkoutKeys, currencyKeys, getMarketplaceClient, getMetadataClient, getQueryClient } from "./api-GwTR0dBA.js";
|
|
3
|
+
import { compareAddress } from "./utils-9ToOvt-c.js";
|
|
4
|
+
import { marketplaceConfigOptions$1 as marketplaceConfigOptions } from "./marketplaceConfig-Bqjo7NYO.js";
|
|
5
|
+
import { queryOptions, skipToken } from "@tanstack/react-query";
|
|
6
|
+
|
|
7
|
+
//#region src/react/queries/market/currency.ts
|
|
8
|
+
/**
|
|
9
|
+
* Fetches currency details from the marketplace API
|
|
10
|
+
*/
|
|
11
|
+
async function fetchCurrency(params) {
|
|
12
|
+
const { chainId, currencyAddress, config } = params;
|
|
13
|
+
const queryClient = getQueryClient();
|
|
14
|
+
let currencies = queryClient.getQueryData([...currencyKeys.lists, chainId]);
|
|
15
|
+
if (!currencies) {
|
|
16
|
+
const marketplaceClient = getMarketplaceClient(config);
|
|
17
|
+
currencies = await marketplaceClient.listCurrencies({ chainId: String(chainId) }).then((resp) => resp.currencies);
|
|
18
|
+
}
|
|
19
|
+
if (!currencies?.length) throw new Error("No currencies returned");
|
|
20
|
+
const currency = currencies.find((currency$1) => currency$1.contractAddress.toLowerCase() === currencyAddress.toLowerCase());
|
|
21
|
+
if (!currency) throw new Error("Currency not found");
|
|
22
|
+
return currency;
|
|
23
|
+
}
|
|
24
|
+
function getCurrencyQueryKey(params) {
|
|
25
|
+
const apiArgs = {
|
|
26
|
+
chainId: String(params.chainId),
|
|
27
|
+
currencyAddress: params.currencyAddress
|
|
28
|
+
};
|
|
29
|
+
return [...currencyKeys.details, apiArgs];
|
|
30
|
+
}
|
|
31
|
+
function currencyQueryOptions(params) {
|
|
32
|
+
const enabled = Boolean(params.chainId && params.currencyAddress && params.config && (params.query?.enabled ?? true));
|
|
33
|
+
return queryOptions({
|
|
34
|
+
queryKey: getCurrencyQueryKey(params),
|
|
35
|
+
queryFn: params.chainId && params.currencyAddress ? () => fetchCurrency({
|
|
36
|
+
chainId: params.chainId,
|
|
37
|
+
currencyAddress: params.currencyAddress,
|
|
38
|
+
config: params.config
|
|
39
|
+
}) : skipToken,
|
|
40
|
+
...params.query,
|
|
41
|
+
enabled
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
//#endregion
|
|
46
|
+
//#region src/react/queries/market/checkoutOptions.ts
|
|
47
|
+
/**
|
|
48
|
+
* Fetches checkout options from the Marketplace API
|
|
49
|
+
*/
|
|
50
|
+
async function fetchCheckoutOptions(params) {
|
|
51
|
+
const { chainId, walletAddress, orders, config, additionalFee } = params;
|
|
52
|
+
const client = getMarketplaceClient(config);
|
|
53
|
+
const apiArgs = {
|
|
54
|
+
chainId: String(chainId),
|
|
55
|
+
wallet: walletAddress,
|
|
56
|
+
orders: orders.map((order) => ({
|
|
57
|
+
contractAddress: order.collectionAddress,
|
|
58
|
+
orderId: order.orderId,
|
|
59
|
+
marketplace: order.marketplace
|
|
60
|
+
})),
|
|
61
|
+
additionalFee: additionalFee ?? 0
|
|
62
|
+
};
|
|
63
|
+
const result = await client.checkoutOptionsMarketplace(apiArgs);
|
|
64
|
+
return result;
|
|
65
|
+
}
|
|
66
|
+
function getCheckoutOptionsQueryKey(params) {
|
|
67
|
+
const apiArgs = {
|
|
68
|
+
chainId: String(params.chainId),
|
|
69
|
+
wallet: params.walletAddress,
|
|
70
|
+
orders: params.orders?.map((order) => ({
|
|
71
|
+
contractAddress: order.collectionAddress,
|
|
72
|
+
orderId: order.orderId,
|
|
73
|
+
marketplace: order.marketplace
|
|
74
|
+
})),
|
|
75
|
+
additionalFee: params.additionalFee
|
|
76
|
+
};
|
|
77
|
+
return [...checkoutKeys.options, apiArgs];
|
|
78
|
+
}
|
|
79
|
+
function checkoutOptionsQueryOptions(params) {
|
|
80
|
+
const enabled = Boolean(params.chainId && params.walletAddress && params.orders?.length && params.config && (params.query?.enabled ?? true));
|
|
81
|
+
return queryOptions({
|
|
82
|
+
queryKey: getCheckoutOptionsQueryKey(params),
|
|
83
|
+
queryFn: () => fetchCheckoutOptions({
|
|
84
|
+
chainId: params.chainId,
|
|
85
|
+
walletAddress: params.walletAddress,
|
|
86
|
+
orders: params.orders,
|
|
87
|
+
config: params.config,
|
|
88
|
+
additionalFee: params.additionalFee ?? 0
|
|
89
|
+
}),
|
|
90
|
+
...params.query,
|
|
91
|
+
enabled
|
|
92
|
+
});
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
//#endregion
|
|
96
|
+
//#region src/react/queries/market/checkoutOptionsSalesContract.ts
|
|
97
|
+
/**
|
|
98
|
+
* Fetches checkout options for sales contract from the Marketplace API
|
|
99
|
+
*/
|
|
100
|
+
async function fetchCheckoutOptionsSalesContract(params) {
|
|
101
|
+
const { chainId, walletAddress, contractAddress, collectionAddress, items, config } = params;
|
|
102
|
+
const client = getMarketplaceClient(config);
|
|
103
|
+
const apiArgs = {
|
|
104
|
+
chainId: String(chainId),
|
|
105
|
+
wallet: walletAddress,
|
|
106
|
+
contractAddress,
|
|
107
|
+
collectionAddress,
|
|
108
|
+
items
|
|
109
|
+
};
|
|
110
|
+
const result = await client.checkoutOptionsSalesContract(apiArgs);
|
|
111
|
+
return result;
|
|
112
|
+
}
|
|
113
|
+
function getCheckoutOptionsSalesContractQueryKey(params) {
|
|
114
|
+
const apiArgs = {
|
|
115
|
+
chainId: String(params.chainId),
|
|
116
|
+
wallet: params.walletAddress,
|
|
117
|
+
contractAddress: params.contractAddress,
|
|
118
|
+
collectionAddress: params.collectionAddress,
|
|
119
|
+
items: params.items
|
|
120
|
+
};
|
|
121
|
+
return [
|
|
122
|
+
...checkoutKeys.options,
|
|
123
|
+
"salesContract",
|
|
124
|
+
apiArgs
|
|
125
|
+
];
|
|
126
|
+
}
|
|
127
|
+
function checkoutOptionsSalesContractQueryOptions(params) {
|
|
128
|
+
const enabled = Boolean(params.chainId && params.walletAddress && params.contractAddress && params.collectionAddress && params.items?.length && params.config && (params.query?.enabled ?? true));
|
|
129
|
+
return queryOptions({
|
|
130
|
+
queryKey: getCheckoutOptionsSalesContractQueryKey(params),
|
|
131
|
+
queryFn: () => fetchCheckoutOptionsSalesContract({
|
|
132
|
+
chainId: params.chainId,
|
|
133
|
+
walletAddress: params.walletAddress,
|
|
134
|
+
contractAddress: params.contractAddress,
|
|
135
|
+
collectionAddress: params.collectionAddress,
|
|
136
|
+
items: params.items,
|
|
137
|
+
config: params.config
|
|
138
|
+
}),
|
|
139
|
+
...params.query,
|
|
140
|
+
enabled
|
|
141
|
+
});
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
//#endregion
|
|
145
|
+
//#region src/react/queries/market/filters.ts
|
|
146
|
+
/**
|
|
147
|
+
* Fetches collection filters from the Metadata API with optional marketplace filtering
|
|
148
|
+
*/
|
|
149
|
+
async function fetchFilters(params) {
|
|
150
|
+
const { chainId, collectionAddress, showAllFilters, excludePropertyValues, config } = params;
|
|
151
|
+
const metadataClient = getMetadataClient(config);
|
|
152
|
+
const filters = await metadataClient.getTokenMetadataPropertyFilters({
|
|
153
|
+
chainID: chainId.toString(),
|
|
154
|
+
contractAddress: collectionAddress,
|
|
155
|
+
excludeProperties: [],
|
|
156
|
+
excludePropertyValues
|
|
157
|
+
}).then((resp) => resp.filters);
|
|
158
|
+
if (showAllFilters) return filters;
|
|
159
|
+
const queryClient = getQueryClient();
|
|
160
|
+
const marketplaceConfig = await queryClient.fetchQuery(marketplaceConfigOptions(config));
|
|
161
|
+
const collectionFilters = marketplaceConfig.market.collections.find((c) => compareAddress(c.itemsAddress, collectionAddress))?.filterSettings;
|
|
162
|
+
const filterOrder = collectionFilters?.filterOrder;
|
|
163
|
+
const exclusions = collectionFilters?.exclusions;
|
|
164
|
+
let sortedFilters = filters;
|
|
165
|
+
if (filterOrder) sortedFilters = filters.toSorted((a, b) => {
|
|
166
|
+
const aIndex = filterOrder.indexOf(a.name) > -1 ? filterOrder.indexOf(a.name) : filterOrder.length;
|
|
167
|
+
const bIndex = filterOrder.indexOf(b.name) > -1 ? filterOrder.indexOf(b.name) : filterOrder.length;
|
|
168
|
+
return aIndex - bIndex;
|
|
169
|
+
});
|
|
170
|
+
if (exclusions) sortedFilters = sortedFilters.reduce((acc, filter) => {
|
|
171
|
+
const exclusionRule = exclusions.find((rule) => rule.key === filter.name);
|
|
172
|
+
if (!exclusionRule) {
|
|
173
|
+
acc.push(filter);
|
|
174
|
+
return acc;
|
|
175
|
+
}
|
|
176
|
+
if (exclusionRule.condition === FilterCondition.ENTIRE_KEY) return acc;
|
|
177
|
+
if (exclusionRule.condition === FilterCondition.SPECIFIC_VALUE && exclusionRule.value) {
|
|
178
|
+
const filteredValues = filter.values?.filter((value) => value !== exclusionRule.value) || [];
|
|
179
|
+
if (filteredValues.length > 0) acc.push({
|
|
180
|
+
...filter,
|
|
181
|
+
values: filteredValues
|
|
182
|
+
});
|
|
183
|
+
}
|
|
184
|
+
return acc;
|
|
185
|
+
}, []);
|
|
186
|
+
return sortedFilters;
|
|
187
|
+
}
|
|
188
|
+
function getFiltersQueryKey(params) {
|
|
189
|
+
const apiArgs = {
|
|
190
|
+
chainID: String(params.chainId),
|
|
191
|
+
contractAddress: params.collectionAddress,
|
|
192
|
+
excludeProperties: void 0,
|
|
193
|
+
excludePropertyValues: params.excludePropertyValues
|
|
194
|
+
};
|
|
195
|
+
return [
|
|
196
|
+
"filters",
|
|
197
|
+
apiArgs,
|
|
198
|
+
{ showAllFilters: params.showAllFilters }
|
|
199
|
+
];
|
|
200
|
+
}
|
|
201
|
+
function filtersQueryOptions(params) {
|
|
202
|
+
const enabled = Boolean(params.chainId && params.collectionAddress && params.config && (params.query?.enabled ?? true));
|
|
203
|
+
return queryOptions({
|
|
204
|
+
queryKey: getFiltersQueryKey(params),
|
|
205
|
+
queryFn: () => fetchFilters({
|
|
206
|
+
chainId: params.chainId,
|
|
207
|
+
collectionAddress: params.collectionAddress,
|
|
208
|
+
showAllFilters: params.showAllFilters,
|
|
209
|
+
excludePropertyValues: params.excludePropertyValues,
|
|
210
|
+
config: params.config
|
|
211
|
+
}),
|
|
212
|
+
...params.query,
|
|
213
|
+
enabled
|
|
214
|
+
});
|
|
215
|
+
}
|
|
216
|
+
|
|
217
|
+
//#endregion
|
|
218
|
+
export { checkoutOptionsQueryOptions, checkoutOptionsSalesContractQueryOptions, currencyQueryOptions, fetchCheckoutOptions, fetchCheckoutOptionsSalesContract, fetchCurrency, fetchFilters, filtersQueryOptions, getCheckoutOptionsQueryKey, getCheckoutOptionsSalesContractQueryKey, getCurrencyQueryKey, getFiltersQueryKey };
|
|
219
|
+
//# sourceMappingURL=market-DuBpFsDg.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"market-DuBpFsDg.js","names":["params: FetchCurrencyParams","currency","params: CurrencyQueryOptions","params: FetchCheckoutOptionsParams","apiArgs: CheckoutOptionsMarketplaceArgs","params: CheckoutOptionsQueryOptions","params: FetchCheckoutOptionsSalesContractParams","apiArgs: CheckoutOptionsSalesContractArgs","params: CheckoutOptionsSalesContractQueryOptions","params: FetchFiltersParams","params: FiltersQueryOptions"],"sources":["../src/react/queries/market/currency.ts","../src/react/queries/market/checkoutOptions.ts","../src/react/queries/market/checkoutOptionsSalesContract.ts","../src/react/queries/market/filters.ts"],"sourcesContent":["import { queryOptions, skipToken } from '@tanstack/react-query';\nimport type { Address } from 'viem';\nimport type { SdkConfig } from '../../../types';\nimport {\n\ttype Currency,\n\tcurrencyKeys,\n\tgetMarketplaceClient,\n\tgetQueryClient,\n\ttype ValuesOptional,\n} from '../../_internal';\nimport type { StandardQueryOptions } from '../../types/query';\n\nexport interface FetchCurrencyParams {\n\tchainId: number;\n\tcurrencyAddress: Address;\n\tconfig: SdkConfig;\n}\n\n/**\n * Fetches currency details from the marketplace API\n */\nexport async function fetchCurrency(\n\tparams: FetchCurrencyParams,\n): Promise<Currency | undefined> {\n\tconst { chainId, currencyAddress, config } = params;\n\tconst queryClient = getQueryClient();\n\n\tlet currencies = queryClient.getQueryData([...currencyKeys.lists, chainId]) as\n\t\t| Currency[]\n\t\t| undefined;\n\n\tif (!currencies) {\n\t\tconst marketplaceClient = getMarketplaceClient(config);\n\t\tcurrencies = await marketplaceClient\n\t\t\t.listCurrencies({ chainId: String(chainId) })\n\t\t\t.then((resp) => resp.currencies);\n\t}\n\n\tif (!currencies?.length) {\n\t\tthrow new Error('No currencies returned');\n\t}\n\tconst currency = currencies.find(\n\t\t(currency) =>\n\t\t\tcurrency.contractAddress.toLowerCase() === currencyAddress.toLowerCase(),\n\t);\n\n\tif (!currency) {\n\t\tthrow new Error('Currency not found');\n\t}\n\n\treturn currency;\n}\n\nexport type CurrencyQueryOptions = ValuesOptional<FetchCurrencyParams> & {\n\tquery?: StandardQueryOptions;\n};\n\nexport function getCurrencyQueryKey(params: CurrencyQueryOptions) {\n\tconst apiArgs = {\n\t\tchainId: String(params.chainId!),\n\t\tcurrencyAddress: params.currencyAddress!,\n\t};\n\n\treturn [...currencyKeys.details, apiArgs] as const;\n}\n\nexport function currencyQueryOptions(params: CurrencyQueryOptions) {\n\tconst enabled = Boolean(\n\t\tparams.chainId &&\n\t\t\tparams.currencyAddress &&\n\t\t\tparams.config &&\n\t\t\t(params.query?.enabled ?? true),\n\t);\n\n\treturn queryOptions({\n\t\tqueryKey: getCurrencyQueryKey(params),\n\t\tqueryFn:\n\t\t\tparams.chainId && params.currencyAddress\n\t\t\t\t? () =>\n\t\t\t\t\t\tfetchCurrency({\n\t\t\t\t\t\t\t// biome-ignore lint/style/noNonNullAssertion: The enabled check above ensures these are not undefined\n\t\t\t\t\t\t\tchainId: params.chainId!,\n\t\t\t\t\t\t\t// biome-ignore lint/style/noNonNullAssertion: The enabled check above ensures these are not undefined\n\t\t\t\t\t\t\tcurrencyAddress: params.currencyAddress!,\n\t\t\t\t\t\t\t// biome-ignore lint/style/noNonNullAssertion: The enabled check above ensures these are not undefined\n\t\t\t\t\t\t\tconfig: params.config!,\n\t\t\t\t\t\t})\n\t\t\t\t: skipToken,\n\t\t...params.query,\n\t\tenabled,\n\t});\n}\n","import { queryOptions } from '@tanstack/react-query';\nimport type { Address } from 'viem';\nimport type { SdkConfig } from '../../../types';\nimport type { MarketplaceKind } from '../../_internal';\nimport {\n\tcheckoutKeys,\n\tgetMarketplaceClient,\n\ttype QueryKeyArgs,\n\ttype ValuesOptional,\n} from '../../_internal';\nimport type {\n\tCheckoutOptionsMarketplaceArgs,\n\tCheckoutOptionsMarketplaceReturn,\n} from '../../_internal/api/marketplace.gen';\nimport type { StandardQueryOptions } from '../../types/query';\n\nexport interface FetchCheckoutOptionsParams\n\textends Omit<\n\t\tCheckoutOptionsMarketplaceArgs,\n\t\t'chainId' | 'wallet' | 'orders'\n\t> {\n\tchainId: number;\n\twalletAddress: Address;\n\torders: Array<{\n\t\tcollectionAddress: string;\n\t\torderId: string;\n\t\tmarketplace: MarketplaceKind;\n\t}>;\n\tconfig: SdkConfig;\n}\n\n/**\n * Fetches checkout options from the Marketplace API\n */\nexport async function fetchCheckoutOptions(\n\tparams: FetchCheckoutOptionsParams,\n): Promise<CheckoutOptionsMarketplaceReturn> {\n\tconst { chainId, walletAddress, orders, config, additionalFee } = params;\n\n\tconst client = getMarketplaceClient(config);\n\n\tconst apiArgs: CheckoutOptionsMarketplaceArgs = {\n\t\tchainId: String(chainId),\n\t\twallet: walletAddress,\n\t\torders: orders.map((order) => ({\n\t\t\tcontractAddress: order.collectionAddress,\n\t\t\torderId: order.orderId,\n\t\t\tmarketplace: order.marketplace,\n\t\t})),\n\t\tadditionalFee: additionalFee ?? 0,\n\t};\n\n\tconst result = await client.checkoutOptionsMarketplace(apiArgs);\n\treturn result;\n}\n\nexport type CheckoutOptionsQueryOptions =\n\tValuesOptional<FetchCheckoutOptionsParams> & {\n\t\tquery?: StandardQueryOptions;\n\t};\n\nexport function getCheckoutOptionsQueryKey(\n\tparams: CheckoutOptionsQueryOptions,\n) {\n\tconst apiArgs = {\n\t\tchainId: String(params.chainId),\n\t\twallet: params.walletAddress,\n\t\torders: params.orders?.map((order) => ({\n\t\t\tcontractAddress: order.collectionAddress,\n\t\t\torderId: order.orderId,\n\t\t\tmarketplace: order.marketplace,\n\t\t})),\n\t\tadditionalFee: params.additionalFee,\n\t} satisfies QueryKeyArgs<CheckoutOptionsMarketplaceArgs>;\n\n\treturn [...checkoutKeys.options, apiArgs] as const;\n}\n\nexport function checkoutOptionsQueryOptions(\n\tparams: CheckoutOptionsQueryOptions,\n) {\n\tconst enabled = Boolean(\n\t\tparams.chainId &&\n\t\t\tparams.walletAddress &&\n\t\t\tparams.orders?.length &&\n\t\t\tparams.config &&\n\t\t\t(params.query?.enabled ?? true),\n\t);\n\n\treturn queryOptions({\n\t\tqueryKey: getCheckoutOptionsQueryKey(params),\n\t\tqueryFn: () =>\n\t\t\tfetchCheckoutOptions({\n\t\t\t\t// biome-ignore lint/style/noNonNullAssertion: The enabled check above ensures these are not undefined\n\t\t\t\tchainId: params.chainId!,\n\t\t\t\t// biome-ignore lint/style/noNonNullAssertion: The enabled check above ensures these are not undefined\n\t\t\t\twalletAddress: params.walletAddress!,\n\t\t\t\t// biome-ignore lint/style/noNonNullAssertion: The enabled check above ensures these are not undefined\n\t\t\t\torders: params.orders!,\n\t\t\t\t// biome-ignore lint/style/noNonNullAssertion: The enabled check above ensures these are not undefined\n\t\t\t\tconfig: params.config!,\n\t\t\t\tadditionalFee: params.additionalFee ?? 0,\n\t\t\t}),\n\t\t...params.query,\n\t\tenabled,\n\t});\n}\n","import { queryOptions } from '@tanstack/react-query';\nimport type { Address } from 'viem';\nimport type { SdkConfig } from '../../../types';\nimport {\n\tcheckoutKeys,\n\tgetMarketplaceClient,\n\ttype QueryKeyArgs,\n\ttype ValuesOptional,\n} from '../../_internal';\nimport type {\n\tCheckoutOptionsItem,\n\tCheckoutOptionsSalesContractArgs,\n\tCheckoutOptionsSalesContractReturn,\n} from '../../_internal/api/marketplace.gen';\nimport type { StandardQueryOptions } from '../../types/query';\n\nexport interface FetchCheckoutOptionsSalesContractParams\n\textends Omit<CheckoutOptionsSalesContractArgs, 'chainId' | 'wallet'> {\n\tchainId: number;\n\twalletAddress: Address;\n\tcontractAddress: string;\n\tcollectionAddress: string;\n\titems: Array<CheckoutOptionsItem>;\n\tconfig: SdkConfig;\n}\n\n/**\n * Fetches checkout options for sales contract from the Marketplace API\n */\nexport async function fetchCheckoutOptionsSalesContract(\n\tparams: FetchCheckoutOptionsSalesContractParams,\n): Promise<CheckoutOptionsSalesContractReturn> {\n\tconst {\n\t\tchainId,\n\t\twalletAddress,\n\t\tcontractAddress,\n\t\tcollectionAddress,\n\t\titems,\n\t\tconfig,\n\t} = params;\n\n\tconst client = getMarketplaceClient(config);\n\n\tconst apiArgs: CheckoutOptionsSalesContractArgs = {\n\t\tchainId: String(chainId),\n\t\twallet: walletAddress,\n\t\tcontractAddress,\n\t\tcollectionAddress,\n\t\titems,\n\t};\n\n\tconst result = await client.checkoutOptionsSalesContract(apiArgs);\n\treturn result;\n}\n\nexport type CheckoutOptionsSalesContractQueryOptions =\n\tValuesOptional<FetchCheckoutOptionsSalesContractParams> & {\n\t\tquery?: StandardQueryOptions;\n\t};\n\nexport function getCheckoutOptionsSalesContractQueryKey(\n\tparams: CheckoutOptionsSalesContractQueryOptions,\n) {\n\tconst apiArgs = {\n\t\tchainId: String(params.chainId),\n\t\twallet: params.walletAddress,\n\t\tcontractAddress: params.contractAddress,\n\t\tcollectionAddress: params.collectionAddress,\n\t\titems: params.items,\n\t} satisfies QueryKeyArgs<CheckoutOptionsSalesContractArgs>;\n\n\treturn [...checkoutKeys.options, 'salesContract', apiArgs] as const;\n}\n\nexport function checkoutOptionsSalesContractQueryOptions(\n\tparams: CheckoutOptionsSalesContractQueryOptions,\n) {\n\tconst enabled = Boolean(\n\t\tparams.chainId &&\n\t\t\tparams.walletAddress &&\n\t\t\tparams.contractAddress &&\n\t\t\tparams.collectionAddress &&\n\t\t\tparams.items?.length &&\n\t\t\tparams.config &&\n\t\t\t(params.query?.enabled ?? true),\n\t);\n\n\treturn queryOptions({\n\t\tqueryKey: getCheckoutOptionsSalesContractQueryKey(params),\n\t\tqueryFn: () =>\n\t\t\tfetchCheckoutOptionsSalesContract({\n\t\t\t\t// biome-ignore lint/style/noNonNullAssertion: The enabled check above ensures these are not undefined\n\t\t\t\tchainId: params.chainId!,\n\t\t\t\t// biome-ignore lint/style/noNonNullAssertion: The enabled check above ensures these are not undefined\n\t\t\t\twalletAddress: params.walletAddress!,\n\t\t\t\t// biome-ignore lint/style/noNonNullAssertion: The enabled check above ensures these are not undefined\n\t\t\t\tcontractAddress: params.contractAddress!,\n\t\t\t\t// biome-ignore lint/style/noNonNullAssertion: The enabled check above ensures these are not undefined\n\t\t\t\tcollectionAddress: params.collectionAddress!,\n\t\t\t\t// biome-ignore lint/style/noNonNullAssertion: The enabled check above ensures these are not undefined\n\t\t\t\titems: params.items!,\n\t\t\t\t// biome-ignore lint/style/noNonNullAssertion: The enabled check above ensures these are not undefined\n\t\t\t\tconfig: params.config!,\n\t\t\t}),\n\t\t...params.query,\n\t\tenabled,\n\t});\n}\n","import type {\n\tGetTokenMetadataPropertyFiltersArgs,\n\tPropertyFilter,\n} from '@0xsequence/metadata';\nimport { queryOptions } from '@tanstack/react-query';\nimport { FilterCondition, type SdkConfig } from '../../../types';\nimport { compareAddress } from '../../../utils';\nimport {\n\tgetMetadataClient,\n\tgetQueryClient,\n\ttype QueryKeyArgs,\n\ttype ValuesOptional,\n} from '../../_internal';\nimport type { StandardQueryOptions } from '../../types/query';\nimport { marketplaceConfigOptions } from './marketplaceConfig';\n\nexport interface FetchFiltersParams {\n\tchainId: number;\n\tcollectionAddress: string;\n\tshowAllFilters?: boolean;\n\texcludePropertyValues?: boolean;\n\tconfig: SdkConfig;\n}\n\n/**\n * Fetches collection filters from the Metadata API with optional marketplace filtering\n */\nexport async function fetchFilters(\n\tparams: FetchFiltersParams,\n): Promise<PropertyFilter[]> {\n\tconst {\n\t\tchainId,\n\t\tcollectionAddress,\n\t\tshowAllFilters,\n\t\texcludePropertyValues,\n\t\tconfig,\n\t} = params;\n\n\tconst metadataClient = getMetadataClient(config);\n\n\tconst filters = await metadataClient\n\t\t.getTokenMetadataPropertyFilters({\n\t\t\tchainID: chainId.toString(),\n\t\t\tcontractAddress: collectionAddress,\n\t\t\texcludeProperties: [],\n\t\t\texcludePropertyValues,\n\t\t})\n\t\t.then((resp) => resp.filters);\n\n\tif (showAllFilters) return filters;\n\n\tconst queryClient = getQueryClient();\n\tconst marketplaceConfig = await queryClient.fetchQuery(\n\t\tmarketplaceConfigOptions(config),\n\t);\n\tconst collectionFilters = marketplaceConfig.market.collections.find((c) =>\n\t\tcompareAddress(c.itemsAddress, collectionAddress),\n\t)?.filterSettings;\n\n\tconst filterOrder = collectionFilters?.filterOrder;\n\tconst exclusions = collectionFilters?.exclusions;\n\tlet sortedFilters = filters;\n\n\tif (filterOrder) {\n\t\tsortedFilters = filters.toSorted((a, b) => {\n\t\t\tconst aIndex =\n\t\t\t\tfilterOrder.indexOf(a.name) > -1\n\t\t\t\t\t? filterOrder.indexOf(a.name)\n\t\t\t\t\t: filterOrder.length;\n\t\t\tconst bIndex =\n\t\t\t\tfilterOrder.indexOf(b.name) > -1\n\t\t\t\t\t? filterOrder.indexOf(b.name)\n\t\t\t\t\t: filterOrder.length;\n\t\t\treturn aIndex - bIndex;\n\t\t});\n\t}\n\n\tif (exclusions) {\n\t\tsortedFilters = sortedFilters.reduce<PropertyFilter[]>((acc, filter) => {\n\t\t\tconst exclusionRule = exclusions.find((rule) => rule.key === filter.name);\n\n\t\t\tif (!exclusionRule) {\n\t\t\t\tacc.push(filter);\n\t\t\t\treturn acc;\n\t\t\t}\n\n\t\t\tif (exclusionRule.condition === FilterCondition.ENTIRE_KEY) {\n\t\t\t\treturn acc;\n\t\t\t}\n\n\t\t\tif (\n\t\t\t\texclusionRule.condition === FilterCondition.SPECIFIC_VALUE &&\n\t\t\t\texclusionRule.value\n\t\t\t) {\n\t\t\t\tconst filteredValues =\n\t\t\t\t\tfilter.values?.filter((value) => value !== exclusionRule.value) || [];\n\t\t\t\tif (filteredValues.length > 0) {\n\t\t\t\t\tacc.push({ ...filter, values: filteredValues });\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn acc;\n\t\t}, []);\n\t}\n\n\treturn sortedFilters;\n}\n\nexport type FiltersQueryOptions = ValuesOptional<FetchFiltersParams> & {\n\tquery?: StandardQueryOptions;\n};\n\nexport function getFiltersQueryKey(params: FiltersQueryOptions) {\n\tconst apiArgs = {\n\t\tchainID: String(params.chainId),\n\t\tcontractAddress: params.collectionAddress,\n\t\texcludeProperties: undefined,\n\t\texcludePropertyValues: params.excludePropertyValues,\n\t} satisfies QueryKeyArgs<GetTokenMetadataPropertyFiltersArgs>;\n\n\treturn [\n\t\t'filters',\n\t\tapiArgs,\n\t\t{ showAllFilters: params.showAllFilters },\n\t] as const;\n}\n\nexport function filtersQueryOptions(params: FiltersQueryOptions) {\n\tconst enabled = Boolean(\n\t\tparams.chainId &&\n\t\t\tparams.collectionAddress &&\n\t\t\tparams.config &&\n\t\t\t(params.query?.enabled ?? true),\n\t);\n\n\treturn queryOptions({\n\t\tqueryKey: getFiltersQueryKey(params),\n\t\tqueryFn: () =>\n\t\t\tfetchFilters({\n\t\t\t\t// biome-ignore lint/style/noNonNullAssertion: The enabled check above ensures these are not undefined\n\t\t\t\tchainId: params.chainId!,\n\t\t\t\t// biome-ignore lint/style/noNonNullAssertion: The enabled check above ensures these are not undefined\n\t\t\t\tcollectionAddress: params.collectionAddress!,\n\t\t\t\tshowAllFilters: params.showAllFilters,\n\t\t\t\texcludePropertyValues: params.excludePropertyValues,\n\t\t\t\t// biome-ignore lint/style/noNonNullAssertion: The enabled check above ensures these are not undefined\n\t\t\t\tconfig: params.config!,\n\t\t\t}),\n\t\t...params.query,\n\t\tenabled,\n\t});\n}\n"],"mappings":"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"}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
import { Currency, CurrencyStatus, SdkConfig, ValuesOptional } from "./create-config-
|
|
2
|
-
import { StandardQueryOptions } from "./query-
|
|
3
|
-
import * as
|
|
1
|
+
import { Currency, CurrencyStatus, SdkConfig, ValuesOptional } from "./create-config-CFBeD8CB.js";
|
|
2
|
+
import { StandardQueryOptions } from "./query-brXxOcH0.js";
|
|
3
|
+
import * as _tanstack_react_query408 from "@tanstack/react-query";
|
|
4
|
+
import * as _tanstack_react_query30 from "@tanstack/react-query";
|
|
4
5
|
import { Address } from "viem";
|
|
5
6
|
|
|
6
|
-
//#region src/react/queries/currency.d.ts
|
|
7
|
+
//#region src/react/queries/market/currency.d.ts
|
|
7
8
|
interface FetchCurrencyParams {
|
|
8
9
|
chainId: number;
|
|
9
10
|
currencyAddress: Address;
|
|
@@ -16,16 +17,26 @@ declare function fetchCurrency(params: FetchCurrencyParams): Promise<Currency |
|
|
|
16
17
|
type CurrencyQueryOptions = ValuesOptional<FetchCurrencyParams> & {
|
|
17
18
|
query?: StandardQueryOptions;
|
|
18
19
|
};
|
|
19
|
-
declare function
|
|
20
|
-
|
|
20
|
+
declare function getCurrencyQueryKey(params: CurrencyQueryOptions): readonly ["currencies", "details", {
|
|
21
|
+
chainId: string;
|
|
22
|
+
currencyAddress: `0x${string}`;
|
|
23
|
+
}];
|
|
24
|
+
declare function currencyQueryOptions(params: CurrencyQueryOptions): _tanstack_react_query408.UseQueryOptions<Currency | undefined, Error, Currency | undefined, readonly ["currencies", "details", {
|
|
25
|
+
chainId: string;
|
|
26
|
+
currencyAddress: `0x${string}`;
|
|
27
|
+
}]> & {
|
|
28
|
+
initialData?: Currency | _tanstack_react_query408.InitialDataFunction<Currency> | undefined;
|
|
21
29
|
} & {
|
|
22
|
-
queryKey:
|
|
30
|
+
queryKey: readonly ["currencies", "details", {
|
|
31
|
+
chainId: string;
|
|
32
|
+
currencyAddress: `0x${string}`;
|
|
33
|
+
}] & {
|
|
23
34
|
[dataTagSymbol]: Currency | undefined;
|
|
24
35
|
[dataTagErrorSymbol]: Error;
|
|
25
36
|
};
|
|
26
37
|
};
|
|
27
38
|
//#endregion
|
|
28
|
-
//#region src/react/queries/marketCurrencies.d.ts
|
|
39
|
+
//#region src/react/queries/market/marketCurrencies.d.ts
|
|
29
40
|
interface FetchMarketCurrenciesParams {
|
|
30
41
|
chainId: number;
|
|
31
42
|
includeNativeCurrency?: boolean;
|
|
@@ -46,6 +57,8 @@ declare function fetchMarketCurrencies(params: FetchMarketCurrenciesParams): Pro
|
|
|
46
57
|
exchangeRate: number;
|
|
47
58
|
defaultChainCurrency: boolean;
|
|
48
59
|
nativeCurrency: boolean;
|
|
60
|
+
openseaListing: boolean;
|
|
61
|
+
openseaOffer: boolean;
|
|
49
62
|
createdAt: string;
|
|
50
63
|
updatedAt: string;
|
|
51
64
|
deletedAt?: string;
|
|
@@ -53,7 +66,13 @@ declare function fetchMarketCurrencies(params: FetchMarketCurrenciesParams): Pro
|
|
|
53
66
|
type MarketCurrenciesQueryOptions = ValuesOptional<FetchMarketCurrenciesParams> & {
|
|
54
67
|
query?: StandardQueryOptions;
|
|
55
68
|
};
|
|
56
|
-
declare function
|
|
69
|
+
declare function getMarketCurrenciesQueryKey(params: MarketCurrenciesQueryOptions): readonly ["currencies", "list", {
|
|
70
|
+
chainId: string;
|
|
71
|
+
}, {
|
|
72
|
+
readonly includeNativeCurrency: boolean | undefined;
|
|
73
|
+
readonly collectionAddress: `0x${string}` | undefined;
|
|
74
|
+
}];
|
|
75
|
+
declare function marketCurrenciesQueryOptions(params: MarketCurrenciesQueryOptions): _tanstack_react_query30.OmitKeyof<_tanstack_react_query30.UseQueryOptions<{
|
|
57
76
|
contractAddress: string;
|
|
58
77
|
chainId: number;
|
|
59
78
|
status: CurrencyStatus;
|
|
@@ -64,6 +83,8 @@ declare function marketCurrenciesQueryOptions(params: MarketCurrenciesQueryOptio
|
|
|
64
83
|
exchangeRate: number;
|
|
65
84
|
defaultChainCurrency: boolean;
|
|
66
85
|
nativeCurrency: boolean;
|
|
86
|
+
openseaListing: boolean;
|
|
87
|
+
openseaOffer: boolean;
|
|
67
88
|
createdAt: string;
|
|
68
89
|
updatedAt: string;
|
|
69
90
|
deletedAt?: string;
|
|
@@ -78,11 +99,18 @@ declare function marketCurrenciesQueryOptions(params: MarketCurrenciesQueryOptio
|
|
|
78
99
|
exchangeRate: number;
|
|
79
100
|
defaultChainCurrency: boolean;
|
|
80
101
|
nativeCurrency: boolean;
|
|
102
|
+
openseaListing: boolean;
|
|
103
|
+
openseaOffer: boolean;
|
|
81
104
|
createdAt: string;
|
|
82
105
|
updatedAt: string;
|
|
83
106
|
deletedAt?: string;
|
|
84
|
-
}[],
|
|
85
|
-
|
|
107
|
+
}[], readonly ["currencies", "list", {
|
|
108
|
+
chainId: string;
|
|
109
|
+
}, {
|
|
110
|
+
readonly includeNativeCurrency: boolean | undefined;
|
|
111
|
+
readonly collectionAddress: `0x${string}` | undefined;
|
|
112
|
+
}]>, "queryFn"> & {
|
|
113
|
+
queryFn?: _tanstack_react_query30.QueryFunction<{
|
|
86
114
|
contractAddress: string;
|
|
87
115
|
chainId: number;
|
|
88
116
|
status: CurrencyStatus;
|
|
@@ -93,12 +121,24 @@ declare function marketCurrenciesQueryOptions(params: MarketCurrenciesQueryOptio
|
|
|
93
121
|
exchangeRate: number;
|
|
94
122
|
defaultChainCurrency: boolean;
|
|
95
123
|
nativeCurrency: boolean;
|
|
124
|
+
openseaListing: boolean;
|
|
125
|
+
openseaOffer: boolean;
|
|
96
126
|
createdAt: string;
|
|
97
127
|
updatedAt: string;
|
|
98
128
|
deletedAt?: string;
|
|
99
|
-
}[],
|
|
129
|
+
}[], readonly ["currencies", "list", {
|
|
130
|
+
chainId: string;
|
|
131
|
+
}, {
|
|
132
|
+
readonly includeNativeCurrency: boolean | undefined;
|
|
133
|
+
readonly collectionAddress: `0x${string}` | undefined;
|
|
134
|
+
}], never> | undefined;
|
|
100
135
|
} & {
|
|
101
|
-
queryKey:
|
|
136
|
+
queryKey: readonly ["currencies", "list", {
|
|
137
|
+
chainId: string;
|
|
138
|
+
}, {
|
|
139
|
+
readonly includeNativeCurrency: boolean | undefined;
|
|
140
|
+
readonly collectionAddress: `0x${string}` | undefined;
|
|
141
|
+
}] & {
|
|
102
142
|
[dataTagSymbol]: {
|
|
103
143
|
contractAddress: string;
|
|
104
144
|
chainId: number;
|
|
@@ -110,6 +150,8 @@ declare function marketCurrenciesQueryOptions(params: MarketCurrenciesQueryOptio
|
|
|
110
150
|
exchangeRate: number;
|
|
111
151
|
defaultChainCurrency: boolean;
|
|
112
152
|
nativeCurrency: boolean;
|
|
153
|
+
openseaListing: boolean;
|
|
154
|
+
openseaOffer: boolean;
|
|
113
155
|
createdAt: string;
|
|
114
156
|
updatedAt: string;
|
|
115
157
|
deletedAt?: string;
|
|
@@ -118,5 +160,5 @@ declare function marketCurrenciesQueryOptions(params: MarketCurrenciesQueryOptio
|
|
|
118
160
|
};
|
|
119
161
|
};
|
|
120
162
|
//#endregion
|
|
121
|
-
export { CurrencyQueryOptions, FetchCurrencyParams, FetchMarketCurrenciesParams, MarketCurrenciesQueryOptions, currencyQueryOptions, fetchCurrency, fetchMarketCurrencies, marketCurrenciesQueryOptions };
|
|
122
|
-
//# sourceMappingURL=marketCurrencies-
|
|
163
|
+
export { CurrencyQueryOptions, FetchCurrencyParams, FetchMarketCurrenciesParams, MarketCurrenciesQueryOptions, currencyQueryOptions as currencyQueryOptions$1, fetchCurrency as fetchCurrency$1, fetchMarketCurrencies as fetchMarketCurrencies$1, getCurrencyQueryKey as getCurrencyQueryKey$1, getMarketCurrenciesQueryKey as getMarketCurrenciesQueryKey$1, marketCurrenciesQueryOptions as marketCurrenciesQueryOptions$1 };
|
|
164
|
+
//# sourceMappingURL=marketCurrencies-BgwmbGFk.d.ts.map
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { currencyKeys, getMarketplaceClient, getQueryClient } from "./api-GwTR0dBA.js";
|
|
2
|
+
import { OrderbookKind$1 as OrderbookKind } from "./marketplace.gen-906FrJQJ.js";
|
|
3
|
+
import { compareAddress } from "./utils-9ToOvt-c.js";
|
|
4
|
+
import { marketplaceConfigOptions$1 as marketplaceConfigOptions } from "./marketplaceConfig-Bqjo7NYO.js";
|
|
5
|
+
import { queryOptions } from "@tanstack/react-query";
|
|
6
|
+
import { zeroAddress } from "viem";
|
|
7
|
+
|
|
8
|
+
//#region src/react/queries/market/marketCurrencies.ts
|
|
9
|
+
/**
|
|
10
|
+
* Fetches supported currencies for a marketplace
|
|
11
|
+
*/
|
|
12
|
+
async function fetchMarketCurrencies(params) {
|
|
13
|
+
const { chainId, includeNativeCurrency, collectionAddress, config } = params;
|
|
14
|
+
const includeNativeCurrencyOption = includeNativeCurrency ?? true;
|
|
15
|
+
const marketplaceClient = getMarketplaceClient(config);
|
|
16
|
+
let currencies = await marketplaceClient.listCurrencies({ chainId: String(chainId) }).then((resp) => resp.currencies.map((currency) => ({
|
|
17
|
+
...currency,
|
|
18
|
+
contractAddress: currency.contractAddress || zeroAddress
|
|
19
|
+
})));
|
|
20
|
+
if (collectionAddress) {
|
|
21
|
+
const queryClient = getQueryClient();
|
|
22
|
+
const marketplaceConfig = await queryClient.fetchQuery(marketplaceConfigOptions(config));
|
|
23
|
+
const collection = marketplaceConfig.market.collections.find((collection$1) => compareAddress(collection$1.itemsAddress, collectionAddress));
|
|
24
|
+
const isOpensea = collection?.destinationMarketplace === OrderbookKind.opensea;
|
|
25
|
+
const currenciesOptions = marketplaceConfig.market.collections.find((collection$1) => compareAddress(collection$1.itemsAddress, collectionAddress))?.currencyOptions;
|
|
26
|
+
if (currenciesOptions && !isOpensea) currencies = currencies.filter((currency) => currenciesOptions.includes(currency.contractAddress));
|
|
27
|
+
}
|
|
28
|
+
if (!includeNativeCurrencyOption) currencies = currencies.filter((currency) => !currency.nativeCurrency);
|
|
29
|
+
return currencies;
|
|
30
|
+
}
|
|
31
|
+
function getMarketCurrenciesQueryKey(params) {
|
|
32
|
+
const apiArgs = { chainId: String(params.chainId) };
|
|
33
|
+
return [
|
|
34
|
+
...currencyKeys.lists,
|
|
35
|
+
apiArgs,
|
|
36
|
+
{
|
|
37
|
+
includeNativeCurrency: params.includeNativeCurrency,
|
|
38
|
+
collectionAddress: params.collectionAddress
|
|
39
|
+
}
|
|
40
|
+
];
|
|
41
|
+
}
|
|
42
|
+
function marketCurrenciesQueryOptions(params) {
|
|
43
|
+
const enabled = Boolean(params.chainId && params.config && (params.query?.enabled ?? true));
|
|
44
|
+
return queryOptions({
|
|
45
|
+
queryKey: getMarketCurrenciesQueryKey(params),
|
|
46
|
+
queryFn: () => fetchMarketCurrencies({
|
|
47
|
+
chainId: params.chainId,
|
|
48
|
+
config: params.config,
|
|
49
|
+
includeNativeCurrency: params.includeNativeCurrency,
|
|
50
|
+
collectionAddress: params.collectionAddress
|
|
51
|
+
}),
|
|
52
|
+
...params.query,
|
|
53
|
+
enabled
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
//#endregion
|
|
58
|
+
export { fetchMarketCurrencies, getMarketCurrenciesQueryKey, marketCurrenciesQueryOptions };
|
|
59
|
+
//# sourceMappingURL=marketCurrencies-Bolonndy.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"marketCurrencies-Bolonndy.js","names":["params: FetchMarketCurrenciesParams","collection","params: MarketCurrenciesQueryOptions"],"sources":["../src/react/queries/market/marketCurrencies.ts"],"sourcesContent":["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\ttype ListCurrenciesArgs,\n\tOrderbookKind,\n\ttype QueryKeyArgs,\n\ttype ValuesOptional,\n} from '../../_internal';\nimport type { StandardQueryOptions } from '../../types/query';\nimport { marketplaceConfigOptions } from './marketplaceConfig';\n\nexport interface FetchMarketCurrenciesParams {\n\tchainId: number;\n\tincludeNativeCurrency?: boolean;\n\tcollectionAddress?: Address;\n\tconfig: SdkConfig;\n}\n\n/**\n * Fetches supported currencies for a marketplace\n */\nexport async function fetchMarketCurrencies(\n\tparams: FetchMarketCurrenciesParams,\n) {\n\tconst { chainId, includeNativeCurrency, collectionAddress, config } = params;\n\tconst includeNativeCurrencyOption = includeNativeCurrency ?? true;\n\tconst marketplaceClient = getMarketplaceClient(config);\n\n\tlet currencies = await marketplaceClient\n\t\t.listCurrencies({\n\t\t\tchainId: String(chainId),\n\t\t})\n\t\t.then((resp) =>\n\t\t\tresp.currencies.map((currency) => ({\n\t\t\t\t...currency,\n\t\t\t\tcontractAddress: currency.contractAddress || zeroAddress,\n\t\t\t})),\n\t\t);\n\n\tif (collectionAddress) {\n\t\tconst queryClient = getQueryClient();\n\t\tconst marketplaceConfig = await queryClient.fetchQuery(\n\t\t\tmarketplaceConfigOptions(config),\n\t\t);\n\t\tconst collection = marketplaceConfig.market.collections.find((collection) =>\n\t\t\tcompareAddress(collection.itemsAddress, collectionAddress),\n\t\t);\n\t\tconst isOpensea =\n\t\t\tcollection?.destinationMarketplace === OrderbookKind.opensea;\n\n\t\tconst currenciesOptions = marketplaceConfig.market.collections.find(\n\t\t\t(collection) =>\n\t\t\t\tcompareAddress(collection.itemsAddress, collectionAddress),\n\t\t)?.currencyOptions;\n\n\t\t// Filter currencies based on collection currency options\n\t\t// Skip filtering for OpenSea as it uses API-based currency support flags\n\t\tif (currenciesOptions && !isOpensea) {\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 (!includeNativeCurrencyOption) {\n\t\tcurrencies = currencies.filter((currency) => !currency.nativeCurrency);\n\t}\n\n\treturn currencies;\n}\n\nexport type MarketCurrenciesQueryOptions =\n\tValuesOptional<FetchMarketCurrenciesParams> & {\n\t\tquery?: StandardQueryOptions;\n\t};\n\nexport function getMarketCurrenciesQueryKey(\n\tparams: MarketCurrenciesQueryOptions,\n) {\n\tconst apiArgs = {\n\t\tchainId: String(params.chainId),\n\t} satisfies QueryKeyArgs<ListCurrenciesArgs>;\n\n\treturn [\n\t\t...currencyKeys.lists,\n\t\tapiArgs,\n\t\t{\n\t\t\tincludeNativeCurrency: params.includeNativeCurrency,\n\t\t\tcollectionAddress: params.collectionAddress,\n\t\t},\n\t] as const;\n}\n\nexport function marketCurrenciesQueryOptions(\n\tparams: MarketCurrenciesQueryOptions,\n) {\n\tconst enabled = Boolean(\n\t\tparams.chainId && params.config && (params.query?.enabled ?? true),\n\t);\n\n\treturn queryOptions({\n\t\tqueryKey: getMarketCurrenciesQueryKey(params),\n\t\tqueryFn: () =>\n\t\t\tfetchMarketCurrencies({\n\t\t\t\t// biome-ignore lint/style/noNonNullAssertion: The enabled check above ensures these are not undefined\n\t\t\t\tchainId: params.chainId!,\n\t\t\t\t// biome-ignore lint/style/noNonNullAssertion: The enabled check above ensures these are not undefined\n\t\t\t\tconfig: params.config!,\n\t\t\t\tincludeNativeCurrency: params.includeNativeCurrency,\n\t\t\t\tcollectionAddress: params.collectionAddress,\n\t\t\t}),\n\t\t...params.query,\n\t\tenabled,\n\t});\n}\n"],"mappings":";;;;;;;;;;;AA0BA,eAAsB,sBACrBA,QACC;CACD,MAAM,EAAE,SAAS,uBAAuB,mBAAmB,QAAQ,GAAG;CACtE,MAAM,8BAA8B,yBAAyB;CAC7D,MAAM,oBAAoB,qBAAqB,OAAO;CAEtD,IAAI,aAAa,MAAM,kBACrB,eAAe,EACf,SAAS,OAAO,QAAQ,CACxB,EAAC,CACD,KAAK,CAAC,SACN,KAAK,WAAW,IAAI,CAAC,cAAc;EAClC,GAAG;EACH,iBAAiB,SAAS,mBAAmB;CAC7C,GAAE,CACH;AAEF,KAAI,mBAAmB;EACtB,MAAM,cAAc,gBAAgB;EACpC,MAAM,oBAAoB,MAAM,YAAY,WAC3C,yBAAyB,OAAO,CAChC;EACD,MAAM,aAAa,kBAAkB,OAAO,YAAY,KAAK,CAACC,iBAC7D,eAAeA,aAAW,cAAc,kBAAkB,CAC1D;EACD,MAAM,YACL,YAAY,2BAA2B,cAAc;EAEtD,MAAM,oBAAoB,kBAAkB,OAAO,YAAY,KAC9D,CAACA,iBACA,eAAeA,aAAW,cAAc,kBAAkB,CAC3D,EAAE;AAIH,MAAI,sBAAsB,UACzB,cAAa,WAAW,OAAO,CAAC,aAC/B,kBAAkB,SAAS,SAAS,gBAAgB,CACpD;CAEF;AAED,MAAK,4BACJ,cAAa,WAAW,OAAO,CAAC,cAAc,SAAS,eAAe;AAGvE,QAAO;AACP;AAOD,SAAgB,4BACfC,QACC;CACD,MAAM,UAAU,EACf,SAAS,OAAO,OAAO,QAAQ,CAC/B;AAED,QAAO;EACN,GAAG,aAAa;EAChB;EACA;GACC,uBAAuB,OAAO;GAC9B,mBAAmB,OAAO;EAC1B;CACD;AACD;AAED,SAAgB,6BACfA,QACC;CACD,MAAM,UAAU,QACf,OAAO,WAAW,OAAO,WAAW,OAAO,OAAO,WAAW,MAC7D;AAED,QAAO,aAAa;EACnB,UAAU,4BAA4B,OAAO;EAC7C,SAAS,MACR,sBAAsB;GAErB,SAAS,OAAO;GAEhB,QAAQ,OAAO;GACf,uBAAuB,OAAO;GAC9B,mBAAmB,OAAO;EAC1B,EAAC;EACH,GAAG,OAAO;EACV;CACA,EAAC;AACF"}
|