@0xsequence/marketplace-sdk 1.0.0 → 1.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (477) hide show
  1. package/.changeset/honest-peas-arrive.md +5 -0
  2. package/.changeset/real-tips-stick.md +8 -0
  3. package/.changeset/tall-pandas-wear.md +8 -0
  4. package/.storybook/main.ts +1 -1
  5. package/.storybook/preview.tsx +0 -1
  6. package/CHANGELOG.md +84 -13
  7. package/dist/BellIcon-ByhygxBO.js +45 -0
  8. package/dist/BellIcon-ByhygxBO.js.map +1 -0
  9. package/dist/{BellIcon-Cb9YEUzJ.js → CartIcon-Bt3rQYGk.js} +10 -49
  10. package/dist/CartIcon-Bt3rQYGk.js.map +1 -0
  11. package/dist/CollectibleCard-CVpdgXA8.d.ts +8 -0
  12. package/dist/{_internal-DslqcNC1.js → _internal-DkS2VUn5.js} +1 -1
  13. package/dist/{_internal-DslqcNC1.js.map → _internal-DkS2VUn5.js.map} +1 -1
  14. package/dist/abi-fa-o9gH3.js +134 -0
  15. package/dist/abi-fa-o9gH3.js.map +1 -0
  16. package/dist/{alien_swap-DJ98gZQp.js → alien_swap-DoY6XfMA.js} +1 -1
  17. package/dist/{alien_swap-DJ98gZQp.js.map → alien_swap-DoY6XfMA.js.map} +1 -1
  18. package/dist/{api-BmEQfSQa.js → api-BoO0V5aJ.js} +11 -4
  19. package/dist/api-BoO0V5aJ.js.map +1 -0
  20. package/dist/{aqua-xyz-n1PcCCZ0.js → aqua-xyz-BBDxnG14.js} +1 -1
  21. package/dist/{aqua-xyz-n1PcCCZ0.js.map → aqua-xyz-BBDxnG14.js.map} +1 -1
  22. package/dist/{aura-Bevk_YkS.js → aura-DGx2zwvF.js} +1 -1
  23. package/dist/{aura-Bevk_YkS.js.map → aura-DGx2zwvF.js.map} +1 -1
  24. package/dist/{blur-B5sHErx5.js → blur-D8GKrRrq.js} +1 -1
  25. package/dist/{blur-B5sHErx5.js.map → blur-D8GKrRrq.js.map} +1 -1
  26. package/dist/builder-api-BFuZNOaN.js.map +1 -1
  27. package/dist/builder.gen-B9wR2nvF.js.map +1 -1
  28. package/dist/{coinbase-D30W-lxA.js → coinbase-DOry4PXY.js} +1 -1
  29. package/dist/{coinbase-D30W-lxA.js.map → coinbase-DOry4PXY.js.map} +1 -1
  30. package/dist/collectibles-C_H8jMGH.js +358 -0
  31. package/dist/collectibles-C_H8jMGH.js.map +1 -0
  32. package/dist/collections-CKummc-R.js +249 -0
  33. package/dist/collections-CKummc-R.js.map +1 -0
  34. package/dist/components-CosnX7F9.js +119 -0
  35. package/dist/components-CosnX7F9.js.map +1 -0
  36. package/dist/{contracts-DPHFT2TA.js → contracts-BP_0vX48.js} +4 -5
  37. package/dist/{contracts-DPHFT2TA.js.map → contracts-BP_0vX48.js.map} +1 -1
  38. package/dist/{create-config-6uynwTeb.js → create-config-CIfejoCk.js} +6 -11
  39. package/dist/create-config-CIfejoCk.js.map +1 -0
  40. package/dist/{create-config-lLSrnkbb.d.ts → create-config-ZOB7i4ZJ.d.ts} +135 -37
  41. package/dist/{element-C2NJexro.js → element-ciybd_VF.js} +1 -1
  42. package/dist/{element-C2NJexro.js.map → element-ciybd_VF.js.map} +1 -1
  43. package/dist/filters-V-V8Dn8f.d.ts +60 -0
  44. package/dist/{foundation-QgY1lvUj.js → foundation-Bq4lRz4x.js} +1 -1
  45. package/dist/{foundation-QgY1lvUj.js.map → foundation-Bq4lRz4x.js.map} +1 -1
  46. package/dist/index-BOiHR01C.d.ts +106 -0
  47. package/dist/index-BZIJTQT0.d.ts +121 -0
  48. package/dist/index-BeRV-7AX.d.ts +55 -0
  49. package/dist/{index-DonXiSg2.d.ts → index-Bsx6XsC2.d.ts} +117 -70
  50. package/dist/{index-BGJXqdg6.d.ts → index-BtWMBHeP.d.ts} +13 -9
  51. package/dist/{index-CtF7EE2z.d.ts → index-Bxzjy0d1.d.ts} +1 -1
  52. package/dist/{index-ChSKFOMx.d.ts → index-C-745li7.d.ts} +1 -1
  53. package/dist/{index-CY5UEX4h.d.ts → index-C4MUKshG.d.ts} +2 -2
  54. package/dist/{index-C7xKVIr4.d.ts → index-CPzvNmq9.d.ts} +37 -37
  55. package/dist/{index-ByW08-Z7.d.ts → index-CS65jqOq.d.ts} +2 -2
  56. package/dist/index-CZUtOTjh.d.ts +1 -0
  57. package/dist/index-CnEbXm_t.d.ts +130 -0
  58. package/dist/{index-ThUIs-Sy.d.ts → index-CxA34wP1.d.ts} +37 -23
  59. package/dist/{index-CIkpYltz.d.ts → index-CxpFwGvR.d.ts} +3 -3
  60. package/dist/{index-QxxS6f9r.d.ts → index-D9LPlmbC.d.ts} +1 -1
  61. package/dist/{index-CQnGIGb5.d.ts → index-DFEnA6Wa.d.ts} +44 -33
  62. package/dist/{index-PSPpUxCE.d.ts → index-DNNUeZEq.d.ts} +4 -4
  63. package/dist/{index-Dpyp7fQz.d.ts → index-DUXfvhxs.d.ts} +12 -12
  64. package/dist/index-DW3njUfb.d.ts +1 -0
  65. package/dist/index-DWt6yrIG.d.ts +64 -0
  66. package/dist/index-DewGsFz5.d.ts +1 -0
  67. package/dist/index-DmudgrsN.d.ts +495 -0
  68. package/dist/{index-DNU9xoGK.d.ts → index-DqXd1EeB.d.ts} +5 -5
  69. package/dist/{index-DX0Vm8HY.d.ts → index-DwKr18CI.d.ts} +1 -1
  70. package/dist/{index-D71J5Ghd.d.ts → index-NlPMNcqh.d.ts} +99 -99
  71. package/dist/index-Stm5u0I0.d.ts +53 -0
  72. package/dist/index-U-zp70of.d.ts +74 -0
  73. package/dist/index.d.ts +8 -8
  74. package/dist/index.js +13 -12
  75. package/dist/inventory-Dd7TazvZ.js +72 -0
  76. package/dist/inventory-Dd7TazvZ.js.map +1 -0
  77. package/dist/listBalances-BxpxBCvn.js +57 -0
  78. package/dist/listBalances-BxpxBCvn.js.map +1 -0
  79. package/dist/listCollectiblesPaginated-Cy2_qEZA.d.ts +327 -0
  80. package/dist/{listCollections-Bbzbz7qW.d.ts → listCollections-BB9FxKj2.d.ts} +264 -137
  81. package/dist/{looks-rare-CMVPny4v.js → looks-rare-6H--x3AM.js} +1 -1
  82. package/dist/{looks-rare-CMVPny4v.js.map → looks-rare-6H--x3AM.js.map} +1 -1
  83. package/dist/lowestListing-Cbsi6M1K.d.ts +465 -0
  84. package/dist/{magic-eden-IrWp2ZXk.js → magic-eden-BoxEQ1Li.js} +1 -1
  85. package/dist/{magic-eden-IrWp2ZXk.js.map → magic-eden-BoxEQ1Li.js.map} +1 -1
  86. package/dist/{manifold-DeOE-p2G.js → manifold-DycKsljb.js} +1 -1
  87. package/dist/{manifold-DeOE-p2G.js.map → manifold-DycKsljb.js.map} +1 -1
  88. package/dist/market-C3HV-awQ.js +209 -0
  89. package/dist/market-C3HV-awQ.js.map +1 -0
  90. package/dist/{marketCurrencies-CmOMCCOr.d.ts → marketCurrencies-Bpw1bIO0.d.ts} +46 -15
  91. package/dist/marketCurrencies-sKrTX0og.js +53 -0
  92. package/dist/marketCurrencies-sKrTX0og.js.map +1 -0
  93. package/dist/{marketplace-B5Z8G03R.js → marketplace-NQB-sEQL.js} +1 -1
  94. package/dist/{marketplace-B5Z8G03R.js.map → marketplace-NQB-sEQL.js.map} +1 -1
  95. package/dist/{marketplace-logos-D8t86gsW.js → marketplace-logos-D4dS1Foy.js} +21 -21
  96. package/dist/marketplace-logos-D4dS1Foy.js.map +1 -0
  97. package/dist/{marketplace.gen-JzNYpM0U.js → marketplace.gen-ksUafDqS.js} +56 -5
  98. package/dist/marketplace.gen-ksUafDqS.js.map +1 -0
  99. package/dist/{marketplaceConfig-sNh-MA5M.js → marketplaceConfig-UHQMM9fq.js} +9 -10
  100. package/dist/marketplaceConfig-UHQMM9fq.js.map +1 -0
  101. package/dist/{mintify-DG3GrljJ.js → mintify-Dyqyo8jQ.js} +1 -1
  102. package/dist/{mintify-DG3GrljJ.js.map → mintify-Dyqyo8jQ.js.map} +1 -1
  103. package/dist/{network-DnBEe1Ur.js → network-DtmiMhcg.js} +2 -2
  104. package/dist/network-DtmiMhcg.js.map +1 -0
  105. package/dist/networkconfigToWagmiChain-DbUf6HiO.js +15 -0
  106. package/dist/networkconfigToWagmiChain-DbUf6HiO.js.map +1 -0
  107. package/dist/{nftx-B3LH-ZYM.js → nftx-2LbFjj9Q.js} +1 -1
  108. package/dist/{nftx-B3LH-ZYM.js.map → nftx-2LbFjj9Q.js.map} +1 -1
  109. package/dist/{okx-CRFLrT3Z.js → okx-CBEWJNsR.js} +1 -1
  110. package/dist/{okx-CRFLrT3Z.js.map → okx-CBEWJNsR.js.map} +1 -1
  111. package/dist/{open-sea-cOpfl366.js → open-sea-Dxntz_PA.js} +1 -1
  112. package/dist/{open-sea-cOpfl366.js.map → open-sea-Dxntz_PA.js.map} +1 -1
  113. package/dist/orders-DnFfZAXV.js +462 -0
  114. package/dist/orders-DnFfZAXV.js.map +1 -0
  115. package/dist/{primary-sale-CLjXRrDj.js → primary-sale-1u4QlPdA.js} +1 -1
  116. package/dist/{primary-sale-CLjXRrDj.js.map → primary-sale-1u4QlPdA.js.map} +1 -1
  117. package/dist/primary-sales-Dmsi6bqj.js +114 -0
  118. package/dist/primary-sales-Dmsi6bqj.js.map +1 -0
  119. package/dist/{query-BTe7Wkrs.d.ts → query-BWbCsXLY.d.ts} +1 -1
  120. package/dist/{rarible-guwUx4cn.js → rarible-CS0SupHr.js} +1 -1
  121. package/dist/{rarible-guwUx4cn.js.map → rarible-CS0SupHr.js.map} +1 -1
  122. package/dist/react/_internal/api/index.d.ts +2 -2
  123. package/dist/react/_internal/api/index.js +5 -5
  124. package/dist/react/_internal/databeat/index.d.ts +1 -1
  125. package/dist/react/_internal/databeat/index.js +35 -21
  126. package/dist/react/_internal/index.d.ts +2 -2
  127. package/dist/react/_internal/index.js +9 -8
  128. package/dist/react/_internal/wagmi/index.d.ts +1 -1
  129. package/dist/react/_internal/wagmi/index.js +4 -3
  130. package/dist/react/hooks/config/index.d.ts +8 -8
  131. package/dist/react/hooks/config/index.js +35 -21
  132. package/dist/react/hooks/contracts/index.d.ts +6 -6
  133. package/dist/react/hooks/contracts/index.js +13 -12
  134. package/dist/react/hooks/data/collectibles/index.d.ts +10 -4
  135. package/dist/react/hooks/data/collectibles/index.js +35 -21
  136. package/dist/react/hooks/data/collections/index.d.ts +10 -10
  137. package/dist/react/hooks/data/collections/index.js +35 -21
  138. package/dist/react/hooks/data/index.d.ts +37 -29
  139. package/dist/react/hooks/data/index.js +36 -22
  140. package/dist/react/hooks/data/inventory/index.d.ts +36 -28
  141. package/dist/react/hooks/data/inventory/index.js +35 -21
  142. package/dist/react/hooks/data/market/index.d.ts +11 -11
  143. package/dist/react/hooks/data/market/index.js +35 -21
  144. package/dist/react/hooks/data/orders/index.d.ts +11 -11
  145. package/dist/react/hooks/data/orders/index.js +36 -22
  146. package/dist/react/hooks/data/primary-sales/index.d.ts +36 -28
  147. package/dist/react/hooks/data/primary-sales/index.js +35 -21
  148. package/dist/react/hooks/data/tokens/index.d.ts +4 -4
  149. package/dist/react/hooks/data/tokens/index.js +35 -21
  150. package/dist/react/hooks/index.d.ts +37 -29
  151. package/dist/react/hooks/index.js +36 -22
  152. package/dist/react/hooks/transactions/index.d.ts +2 -2
  153. package/dist/react/hooks/transactions/index.js +35 -21
  154. package/dist/react/hooks/ui/index.d.ts +4 -4
  155. package/dist/react/hooks/ui/index.js +35 -21
  156. package/dist/react/hooks/utils/index.d.ts +37 -29
  157. package/dist/react/hooks/utils/index.js +36 -22
  158. package/dist/react/index.d.ts +37 -29
  159. package/dist/react/index.js +36 -22
  160. package/dist/react/queries/collectibles/index.d.ts +11 -0
  161. package/dist/react/queries/collectibles/index.js +23 -0
  162. package/dist/react/queries/collections/index.d.ts +11 -0
  163. package/dist/react/queries/collections/index.js +20 -0
  164. package/dist/react/queries/index.d.ts +24 -16
  165. package/dist/react/queries/index.js +29 -17
  166. package/dist/react/queries/inventory/index.d.ts +3 -0
  167. package/dist/react/queries/inventory/index.js +22 -0
  168. package/dist/react/queries/market/index.d.ts +6 -0
  169. package/dist/react/queries/market/index.js +22 -0
  170. package/dist/react/queries/orders/index.d.ts +11 -0
  171. package/dist/react/queries/orders/index.js +13 -0
  172. package/dist/react/queries/primary-sales/index.d.ts +4 -0
  173. package/dist/react/queries/primary-sales/index.js +13 -0
  174. package/dist/react/queries/tokens/index.d.ts +5 -0
  175. package/dist/react/queries/tokens/index.js +14 -0
  176. package/dist/react/queries/utils/index.d.ts +4 -0
  177. package/dist/react/queries/utils/index.js +22 -0
  178. package/dist/react/ssr/index.d.ts +7 -7
  179. package/dist/react/ssr/index.js +9 -8
  180. package/dist/react/ssr/index.js.map +1 -1
  181. package/dist/react/ui/components/marketplace-collectible-card/components/footer/components/index.d.ts +3 -0
  182. package/dist/react/ui/components/marketplace-collectible-card/components/footer/components/index.js +22 -0
  183. package/dist/react/ui/components/marketplace-collectible-card/components/footer/index.d.ts +54 -0
  184. package/dist/react/ui/components/marketplace-collectible-card/components/footer/index.js +40 -0
  185. package/dist/react/ui/components/marketplace-collectible-card/index.d.ts +5 -5
  186. package/dist/react/ui/components/marketplace-collectible-card/index.js +35 -21
  187. package/dist/react/ui/components/marketplace-collectible-card/utils/index.d.ts +2 -2
  188. package/dist/react/ui/components/marketplace-collectible-card/utils/index.js +9 -8
  189. package/dist/react/ui/components/marketplace-logos/index.d.ts +21 -21
  190. package/dist/react/ui/components/marketplace-logos/index.js +1 -1
  191. package/dist/react/ui/icons/index.js +13 -11
  192. package/dist/react/ui/index.d.ts +5 -5
  193. package/dist/react/ui/index.js +35 -21
  194. package/dist/react/ui/modals/_internal/components/actionModal/index.d.ts +2 -2
  195. package/dist/react/ui/modals/_internal/components/actionModal/index.js +35 -21
  196. package/dist/react/utils/index.d.ts +3 -3
  197. package/dist/react/utils/index.js +5 -5
  198. package/dist/{react-Ceq8mamy.js → react-DE852KeT.js} +2111 -1002
  199. package/dist/react-DE852KeT.js.map +1 -0
  200. package/dist/{sequence-Dt2Xo7Fa.js → sequence-paCCener.js} +1 -1
  201. package/dist/{sequence-Dt2Xo7Fa.js.map → sequence-paCCener.js.map} +1 -1
  202. package/dist/styles/index.css +200 -24
  203. package/dist/{sudo-swap-CGoARONs.js → sudo-swap-9rH2EgfT.js} +1 -1
  204. package/dist/{sudo-swap-CGoARONs.js.map → sudo-swap-9rH2EgfT.js.map} +1 -1
  205. package/dist/{super-rare-NeQtZjcn.js → super-rare-DHIuWtRw.js} +1 -1
  206. package/dist/{super-rare-NeQtZjcn.js.map → super-rare-DHIuWtRw.js.map} +1 -1
  207. package/dist/{token-D9gZVqbX.js → token-Cv7l2ZaL.js} +1 -1
  208. package/dist/{token-D9gZVqbX.js.map → token-Cv7l2ZaL.js.map} +1 -1
  209. package/dist/tokenBalances-ibDerNmM.js +63 -0
  210. package/dist/tokenBalances-ibDerNmM.js.map +1 -0
  211. package/dist/tokenSupplies-Bfe8RHzI.d.ts +272 -0
  212. package/dist/tokens-cGxMadd8.js +194 -0
  213. package/dist/tokens-cGxMadd8.js.map +1 -0
  214. package/dist/{transaction-CC2KxNF6.js → transaction-DZUW5RHu.js} +2 -8
  215. package/dist/transaction-DZUW5RHu.js.map +1 -0
  216. package/dist/types/index.d.ts +2 -2
  217. package/dist/types/index.js +2 -2
  218. package/dist/{types-G2PWxiJR.js → types-B_-cnkcP.js} +1 -1
  219. package/dist/types-B_-cnkcP.js.map +1 -0
  220. package/dist/{types-BlCa0TVE.d.ts → types-D2TJ1dwv.d.ts} +19 -10
  221. package/dist/utils/abi/index.d.ts +5 -5
  222. package/dist/utils/abi/index.js +5 -5
  223. package/dist/utils/abi/marketplace/index.d.ts +1 -1
  224. package/dist/utils/abi/marketplace/index.js +1 -1
  225. package/dist/utils/abi/primary-sale/index.d.ts +1 -1
  226. package/dist/utils/abi/primary-sale/index.js +1 -1
  227. package/dist/utils/abi/token/index.d.ts +1 -1
  228. package/dist/utils/abi/token/index.js +1 -1
  229. package/dist/utils/index.d.ts +7 -7
  230. package/dist/utils/index.js +12 -11
  231. package/dist/utils-BCgNhBFR.js +112 -0
  232. package/dist/utils-BCgNhBFR.js.map +1 -0
  233. package/dist/{utils-CKJd-CRf.js → utils-BfpDVibN.js} +7 -24
  234. package/dist/utils-BfpDVibN.js.map +1 -0
  235. package/dist/{utils-wquIhK6T.js → utils-BqxcalL2.js} +2 -2
  236. package/dist/utils-BqxcalL2.js.map +1 -0
  237. package/dist/waitForTransactionReceipt-DieAnV52.js +25 -0
  238. package/dist/waitForTransactionReceipt-DieAnV52.js.map +1 -0
  239. package/dist/{x2y2-CQdg24VP.js → x2y2-45WDooeh.js} +1 -1
  240. package/dist/{x2y2-CQdg24VP.js.map → x2y2-45WDooeh.js.map} +1 -1
  241. package/dist/{zora-DdEydy4L.js → zora-CbeBoLvQ.js} +1 -1
  242. package/dist/{zora-DdEydy4L.js.map → zora-CbeBoLvQ.js.map} +1 -1
  243. package/package.json +43 -38
  244. package/src/react/_internal/api/__mocks__/marketplace.msw.ts +2 -0
  245. package/src/react/_internal/api/marketplace.gen.ts +1730 -2383
  246. package/src/react/_internal/api/query-keys.ts +16 -0
  247. package/src/react/_internal/api/services.ts +1 -1
  248. package/src/react/_internal/databeat/types.ts +1 -0
  249. package/src/react/_internal/types.ts +14 -0
  250. package/src/react/_internal/utils.ts +3 -0
  251. package/src/react/_internal/wagmi/__tests__/create-config.test.ts +19 -8
  252. package/src/react/_internal/wagmi/create-config.ts +6 -17
  253. package/src/react/hooks/config/__snapshots__/useMarketplaceConfig.test.tsx.snap +4 -4
  254. package/src/react/hooks/config/useMarketplaceConfig.tsx +1 -1
  255. package/src/react/hooks/data/collectibles/useBalanceOfCollectible.laos.test.tsx +2 -2
  256. package/src/react/hooks/data/collectibles/useBalanceOfCollectible.tsx +1 -1
  257. package/src/react/hooks/data/collectibles/useCollectible.tsx +1 -1
  258. package/src/react/hooks/data/collectibles/useCountOfCollectables.tsx +1 -1
  259. package/src/react/hooks/data/collectibles/useListCollectibleActivities.tsx +1 -1
  260. package/src/react/hooks/data/collectibles/useListCollectibles.tsx +1 -1
  261. package/src/react/hooks/data/collectibles/useListCollectiblesPaginated.tsx +1 -1
  262. package/src/react/hooks/data/collectibles/useTokenBalances.test.tsx +151 -0
  263. package/src/react/hooks/data/collectibles/useTokenBalances.tsx +47 -0
  264. package/src/react/hooks/data/collections/__snapshots__/useListCollections.test.tsx.snap +6 -6
  265. package/src/react/hooks/data/collections/useCollection.tsx +1 -1
  266. package/src/react/hooks/data/collections/useCollectionBalanceDetails.tsx +1 -1
  267. package/src/react/hooks/data/collections/useCollectionDetails.ts +1 -1
  268. package/src/react/hooks/data/collections/useListCollectionActivities.tsx +1 -1
  269. package/src/react/hooks/data/collections/useListCollections.tsx +1 -1
  270. package/src/react/hooks/data/inventory/useInventory.test.tsx +3 -98
  271. package/src/react/hooks/data/inventory/useInventory.tsx +3 -3
  272. package/src/react/hooks/data/market/useCurrency.tsx +1 -1
  273. package/src/react/hooks/data/market/useListMarketCardData.tsx +8 -1
  274. package/src/react/hooks/data/market/useMarketCurrencies.tsx +1 -1
  275. package/src/react/hooks/data/orders/index.ts +4 -0
  276. package/src/react/hooks/data/orders/useCountItemsOrdersForCollection.tsx +90 -0
  277. package/src/react/hooks/data/orders/useCountListingsForCollectible.tsx +1 -1
  278. package/src/react/hooks/data/orders/useCountOffersForCollectible.tsx +1 -1
  279. package/src/react/hooks/data/orders/useFloorOrder.tsx +1 -1
  280. package/src/react/hooks/data/orders/useGetCountOfFilteredOrders.tsx +39 -0
  281. package/src/react/hooks/data/orders/useHighestOffer.tsx +1 -1
  282. package/src/react/hooks/data/orders/useListItemsOrdersForCollection.tsx +93 -0
  283. package/src/react/hooks/data/orders/useListItemsOrdersForCollectionPaginated.tsx +108 -0
  284. package/src/react/hooks/data/orders/useListListingsForCollectible.tsx +1 -1
  285. package/src/react/hooks/data/orders/useListOffersForCollectible.tsx +70 -45
  286. package/src/react/hooks/data/orders/useLowestListing.tsx +1 -1
  287. package/src/react/hooks/data/primary-sales/useGetCountOfPrimarySaleItems.tsx +2 -2
  288. package/src/react/hooks/data/primary-sales/useList1155ShopCardData.tsx +21 -37
  289. package/src/react/hooks/data/primary-sales/useList721ShopCardData.tsx +14 -3
  290. package/src/react/hooks/data/primary-sales/useListPrimarySaleItems.tsx +1 -1
  291. package/src/react/hooks/data/tokens/useGetTokenRanges.tsx +2 -2
  292. package/src/react/hooks/data/tokens/useListBalances.tsx +2 -2
  293. package/src/react/hooks/data/tokens/useListTokenMetadata.tsx +1 -1
  294. package/src/react/hooks/data/tokens/useSearchTokenMetadata.tsx +5 -2
  295. package/src/react/hooks/data/tokens/useTokenSupplies.ts +1 -1
  296. package/src/react/hooks/transactions/useCancelOrder.test.tsx +7 -4
  297. package/src/react/hooks/transactions/useCancelOrder.tsx +2 -1
  298. package/src/react/hooks/transactions/useCancelTransactionSteps.tsx +2 -2
  299. package/src/react/hooks/transactions/useGenerateCancelTransaction.test.tsx +1 -0
  300. package/src/react/hooks/transactions/useGenerateListingTransaction.test.tsx +13 -0
  301. package/src/react/hooks/transactions/useGenerateOfferTransaction.test.tsx +1 -0
  302. package/src/react/hooks/transactions/useGenerateSellTransaction.test.tsx +6 -0
  303. package/src/react/hooks/transactions/useProcessStep.test.tsx +2 -2
  304. package/src/react/hooks/ui/useFilterState.tsx +72 -2
  305. package/src/react/hooks/ui/useFilters.tsx +1 -1
  306. package/src/react/hooks/utils/__tests__/useEnsureCorrectChain.test.tsx +75 -0
  307. package/src/react/hooks/utils/index.ts +0 -1
  308. package/src/react/hooks/utils/useCheckoutOptions.tsx +2 -2
  309. package/src/react/hooks/utils/useCheckoutOptionsSalesContract.tsx +1 -1
  310. package/src/react/hooks/utils/useComparePrices.tsx +1 -1
  311. package/src/react/hooks/utils/useConvertPriceToUSD.tsx +1 -1
  312. package/src/react/hooks/utils/useEnsureCorrectChain.ts +31 -34
  313. package/src/react/providers/analytics-provider.tsx +45 -0
  314. package/src/react/providers/index.tsx +33 -46
  315. package/src/react/providers/modal-provider.tsx +15 -4
  316. package/src/react/queries/{__tests__ → collectibles/__tests__}/balanceOfCollectible.laos.test.ts +4 -4
  317. package/src/react/queries/collectibles/__tests__/tokenBalances.laos.test.ts +123 -0
  318. package/src/react/queries/{balanceOfCollectible.ts → collectibles/balanceOfCollectible.ts} +26 -4
  319. package/src/react/queries/{collectible.ts → collectibles/collectible.ts} +20 -5
  320. package/src/react/queries/{countOfCollectables.ts → collectibles/countOfCollectables.ts} +32 -6
  321. package/src/react/queries/collectibles/index.ts +7 -0
  322. package/src/react/queries/{listCollectibleActivities.ts → collectibles/listCollectibleActivities.ts} +29 -5
  323. package/src/react/queries/{listCollectibles.ts → collectibles/listCollectibles.ts} +47 -54
  324. package/src/react/queries/{listCollectiblesPaginated.ts → collectibles/listCollectiblesPaginated.ts} +22 -5
  325. package/src/react/queries/collectibles/tokenBalances.ts +103 -0
  326. package/src/react/queries/{collection.ts → collections/collection.ts} +19 -5
  327. package/src/react/queries/{collectionBalanceDetails.ts → collections/collectionBalanceDetails.ts} +19 -4
  328. package/src/react/queries/{collectionDetails.ts → collections/collectionDetails.ts} +21 -6
  329. package/src/react/queries/collections/index.ts +5 -0
  330. package/src/react/queries/{listCollectionActivities.ts → collections/listCollectionActivities.ts} +28 -6
  331. package/src/react/queries/{listCollections.ts → collections/listCollections.ts} +26 -18
  332. package/src/react/queries/index.ts +7 -33
  333. package/src/react/queries/{__tests__ → inventory/__tests__}/inventory.laos.test.ts +10 -7
  334. package/src/react/queries/inventory/index.ts +1 -0
  335. package/src/react/queries/inventory/inventory.ts +169 -0
  336. package/src/react/queries/{checkoutOptions.ts → market/checkoutOptions.ts} +28 -6
  337. package/src/react/queries/{checkoutOptionsSalesContract.ts → market/checkoutOptionsSalesContract.ts} +24 -5
  338. package/src/react/queries/{currency.ts → market/currency.ts} +13 -4
  339. package/src/react/queries/{filters.ts → market/filters.ts} +48 -34
  340. package/src/react/queries/market/index.ts +6 -0
  341. package/src/react/queries/{marketCurrencies.ts → market/marketCurrencies.ts} +24 -5
  342. package/src/react/queries/{marketplaceConfig.ts → market/marketplaceConfig.ts} +11 -7
  343. package/src/react/queries/orders/countItemsOrdersForCollection.ts +86 -0
  344. package/src/react/queries/{countListingsForCollectible.ts → orders/countListingsForCollectible.ts} +23 -6
  345. package/src/react/queries/{countOffersForCollectible.ts → orders/countOffersForCollectible.ts} +23 -6
  346. package/src/react/queries/{floorOrder.ts → orders/floorOrder.ts} +15 -4
  347. package/src/react/queries/orders/getCountOfFilteredOrders.ts +88 -0
  348. package/src/react/queries/{highestOffer.ts → orders/highestOffer.ts} +16 -4
  349. package/src/react/queries/orders/index.ts +11 -0
  350. package/src/react/queries/orders/listItemsOrdersForCollection.ts +90 -0
  351. package/src/react/queries/orders/listItemsOrdersForCollectionPaginated.ts +90 -0
  352. package/src/react/queries/{listListingsForCollectible.ts → orders/listListingsForCollectible.ts} +20 -5
  353. package/src/react/queries/orders/listOffersForCollectible.ts +116 -0
  354. package/src/react/queries/{lowestListing.ts → orders/lowestListing.ts} +16 -4
  355. package/src/react/queries/{countOfPrimarySaleItems.ts → primary-sales/countOfPrimarySaleItems.ts} +17 -3
  356. package/src/react/queries/primary-sales/index.ts +3 -0
  357. package/src/react/queries/{primarySaleItems.ts → primary-sales/primarySaleItems.ts} +18 -4
  358. package/src/react/queries/{primarySaleItemsCount.ts → primary-sales/primarySaleItemsCount.ts} +19 -4
  359. package/src/react/queries/{getTokenRanges.ts → tokens/getTokenRanges.ts} +17 -4
  360. package/src/react/queries/tokens/index.ts +5 -0
  361. package/src/react/queries/{listBalances.ts → tokens/listBalances.ts} +18 -3
  362. package/src/react/queries/{listTokenMetadata.ts → tokens/listTokenMetadata.ts} +18 -4
  363. package/src/react/queries/{searchTokenMetadata.ts → tokens/searchTokenMetadata.ts} +18 -4
  364. package/src/react/queries/{tokenSupplies.ts → tokens/tokenSupplies.ts} +16 -4
  365. package/src/react/queries/{comparePrices.ts → utils/comparePrices.ts} +16 -4
  366. package/src/react/queries/{convertPriceToUSD.ts → utils/convertPriceToUSD.ts} +18 -5
  367. package/src/react/queries/utils/index.ts +2 -0
  368. package/src/react/ssr/__tests__/__snapshots__/create-ssr-client.test.ts.snap +4 -4
  369. package/src/react/ssr/create-ssr-client.ts +1 -1
  370. package/src/react/ui/components/_internals/ErrorLogBox.tsx +85 -0
  371. package/src/react/ui/components/_internals/action-button/ActionButton.stories.tsx +8 -8
  372. package/src/react/ui/components/_internals/action-button/ActionButton.tsx +10 -9
  373. package/src/react/ui/components/_internals/action-button/__tests__/NonOwnerActions.test.tsx +4 -4
  374. package/src/react/ui/components/_internals/action-button/components/NonOwnerActions.tsx +10 -6
  375. package/src/react/ui/components/_internals/custom-select/__tests__/CustomSelect.test.tsx +1 -1
  376. package/src/react/ui/components/marketplace-collectible-card/CollectibleCard.tsx +4 -3
  377. package/src/react/ui/components/marketplace-collectible-card/CollectibleCardSkeleton.tsx +13 -2
  378. package/src/react/ui/components/marketplace-collectible-card/components/ActionButtonWrapper.tsx +7 -7
  379. package/src/react/ui/components/marketplace-collectible-card/components/BaseCard.tsx +14 -5
  380. package/src/react/ui/components/marketplace-collectible-card/components/footer/Footer.tsx +179 -0
  381. package/src/react/ui/components/marketplace-collectible-card/components/footer/components/FooterName.tsx +103 -0
  382. package/src/react/ui/components/marketplace-collectible-card/components/footer/components/PriceDisplay.tsx +80 -0
  383. package/src/react/ui/components/marketplace-collectible-card/components/footer/components/SaleDetailsPill.tsx +29 -0
  384. package/src/react/ui/components/marketplace-collectible-card/components/footer/components/TokenTypeBalancePill.tsx +30 -0
  385. package/src/react/ui/components/marketplace-collectible-card/components/footer/components/index.ts +4 -0
  386. package/src/react/ui/components/marketplace-collectible-card/components/footer/index.ts +2 -0
  387. package/src/react/ui/components/marketplace-collectible-card/types.ts +19 -6
  388. package/src/react/ui/components/marketplace-collectible-card/variants/MarketCard.tsx +14 -23
  389. package/src/react/ui/components/marketplace-collectible-card/variants/NonTradableInventoryCard.tsx +42 -0
  390. package/src/react/ui/components/marketplace-collectible-card/variants/ShopCard.tsx +17 -12
  391. package/src/react/ui/modals/BuyModal/__tests__/BuyModalRouter.test.tsx +10 -10
  392. package/src/react/ui/modals/BuyModal/__tests__/ERC1155ShopModal.test.tsx +3 -3
  393. package/src/react/ui/modals/BuyModal/__tests__/Modal.test.tsx.bak +3 -3
  394. package/src/react/ui/modals/BuyModal/__tests__/Modal1155.test.tsx +6 -6
  395. package/src/react/ui/modals/BuyModal/__tests__/store.test.ts +3 -3
  396. package/src/react/ui/modals/BuyModal/components/BuyModalRouter.tsx +5 -5
  397. package/src/react/ui/modals/BuyModal/components/ERC1155BuyModal.tsx +67 -5
  398. package/src/react/ui/modals/BuyModal/components/ERC1155QuantityModal.tsx +8 -8
  399. package/src/react/ui/modals/BuyModal/components/ERC1155ShopModal.tsx +2 -2
  400. package/src/react/ui/modals/BuyModal/components/ERC721BuyModal.tsx +31 -0
  401. package/src/react/ui/modals/BuyModal/hooks/__tests__/useERC721SalePaymentParams.test.tsx +20 -1
  402. package/src/react/ui/modals/BuyModal/hooks/useERC1155Checkout.ts +20 -4
  403. package/src/react/ui/modals/BuyModal/hooks/useERC721SalePaymentParams.ts +12 -3
  404. package/src/react/ui/modals/BuyModal/hooks/usePaymentModalParams.ts +11 -2
  405. package/src/react/ui/modals/BuyModal/store.ts +9 -6
  406. package/src/react/ui/modals/CreateListingModal/Modal.tsx +63 -24
  407. package/src/react/ui/modals/CreateListingModal/__tests__/Modal.test.tsx +4 -0
  408. package/src/react/ui/modals/CreateListingModal/hooks/useCreateListing.tsx +20 -13
  409. package/src/react/ui/modals/CreateListingModal/hooks/useGetTokenApproval.ts +4 -1
  410. package/src/react/ui/modals/CreateListingModal/hooks/useTransactionSteps.tsx +2 -1
  411. package/src/react/ui/modals/MakeOfferModal/Modal.tsx +141 -96
  412. package/src/react/ui/modals/MakeOfferModal/__tests__/Modal.test.tsx +10 -0
  413. package/src/react/ui/modals/MakeOfferModal/hooks/useGetTokenApproval.tsx +4 -1
  414. package/src/react/ui/modals/MakeOfferModal/hooks/useMakeOffer.tsx +17 -27
  415. package/src/react/ui/modals/MakeOfferModal/hooks/useTransactionSteps.tsx +2 -1
  416. package/src/react/ui/modals/SellModal/Modal.tsx +21 -3
  417. package/src/react/ui/modals/SellModal/__tests__/Modal.test.tsx +2 -0
  418. package/src/react/ui/modals/SellModal/hooks/useGetTokenApproval.tsx +5 -2
  419. package/src/react/ui/modals/SellModal/hooks/useSell.tsx +15 -8
  420. package/src/react/ui/modals/SuccessfulPurchaseModal/__tests__/Modal.test.tsx +9 -0
  421. package/src/react/ui/modals/_internal/components/actionModal/ActionModal.test.tsx +20 -9
  422. package/src/react/ui/modals/_internal/components/calendarDropdown/TimeSelector.tsx +105 -0
  423. package/src/react/ui/modals/_internal/components/calendarDropdown/index.tsx +45 -12
  424. package/src/react/ui/modals/_internal/components/calendarDropdown/overrides.css +39 -0
  425. package/src/react/ui/modals/_internal/components/currencyOptionsSelect/index.tsx +31 -10
  426. package/src/react/ui/modals/_internal/components/expirationDateSelect/index.tsx +18 -9
  427. package/src/react/ui/modals/_internal/components/priceInput/index.tsx +53 -3
  428. package/src/react/ui/modals/_internal/components/switchChainErrorModal/__tests__/SwitchChainErrorModal.test.tsx +80 -0
  429. package/src/react/ui/modals/_internal/components/switchChainErrorModal/index.tsx +64 -0
  430. package/src/react/ui/modals/_internal/components/switchChainErrorModal/store.ts +42 -0
  431. package/src/react/ui/modals/_internal/components/transactionDetails/index.tsx +58 -10
  432. package/src/react/ui/modals/_internal/constants/opensea-currencies.ts +481 -0
  433. package/src/react/ui/modals/_internal/types.ts +0 -1
  434. package/src/react/utils/waitForTransactionReceipt.ts +26 -32
  435. package/src/styles/index.css +1 -0
  436. package/src/styles/styles.ts +201 -25
  437. package/src/types/index.ts +1 -1
  438. package/src/types/new-marketplace-types.ts +9 -18
  439. package/src/types/types.ts +1 -1
  440. package/src/utils/abi/index.ts +1 -0
  441. package/src/utils/abi/mainModule.ts +158 -0
  442. package/test/globalSetup.ts +1 -1
  443. package/test/test-utils.tsx +1 -0
  444. package/dist/BellIcon-Cb9YEUzJ.js.map +0 -1
  445. package/dist/CollectibleCard-CYyWzk6u.d.ts +0 -8
  446. package/dist/api-BmEQfSQa.js.map +0 -1
  447. package/dist/create-config-6uynwTeb.js.map +0 -1
  448. package/dist/filters-B8XS4tFH.d.ts +0 -31
  449. package/dist/index-BuY_NKSX.d.ts +0 -222
  450. package/dist/index-D2HohSwO.d.ts +0 -293
  451. package/dist/listCollectiblesPaginated--AgXjajA.d.ts +0 -166
  452. package/dist/lowestListing-BQHfQpfg.d.ts +0 -144
  453. package/dist/marketplace-logos-D8t86gsW.js.map +0 -1
  454. package/dist/marketplace.gen-JzNYpM0U.js.map +0 -1
  455. package/dist/marketplaceConfig-sNh-MA5M.js.map +0 -1
  456. package/dist/network-DnBEe1Ur.js.map +0 -1
  457. package/dist/queries-BYT4GJw3.js +0 -1478
  458. package/dist/queries-BYT4GJw3.js.map +0 -1
  459. package/dist/react-CbqXKOpt.css +0 -80
  460. package/dist/react-CbqXKOpt.css.map +0 -1
  461. package/dist/react-Ceq8mamy.js.map +0 -1
  462. package/dist/tokenSupplies-DXtkRYNO.d.ts +0 -147
  463. package/dist/transaction-CC2KxNF6.js.map +0 -1
  464. package/dist/types-G2PWxiJR.js.map +0 -1
  465. package/dist/utils-CKJd-CRf.js.map +0 -1
  466. package/dist/utils-wquIhK6T.js.map +0 -1
  467. package/dist/waitForTransactionReceipt-DZxAuR9N.js +0 -27
  468. package/dist/waitForTransactionReceipt-DZxAuR9N.js.map +0 -1
  469. package/src/react/hooks/utils/useSwitchChainWithModal.ts +0 -38
  470. package/src/react/queries/inventory.ts +0 -343
  471. package/src/react/ui/components/marketplace-collectible-card/Footer.tsx +0 -238
  472. package/src/react/ui/modals/_internal/components/switchChainModal/__tests__/SwitchChainModal.test.tsx +0 -117
  473. package/src/react/ui/modals/_internal/components/switchChainModal/index.tsx +0 -124
  474. package/src/react/ui/modals/_internal/components/switchChainModal/store.ts +0 -71
  475. /package/dist/{index-q7f-WDBS.d.ts → index-6wsMChsg.d.ts} +0 -0
  476. /package/dist/{abi-Wr_aTZFi.js → queries-KOcILNJO.js} +0 -0
  477. /package/dist/{wagmi-BhP3mdhP.js → wagmi-Bseovd6Q.js} +0 -0
@@ -8,7 +8,7 @@ import {
8
8
  collectionBalanceDetailsQueryOptions,
9
9
  type FetchCollectionBalanceDetailsParams,
10
10
  type fetchCollectionBalanceDetails,
11
- } from '../../../queries/collectionBalanceDetails';
11
+ } from '../../../queries/collections/collectionBalanceDetails';
12
12
  import { useConfig } from '../../config/useConfig';
13
13
 
14
14
  export type UseCollectionBalanceDetailsParams = Optional<
@@ -6,7 +6,7 @@ import {
6
6
  type CollectionDetailsQueryOptions,
7
7
  collectionDetailsQueryOptions,
8
8
  type FetchCollectionDetailsParams,
9
- } from '../../../queries/collectionDetails';
9
+ } from '../../../queries/collections/collectionDetails';
10
10
  import { useConfig } from '../../config/useConfig';
11
11
 
12
12
  export type UseCollectionDetailsParams = Optional<
@@ -7,7 +7,7 @@ import {
7
7
  type fetchListCollectionActivities,
8
8
  type ListCollectionActivitiesQueryOptions,
9
9
  listCollectionActivitiesQueryOptions,
10
- } from '../../../queries/listCollectionActivities';
10
+ } from '../../../queries/collections/listCollectionActivities';
11
11
  import { useConfig } from '../../config/useConfig';
12
12
 
13
13
  export type UseListCollectionActivitiesParams = Optional<
@@ -6,7 +6,7 @@ import {
6
6
  type FetchListCollectionsParams,
7
7
  type ListCollectionsQueryOptions,
8
8
  listCollectionsQueryOptions,
9
- } from '../../../queries/listCollections';
9
+ } from '../../../queries/collections/listCollections';
10
10
  import { useConfig } from '../../config/useConfig';
11
11
  import { useMarketplaceConfig } from '../../config/useMarketplaceConfig';
12
12
 
@@ -40,9 +40,9 @@ describe('useInventory', () => {
40
40
  expect(result.current.isLoading).toBe(false);
41
41
  });
42
42
 
43
- // Verify the data is defined and has pages
43
+ // Verify the data is defined and has collectibles
44
44
  expect(result.current.data).toBeDefined();
45
- expect(result.current.data?.pages).toBeDefined();
45
+ expect(result.current.data?.collectibles).toBeDefined();
46
46
  expect(result.current.error).toBeNull();
47
47
  });
48
48
 
@@ -156,102 +156,7 @@ describe('useInventory', () => {
156
156
  });
157
157
 
158
158
  expect(result.current.data).toBeDefined();
159
- expect(result.current.data?.pages[0].collectibles).toBeDefined();
159
+ expect(result.current.data?.collectibles).toBeDefined();
160
160
  expect(result.current.isSuccess).toBe(true);
161
161
  });
162
-
163
- it('should support pagination with fetchNextPage', async () => {
164
- // Simplified test for pagination
165
- // Set up mock data for first and second pages
166
- const page1Data = {
167
- collectibles: [
168
- {
169
- ...mockCollectibleOrder,
170
- metadata: {
171
- ...mockCollectibleOrder.metadata,
172
- tokenId: '1',
173
- name: 'Token 1',
174
- },
175
- },
176
- ],
177
- page: {
178
- page: 1,
179
- pageSize: 10,
180
- more: true, // indicate there's a next page
181
- },
182
- };
183
-
184
- // Mock API to return data for the first page
185
- server.use(
186
- http.post(
187
- mockMarketplaceEndpoint('ListCollectibles'),
188
- async ({ request }) => {
189
- const body = (await request.json()) as { page?: number };
190
- const pageNumber = body?.page || 1;
191
-
192
- // Return first page data
193
- if (pageNumber === 1) {
194
- return HttpResponse.json(page1Data);
195
- }
196
-
197
- // For second page, return empty collectibles but with more=false
198
- return HttpResponse.json({
199
- collectibles: [],
200
- page: {
201
- page: 2,
202
- pageSize: 10,
203
- more: false,
204
- },
205
- });
206
- },
207
- ),
208
- );
209
-
210
- // Use unique test args to avoid caching issues
211
- const testArgs = {
212
- ...defaultArgs,
213
- accountAddress: '0xabcdef1234567890abcdef1234567890abcdef12' as Address,
214
- collectionAddress:
215
- '0xabcdef1234567890abcdef1234567890abcdef12' as Address,
216
- };
217
-
218
- const { result } = renderHook(() => useInventory(testArgs));
219
-
220
- // Wait for the first page to load
221
- await waitFor(
222
- () => {
223
- expect(result.current.isLoading).toBe(false);
224
- expect(result.current.data?.pages).toBeDefined();
225
- },
226
- { timeout: 5000 },
227
- );
228
-
229
- // Verify first page data loaded correctly
230
- expect(result.current.data?.pages[0].collectibles).toBeDefined();
231
- expect(result.current.data?.pages[0].collectibles.length).toBeGreaterThan(
232
- 0,
233
- );
234
- // Check that at least one item has the expected tokenId
235
- expect(
236
- result.current.data?.pages[0].collectibles.some(
237
- (c) => c.metadata.tokenId === '1',
238
- ),
239
- ).toBe(true);
240
- expect(result.current.hasNextPage).toBe(true);
241
-
242
- // Fetch the next page
243
- await result.current.fetchNextPage();
244
-
245
- // Wait for second page to load
246
- await waitFor(
247
- () => {
248
- expect(result.current.data?.pages.length).toBe(2);
249
- },
250
- { timeout: 5000 },
251
- );
252
-
253
- // For an empty second page we just verify it exists
254
- expect(result.current.data?.pages[1]).toBeDefined();
255
- expect(result.current.hasNextPage).toBe(false); // No more pages
256
- });
257
162
  });
@@ -1,9 +1,9 @@
1
- import { useInfiniteQuery } from '@tanstack/react-query';
1
+ import { useQuery } from '@tanstack/react-query';
2
2
  import { ContractType } from '../../../_internal';
3
3
  import {
4
4
  inventoryOptions,
5
5
  type UseInventoryArgs,
6
- } from '../../../queries/inventory';
6
+ } from '../../../queries/inventory/inventory';
7
7
  import { useConfig } from '../../config/useConfig';
8
8
  import { useMarketplaceConfig } from '../../config/useMarketplaceConfig';
9
9
 
@@ -17,5 +17,5 @@ export function useInventory(args: UseInventoryArgs) {
17
17
  c.itemsAddress === args.collectionAddress && c.chainId === args.chainId,
18
18
  )?.contractType === ContractType.LAOS_ERC_721;
19
19
 
20
- return useInfiniteQuery(inventoryOptions({ ...args, isLaos721 }, config));
20
+ return useQuery(inventoryOptions({ ...args, isLaos721 }, config));
21
21
  }
@@ -6,7 +6,7 @@ import {
6
6
  type CurrencyQueryOptions,
7
7
  currencyQueryOptions,
8
8
  type FetchCurrencyParams,
9
- } from '../../../queries/currency';
9
+ } from '../../../queries/market/currency';
10
10
  import { useConfig } from '../../config/useConfig';
11
11
 
12
12
  export type UseCurrencyParams = Optional<CurrencyQueryOptions, 'config'>;
@@ -11,6 +11,7 @@ import type {
11
11
  PropertyFilter,
12
12
  } from '../../../../types';
13
13
  import { OrderSide } from '../../../../types';
14
+ import type { PriceFilter } from '../../../_internal';
14
15
  import type { MarketCollectibleCardProps } from '../../../ui/components/marketplace-collectible-card/types';
15
16
  import { useSellModal } from '../../../ui/modals/SellModal';
16
17
  import { useListCollectibles } from '../collectibles/useListCollectibles';
@@ -25,10 +26,12 @@ interface UseListMarketCardDataProps {
25
26
  filterOptions?: PropertyFilter[];
26
27
  searchText?: string;
27
28
  showListedOnly?: boolean;
29
+ priceFilters?: PriceFilter[];
28
30
  onCollectibleClick?: (tokenId: string) => void;
29
31
  onCannotPerformAction?: (action: CollectibleCardAction) => void;
30
32
  prioritizeOwnerActions?: boolean;
31
33
  assetSrcPrefixUrl?: string;
34
+ hideQuantitySelector?: boolean;
32
35
  }
33
36
 
34
37
  export function useListMarketCardData({
@@ -39,10 +42,12 @@ export function useListMarketCardData({
39
42
  filterOptions,
40
43
  searchText,
41
44
  showListedOnly = false,
45
+ priceFilters,
42
46
  onCollectibleClick,
43
47
  onCannotPerformAction,
44
48
  prioritizeOwnerActions,
45
49
  assetSrcPrefixUrl,
50
+ hideQuantitySelector,
46
51
  }: UseListMarketCardDataProps) {
47
52
  const { address: accountAddress } = useAccount();
48
53
  const { show: showSellModal } = useSellModal();
@@ -63,6 +68,7 @@ export function useListMarketCardData({
63
68
  includeEmpty: !showListedOnly,
64
69
  searchText,
65
70
  properties: filterOptions,
71
+ prices: priceFilters,
66
72
  },
67
73
  query: {
68
74
  enabled: !!collectionAddress && !!chainId,
@@ -102,7 +108,7 @@ export function useListMarketCardData({
102
108
  collectionAddress,
103
109
  collectionType,
104
110
  cardLoading: collectiblesListIsLoading || balanceLoading,
105
- marketplaceType: 'market',
111
+ cardType: 'market',
106
112
  orderbookKind,
107
113
  collectible,
108
114
  onCollectibleClick,
@@ -111,6 +117,7 @@ export function useListMarketCardData({
111
117
  onCannotPerformAction,
112
118
  prioritizeOwnerActions,
113
119
  assetSrcPrefixUrl,
120
+ hideQuantitySelector,
114
121
  onOfferClick: ({ order }) => {
115
122
  if (!accountAddress) return;
116
123
 
@@ -6,7 +6,7 @@ import {
6
6
  type FetchMarketCurrenciesParams,
7
7
  type MarketCurrenciesQueryOptions,
8
8
  marketCurrenciesQueryOptions,
9
- } from '../../../queries/marketCurrencies';
9
+ } from '../../../queries/market/marketCurrencies';
10
10
  import { useConfig } from '../../config/useConfig';
11
11
 
12
12
  export type UseMarketCurrenciesParams = Optional<
@@ -1,7 +1,11 @@
1
+ export * from './useCountItemsOrdersForCollection';
1
2
  export * from './useCountListingsForCollectible';
2
3
  export * from './useCountOffersForCollectible';
3
4
  export * from './useFloorOrder';
5
+ export * from './useGetCountOfFilteredOrders';
4
6
  export * from './useHighestOffer';
7
+ export * from './useListItemsOrdersForCollection';
8
+ export * from './useListItemsOrdersForCollectionPaginated';
5
9
  export * from './useListListingsForCollectible';
6
10
  export * from './useListOffersForCollectible';
7
11
  export * from './useLowestListing';
@@ -0,0 +1,90 @@
1
+ 'use client';
2
+
3
+ import { useQuery } from '@tanstack/react-query';
4
+ import type { Optional } from '../../../_internal';
5
+ import {
6
+ type CountItemsOrdersForCollectionQueryOptions,
7
+ countItemsOrdersForCollectionQueryOptions,
8
+ type FetchCountItemsOrdersForCollectionParams,
9
+ } from '../../../queries/orders/countItemsOrdersForCollection';
10
+ import { useConfig } from '../../config/useConfig';
11
+
12
+ export type UseCountItemsOrdersForCollectionParams = Optional<
13
+ CountItemsOrdersForCollectionQueryOptions,
14
+ 'config'
15
+ >;
16
+
17
+ /**
18
+ * Hook to get the count of orders for a collection
19
+ *
20
+ * Counts the total number of active orders (listings) for all tokens
21
+ * in a collection. Useful for displaying order counts in collection UI.
22
+ *
23
+ * @param params - Configuration parameters
24
+ * @param params.chainId - The chain ID (must be number, e.g., 1 for Ethereum, 137 for Polygon)
25
+ * @param params.collectionAddress - The collection contract address
26
+ * @param params.filter - Optional filter criteria for orders
27
+ * @param params.query - Optional React Query configuration
28
+ *
29
+ * @returns Query result containing the count of orders
30
+ *
31
+ * @example
32
+ * Basic usage:
33
+ * ```typescript
34
+ * const { data: orderCount, isLoading } = useCountItemsOrdersForCollection({
35
+ * chainId: 137,
36
+ * collectionAddress: '0x...'
37
+ * })
38
+ * ```
39
+ *
40
+ * @example
41
+ * With filter:
42
+ * ```typescript
43
+ * const { data: filteredCount } = useCountItemsOrdersForCollection({
44
+ * chainId: 137,
45
+ * collectionAddress: '0x...',
46
+ * filter: {
47
+ * marketplace: [MarketplaceKind.sequence_marketplace_v2]
48
+ * }
49
+ * })
50
+ * ```
51
+ *
52
+ * @example
53
+ * Combined with list hook:
54
+ * ```typescript
55
+ * const { data: totalCount } = useCountItemsOrdersForCollection({
56
+ * chainId: 137,
57
+ * collectionAddress: '0x...'
58
+ * })
59
+ *
60
+ * const { data: orders } = useListItemsOrdersForCollection({
61
+ * chainId: 137,
62
+ * collectionAddress: '0x...'
63
+ * })
64
+ *
65
+ * return <div>Showing {orders?.pages[0]?.listings.length ?? 0} of {totalCount} orders</div>
66
+ * ```
67
+ */
68
+ export function useCountItemsOrdersForCollection(
69
+ params: UseCountItemsOrdersForCollectionParams,
70
+ ) {
71
+ const defaultConfig = useConfig();
72
+
73
+ const { config = defaultConfig, ...rest } = params;
74
+
75
+ const queryOptions = countItemsOrdersForCollectionQueryOptions({
76
+ config,
77
+ ...rest,
78
+ });
79
+
80
+ return useQuery({
81
+ ...queryOptions,
82
+ });
83
+ }
84
+
85
+ export { countItemsOrdersForCollectionQueryOptions };
86
+
87
+ export type {
88
+ FetchCountItemsOrdersForCollectionParams,
89
+ CountItemsOrdersForCollectionQueryOptions,
90
+ };
@@ -6,7 +6,7 @@ import {
6
6
  type CountListingsForCollectibleQueryOptions,
7
7
  countListingsForCollectibleQueryOptions,
8
8
  type FetchCountListingsForCollectibleParams,
9
- } from '../../../queries/countListingsForCollectible';
9
+ } from '../../../queries/orders/countListingsForCollectible';
10
10
  import { useConfig } from '../../config/useConfig';
11
11
 
12
12
  export type UseCountListingsForCollectibleParams = Optional<
@@ -6,7 +6,7 @@ import {
6
6
  type CountOffersForCollectibleQueryOptions,
7
7
  countOffersForCollectibleQueryOptions,
8
8
  type FetchCountOffersForCollectibleParams,
9
- } from '../../../queries/countOffersForCollectible';
9
+ } from '../../../queries/orders/countOffersForCollectible';
10
10
  import { useConfig } from '../../config/useConfig';
11
11
 
12
12
  export type UseCountOffersForCollectibleParams = Optional<
@@ -6,7 +6,7 @@ import {
6
6
  type FetchFloorOrderParams,
7
7
  type FloorOrderQueryOptions,
8
8
  floorOrderQueryOptions,
9
- } from '../../../queries/floorOrder';
9
+ } from '../../../queries/orders/floorOrder';
10
10
  import { useConfig } from '../../config/useConfig';
11
11
 
12
12
  export type UseFloorOrderParams = Optional<FloorOrderQueryOptions, 'config'>;
@@ -0,0 +1,39 @@
1
+ 'use client';
2
+
3
+ import { useQuery } from '@tanstack/react-query';
4
+ import type { Optional } from '../../../_internal';
5
+ import {
6
+ type FetchGetCountOfFilteredOrdersParams,
7
+ type GetCountOfFilteredOrdersQueryOptions,
8
+ getCountOfFilteredOrdersQueryOptions,
9
+ } from '../../../queries/orders/getCountOfFilteredOrders';
10
+ import { useConfig } from '../../config/useConfig';
11
+
12
+ export type UseGetCountOfFilteredOrdersParams = Optional<
13
+ GetCountOfFilteredOrdersQueryOptions,
14
+ 'config'
15
+ >;
16
+
17
+ export function useGetCountOfFilteredOrders(
18
+ params: UseGetCountOfFilteredOrdersParams,
19
+ ) {
20
+ const defaultConfig = useConfig();
21
+
22
+ const { config = defaultConfig, ...rest } = params;
23
+
24
+ const queryOptions = getCountOfFilteredOrdersQueryOptions({
25
+ config,
26
+ ...rest,
27
+ });
28
+
29
+ return useQuery({
30
+ ...queryOptions,
31
+ });
32
+ }
33
+
34
+ export { getCountOfFilteredOrdersQueryOptions };
35
+
36
+ export type {
37
+ FetchGetCountOfFilteredOrdersParams,
38
+ GetCountOfFilteredOrdersQueryOptions,
39
+ };
@@ -6,7 +6,7 @@ import {
6
6
  type FetchHighestOfferParams,
7
7
  type HighestOfferQueryOptions,
8
8
  highestOfferQueryOptions,
9
- } from '../../../queries/highestOffer';
9
+ } from '../../../queries/orders/highestOffer';
10
10
  import { useConfig } from '../../config/useConfig';
11
11
 
12
12
  export type UseHighestOfferParams = Optional<
@@ -0,0 +1,93 @@
1
+ 'use client';
2
+
3
+ import { useInfiniteQuery } from '@tanstack/react-query';
4
+ import type { Optional } from '../../../_internal';
5
+ import {
6
+ type FetchListItemsOrdersForCollectionParams,
7
+ type fetchListItemsOrdersForCollection,
8
+ type ListItemsOrdersForCollectionQueryOptions,
9
+ listItemsOrdersForCollectionQueryOptions,
10
+ } from '../../../queries/orders/listItemsOrdersForCollection';
11
+ import { useConfig } from '../../config/useConfig';
12
+
13
+ export type UseListItemsOrdersForCollectionParams = Optional<
14
+ ListItemsOrdersForCollectionQueryOptions,
15
+ 'config'
16
+ >;
17
+
18
+ /**
19
+ * Hook to fetch all listings for a collection with infinite pagination support
20
+ *
21
+ * Fetches active listings (sales) for all tokens in a collection from the marketplace
22
+ * with support for filtering and infinite scroll pagination.
23
+ *
24
+ * @param params - Configuration parameters
25
+ * @param params.chainId - The chain ID (must be number, e.g., 1 for Ethereum, 137 for Polygon)
26
+ * @param params.collectionAddress - The collection contract address
27
+ * @param params.filter - Optional filtering parameters (marketplace, currencies, etc.)
28
+ * @param params.query - Optional React Query configuration
29
+ *
30
+ * @returns Infinite query result containing listings data with pagination
31
+ *
32
+ * @example
33
+ * Basic usage:
34
+ * ```typescript
35
+ * const { data, isLoading, fetchNextPage, hasNextPage } = useListItemsOrdersForCollection({
36
+ * chainId: 137,
37
+ * collectionAddress: '0x...'
38
+ * })
39
+ * ```
40
+ *
41
+ * @example
42
+ * With filtering:
43
+ * ```typescript
44
+ * const { data, fetchNextPage } = useListItemsOrdersForCollection({
45
+ * chainId: 1,
46
+ * collectionAddress: '0x...',
47
+ * filter: {
48
+ * marketplace: [MarketplaceKind.sequence_marketplace_v2],
49
+ * currencies: ['0x...']
50
+ * }
51
+ * })
52
+ * ```
53
+ *
54
+ * @example
55
+ * Accessing paginated data:
56
+ * ```typescript
57
+ * const { data } = useListItemsOrdersForCollection({
58
+ * chainId: 137,
59
+ * collectionAddress: '0x...'
60
+ * })
61
+ *
62
+ * const allListings = data?.pages.flatMap(page => page.listings) ?? []
63
+ * ```
64
+ */
65
+ export function useListItemsOrdersForCollection(
66
+ params: UseListItemsOrdersForCollectionParams,
67
+ ) {
68
+ const defaultConfig = useConfig();
69
+
70
+ const { config = defaultConfig, ...rest } = params;
71
+
72
+ const queryOptions = listItemsOrdersForCollectionQueryOptions({
73
+ config,
74
+ ...rest,
75
+ });
76
+
77
+ return useInfiniteQuery({
78
+ ...queryOptions,
79
+ });
80
+ }
81
+
82
+ export { listItemsOrdersForCollectionQueryOptions };
83
+
84
+ export type {
85
+ FetchListItemsOrdersForCollectionParams,
86
+ ListItemsOrdersForCollectionQueryOptions,
87
+ };
88
+
89
+ export type UseListItemsOrdersForCollectionArgs =
90
+ UseListItemsOrdersForCollectionParams;
91
+ export type UseListItemsOrdersForCollectionReturn = Awaited<
92
+ ReturnType<typeof fetchListItemsOrdersForCollection>
93
+ >;
@@ -0,0 +1,108 @@
1
+ 'use client';
2
+
3
+ import { useQuery } from '@tanstack/react-query';
4
+ import type { Optional } from '../../../_internal';
5
+ import {
6
+ type FetchListItemsOrdersForCollectionPaginatedParams,
7
+ type fetchListItemsOrdersForCollectionPaginated,
8
+ type ListItemsOrdersForCollectionPaginatedQueryOptions,
9
+ listItemsOrdersForCollectionPaginatedQueryOptions,
10
+ } from '../../../queries/orders/listItemsOrdersForCollectionPaginated';
11
+ import { useConfig } from '../../config/useConfig';
12
+
13
+ export type UseListItemsOrdersForCollectionPaginatedParams = Optional<
14
+ ListItemsOrdersForCollectionPaginatedQueryOptions,
15
+ 'config'
16
+ >;
17
+
18
+ /**
19
+ * Hook to fetch all listings for a collection with pagination support
20
+ *
21
+ * Fetches active listings (sales) for all tokens in a collection from the marketplace
22
+ * with support for filtering and pagination. Unlike the infinite query version,
23
+ * this hook fetches a specific page of results.
24
+ *
25
+ * @param params - Configuration parameters
26
+ * @param params.chainId - The chain ID (must be number, e.g., 1 for Ethereum, 137 for Polygon)
27
+ * @param params.collectionAddress - The collection contract address
28
+ * @param params.side - Order side (listing or bid)
29
+ * @param params.filter - Optional filtering parameters (marketplace, currencies, etc.)
30
+ * @param params.page - Page number to fetch (default: 1)
31
+ * @param params.pageSize - Number of items per page (default: 30)
32
+ * @param params.query - Optional React Query configuration
33
+ *
34
+ * @returns Query result containing listings data for the specific page
35
+ *
36
+ * @example
37
+ * Basic usage:
38
+ * ```typescript
39
+ * const { data, isLoading } = useListItemsOrdersForCollectionPaginated({
40
+ * chainId: 137,
41
+ * collectionAddress: '0x...',
42
+ * side: OrderSide.listing,
43
+ * page: 1,
44
+ * pageSize: 20
45
+ * })
46
+ * ```
47
+ *
48
+ * @example
49
+ * With filtering:
50
+ * ```typescript
51
+ * const { data } = useListItemsOrdersForCollectionPaginated({
52
+ * chainId: 1,
53
+ * collectionAddress: '0x...',
54
+ * side: OrderSide.listing,
55
+ * page: 2,
56
+ * pageSize: 50,
57
+ * filter: {
58
+ * marketplace: [MarketplaceKind.sequence_marketplace_v2],
59
+ * currencies: ['0x...']
60
+ * }
61
+ * })
62
+ * ```
63
+ *
64
+ * @example
65
+ * Controlled pagination:
66
+ * ```typescript
67
+ * const [currentPage, setCurrentPage] = useState(1);
68
+ * const { data, isLoading } = useListItemsOrdersForCollectionPaginated({
69
+ * chainId: 137,
70
+ * collectionAddress: '0x...',
71
+ * side: OrderSide.listing,
72
+ * page: currentPage,
73
+ * pageSize: 25
74
+ * });
75
+ *
76
+ * const hasMorePages = data?.page?.more;
77
+ * ```
78
+ */
79
+ export function useListItemsOrdersForCollectionPaginated(
80
+ params: UseListItemsOrdersForCollectionPaginatedParams,
81
+ ) {
82
+ const defaultConfig = useConfig();
83
+
84
+ const { config = defaultConfig, ...rest } = params;
85
+
86
+ const queryOptions = listItemsOrdersForCollectionPaginatedQueryOptions({
87
+ config,
88
+ ...rest,
89
+ });
90
+
91
+ return useQuery({
92
+ ...queryOptions,
93
+ });
94
+ }
95
+
96
+ export { listItemsOrdersForCollectionPaginatedQueryOptions };
97
+
98
+ export type {
99
+ FetchListItemsOrdersForCollectionPaginatedParams,
100
+ ListItemsOrdersForCollectionPaginatedQueryOptions,
101
+ };
102
+
103
+ // Legacy exports for backward compatibility during migration
104
+ export type UseListItemsOrdersForCollectionPaginatedArgs =
105
+ UseListItemsOrdersForCollectionPaginatedParams;
106
+ export type UseListItemsOrdersForCollectionPaginatedReturn = Awaited<
107
+ ReturnType<typeof fetchListItemsOrdersForCollectionPaginated>
108
+ >;
@@ -7,7 +7,7 @@ import {
7
7
  type fetchListListingsForCollectible,
8
8
  type ListListingsForCollectibleQueryOptions,
9
9
  listListingsForCollectibleQueryOptions,
10
- } from '../../../queries/listListingsForCollectible';
10
+ } from '../../../queries/orders/listListingsForCollectible';
11
11
  import { useConfig } from '../../config/useConfig';
12
12
 
13
13
  export type UseListListingsForCollectibleParams = Optional<