@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
@@ -0,0 +1,90 @@
1
+ import { infiniteQueryOptions } from '@tanstack/react-query';
2
+ import type { Address } from 'viem';
3
+ import type { Page, SdkConfig } from '../../../types';
4
+ import type {
5
+ ListOrdersWithCollectiblesArgs,
6
+ ListOrdersWithCollectiblesReturn,
7
+ QueryKeyArgs,
8
+ ValuesOptional,
9
+ } from '../../_internal';
10
+ import { collectionKeys, getMarketplaceClient } from '../../_internal';
11
+ import type { StandardInfiniteQueryOptions } from '../../types/query';
12
+
13
+ export interface FetchListItemsOrdersForCollectionParams
14
+ extends Omit<ListOrdersWithCollectiblesArgs, 'chainId' | 'contractAddress'> {
15
+ chainId: number;
16
+ collectionAddress: Address;
17
+ config: SdkConfig;
18
+ }
19
+
20
+ export async function fetchListItemsOrdersForCollection(
21
+ params: FetchListItemsOrdersForCollectionParams,
22
+ page: Page,
23
+ ): Promise<ListOrdersWithCollectiblesReturn> {
24
+ const { collectionAddress, chainId, config, ...additionalApiParams } = params;
25
+ const marketplaceClient = getMarketplaceClient(config);
26
+
27
+ const apiArgs: ListOrdersWithCollectiblesArgs = {
28
+ contractAddress: collectionAddress,
29
+ chainId: String(chainId),
30
+ page: page,
31
+ ...additionalApiParams,
32
+ };
33
+
34
+ return await marketplaceClient.listOrdersWithCollectibles(apiArgs);
35
+ }
36
+
37
+ export type ListItemsOrdersForCollectionQueryOptions =
38
+ ValuesOptional<FetchListItemsOrdersForCollectionParams> & {
39
+ query?: StandardInfiniteQueryOptions;
40
+ };
41
+
42
+ export function getListItemsOrdersForCollectionQueryKey(
43
+ params: ListItemsOrdersForCollectionQueryOptions,
44
+ ) {
45
+ const apiArgs = {
46
+ chainId: String(params.chainId),
47
+ contractAddress: params.collectionAddress,
48
+ side: params.side,
49
+ filter: params.filter,
50
+ } satisfies QueryKeyArgs<Omit<ListOrdersWithCollectiblesArgs, 'page'>>;
51
+
52
+ return [...collectionKeys.collectionItemsOrders, apiArgs] as const;
53
+ }
54
+
55
+ export function listItemsOrdersForCollectionQueryOptions(
56
+ params: ListItemsOrdersForCollectionQueryOptions,
57
+ ) {
58
+ const enabled = Boolean(
59
+ params.collectionAddress &&
60
+ params.chainId &&
61
+ params.config &&
62
+ params.side &&
63
+ (params.query?.enabled ?? true),
64
+ );
65
+
66
+ return infiniteQueryOptions({
67
+ queryKey: getListItemsOrdersForCollectionQueryKey(params),
68
+ queryFn: async ({ pageParam }) => {
69
+ return fetchListItemsOrdersForCollection(
70
+ {
71
+ // biome-ignore lint/style/noNonNullAssertion: The enabled check above ensures these are not undefined
72
+ chainId: params.chainId!,
73
+ // biome-ignore lint/style/noNonNullAssertion: The enabled check above ensures these are not undefined
74
+ collectionAddress: params.collectionAddress!,
75
+ // biome-ignore lint/style/noNonNullAssertion: The enabled check above ensures these are not undefined
76
+ config: params.config!,
77
+ // biome-ignore lint/style/noNonNullAssertion: The enabled check above ensures these are not undefined
78
+ side: params.side!,
79
+ filter: params.filter,
80
+ },
81
+ pageParam,
82
+ );
83
+ },
84
+ initialPageParam: (params.page || { page: 1, pageSize: 30 }) as Page,
85
+ getNextPageParam: (lastPage) =>
86
+ lastPage.page?.more ? lastPage.page : undefined,
87
+ ...params.query,
88
+ enabled,
89
+ });
90
+ }
@@ -0,0 +1,90 @@
1
+ import { queryOptions } from '@tanstack/react-query';
2
+ import type { Address } from 'viem';
3
+ import type { Page, SdkConfig } from '../../../types';
4
+ import type {
5
+ ListOrdersWithCollectiblesArgs,
6
+ ListOrdersWithCollectiblesReturn,
7
+ ValuesOptional,
8
+ } from '../../_internal';
9
+ import { collectionKeys, getMarketplaceClient } from '../../_internal';
10
+ import type { StandardQueryOptions } from '../../types/query';
11
+
12
+ export interface FetchListItemsOrdersForCollectionPaginatedParams
13
+ extends Omit<
14
+ ListOrdersWithCollectiblesArgs,
15
+ 'chainId' | 'contractAddress' | 'page'
16
+ > {
17
+ chainId: number;
18
+ collectionAddress: Address;
19
+ page?: number;
20
+ pageSize?: number;
21
+ config: SdkConfig;
22
+ }
23
+
24
+ /**
25
+ * Fetches a list of items orders for a collection with pagination support from the Marketplace API
26
+ */
27
+ export async function fetchListItemsOrdersForCollectionPaginated(
28
+ params: FetchListItemsOrdersForCollectionPaginatedParams,
29
+ ): Promise<ListOrdersWithCollectiblesReturn> {
30
+ const {
31
+ collectionAddress,
32
+ chainId,
33
+ config,
34
+ page = 1,
35
+ pageSize = 30,
36
+ ...additionalApiParams
37
+ } = params;
38
+ const marketplaceClient = getMarketplaceClient(config);
39
+
40
+ const pageParams: Page = {
41
+ page,
42
+ pageSize,
43
+ };
44
+
45
+ const apiArgs: ListOrdersWithCollectiblesArgs = {
46
+ contractAddress: collectionAddress,
47
+ chainId: String(chainId),
48
+ page: pageParams,
49
+ ...additionalApiParams,
50
+ };
51
+
52
+ return await marketplaceClient.listOrdersWithCollectibles(apiArgs);
53
+ }
54
+
55
+ export type ListItemsOrdersForCollectionPaginatedQueryOptions =
56
+ ValuesOptional<FetchListItemsOrdersForCollectionPaginatedParams> & {
57
+ query?: StandardQueryOptions;
58
+ };
59
+
60
+ export function listItemsOrdersForCollectionPaginatedQueryOptions(
61
+ params: ListItemsOrdersForCollectionPaginatedQueryOptions,
62
+ ) {
63
+ const enabled = Boolean(
64
+ params.collectionAddress &&
65
+ params.chainId &&
66
+ params.config &&
67
+ params.side &&
68
+ (params.query?.enabled ?? true),
69
+ );
70
+
71
+ return queryOptions({
72
+ queryKey: [...collectionKeys.collectionItemsOrders, 'paginated', params],
73
+ queryFn: () =>
74
+ fetchListItemsOrdersForCollectionPaginated({
75
+ // biome-ignore lint/style/noNonNullAssertion: The enabled check above ensures these are not undefined
76
+ chainId: params.chainId!,
77
+ // biome-ignore lint/style/noNonNullAssertion: The enabled check above ensures these are not undefined
78
+ collectionAddress: params.collectionAddress!,
79
+ // biome-ignore lint/style/noNonNullAssertion: The enabled check above ensures these are not undefined
80
+ config: params.config!,
81
+ // biome-ignore lint/style/noNonNullAssertion: The enabled check above ensures these are not undefined
82
+ side: params.side!,
83
+ filter: params.filter,
84
+ page: params.page,
85
+ pageSize: params.pageSize,
86
+ }),
87
+ ...params.query,
88
+ enabled,
89
+ });
90
+ }
@@ -1,13 +1,14 @@
1
1
  import { queryOptions } from '@tanstack/react-query';
2
2
  import type { Address } from 'viem';
3
- import type { SdkConfig } from '../../types';
3
+ import type { SdkConfig } from '../../../types';
4
4
  import type {
5
5
  ListCollectibleListingsArgs,
6
6
  ListCollectibleListingsReturn,
7
+ QueryKeyArgs,
7
8
  ValuesOptional,
8
- } from '../_internal';
9
- import { collectableKeys, getMarketplaceClient } from '../_internal';
10
- import type { StandardQueryOptions } from '../types/query';
9
+ } from '../../_internal';
10
+ import { collectableKeys, getMarketplaceClient } from '../../_internal';
11
+ import type { StandardQueryOptions } from '../../types/query';
11
12
 
12
13
  export interface FetchListListingsForCollectibleParams
13
14
  extends Omit<
@@ -50,6 +51,20 @@ export type ListListingsForCollectibleQueryOptions =
50
51
  query?: StandardQueryOptions;
51
52
  };
52
53
 
54
+ export function getListListingsForCollectibleQueryKey(
55
+ params: ListListingsForCollectibleQueryOptions,
56
+ ) {
57
+ const apiArgs = {
58
+ chainId: String(params.chainId),
59
+ contractAddress: params.collectionAddress,
60
+ tokenId: params.collectibleId,
61
+ filter: params.filter,
62
+ page: params.page,
63
+ } satisfies QueryKeyArgs<ListCollectibleListingsArgs>;
64
+
65
+ return [...collectableKeys.listings, apiArgs] as const;
66
+ }
67
+
53
68
  export function listListingsForCollectibleQueryOptions(
54
69
  params: ListListingsForCollectibleQueryOptions,
55
70
  ) {
@@ -62,7 +77,7 @@ export function listListingsForCollectibleQueryOptions(
62
77
  );
63
78
 
64
79
  return queryOptions({
65
- queryKey: [...collectableKeys.listings, params],
80
+ queryKey: getListListingsForCollectibleQueryKey(params),
66
81
  queryFn: () =>
67
82
  fetchListListingsForCollectible({
68
83
  // biome-ignore lint/style/noNonNullAssertion: The enabled check above ensures these are not undefined
@@ -0,0 +1,116 @@
1
+ import { queryOptions } from '@tanstack/react-query';
2
+ import type { Address } from 'viem';
3
+ import type { SdkConfig } from '../../../types';
4
+ import type {
5
+ ListCollectibleOffersReturn,
6
+ ListOffersForCollectibleArgs,
7
+ Page,
8
+ QueryKeyArgs,
9
+ SortBy,
10
+ ValuesOptional,
11
+ } from '../../_internal';
12
+ import { collectableKeys, getMarketplaceClient } from '../../_internal';
13
+ import type { StandardQueryOptions } from '../../types/query';
14
+
15
+ export interface FetchListOffersForCollectibleParams
16
+ extends Omit<
17
+ ListOffersForCollectibleArgs,
18
+ 'chainId' | 'contractAddress' | 'tokenId'
19
+ > {
20
+ chainId: number;
21
+ collectionAddress: Address;
22
+ collectibleId: string;
23
+ config: SdkConfig;
24
+ sort?: Array<SortBy>;
25
+ }
26
+
27
+ /**
28
+ * Fetches offers for a specific collectible from the Marketplace API
29
+ */
30
+ export async function fetchListOffersForCollectible(
31
+ params: FetchListOffersForCollectibleParams,
32
+ ): Promise<ListCollectibleOffersReturn> {
33
+ const {
34
+ collectionAddress,
35
+ chainId,
36
+ collectibleId,
37
+ config,
38
+ sort,
39
+ page,
40
+ ...additionalApiParams
41
+ } = params;
42
+ const marketplaceClient = getMarketplaceClient(config);
43
+
44
+ const finalSort = sort || (page && 'sort' in page ? page.sort : undefined);
45
+
46
+ let finalPage: Page | undefined;
47
+ if (page || finalSort) {
48
+ finalPage = {
49
+ page: page?.page ?? 1,
50
+ pageSize: page?.pageSize ?? 20,
51
+ ...(page?.more && { more: page.more }),
52
+ ...(finalSort && { sort: finalSort }),
53
+ } as Page;
54
+ }
55
+
56
+ const apiArgs: ListOffersForCollectibleArgs = {
57
+ contractAddress: collectionAddress,
58
+ chainId: String(chainId),
59
+ tokenId: collectibleId,
60
+ page: finalPage,
61
+ ...additionalApiParams,
62
+ };
63
+
64
+ return await marketplaceClient.listCollectibleOffers(apiArgs);
65
+ }
66
+
67
+ export type ListOffersForCollectibleQueryOptions =
68
+ ValuesOptional<FetchListOffersForCollectibleParams> & {
69
+ query?: StandardQueryOptions;
70
+ };
71
+
72
+ export function getListOffersForCollectibleQueryKey(
73
+ params: ListOffersForCollectibleQueryOptions,
74
+ ) {
75
+ const apiArgs = {
76
+ chainId: String(params.chainId),
77
+ contractAddress: params.collectionAddress,
78
+ tokenId: params.collectibleId,
79
+ filter: params.filter,
80
+ page: params.page,
81
+ } satisfies QueryKeyArgs<ListOffersForCollectibleArgs>;
82
+
83
+ return [...collectableKeys.offers, apiArgs] as const;
84
+ }
85
+
86
+ export function listOffersForCollectibleQueryOptions(
87
+ params: ListOffersForCollectibleQueryOptions,
88
+ ) {
89
+ const enabled = Boolean(
90
+ params.collectionAddress &&
91
+ params.chainId &&
92
+ params.collectibleId &&
93
+ params.config &&
94
+ (params.query?.enabled ?? true),
95
+ );
96
+
97
+ return queryOptions({
98
+ queryKey: getListOffersForCollectibleQueryKey(params),
99
+ queryFn: () =>
100
+ fetchListOffersForCollectible({
101
+ // biome-ignore lint/style/noNonNullAssertion: The enabled check above ensures these are not undefined
102
+ chainId: params.chainId!,
103
+ // biome-ignore lint/style/noNonNullAssertion: The enabled check above ensures these are not undefined
104
+ collectionAddress: params.collectionAddress!,
105
+ // biome-ignore lint/style/noNonNullAssertion: The enabled check above ensures these are not undefined
106
+ collectibleId: params.collectibleId!,
107
+ // biome-ignore lint/style/noNonNullAssertion: The enabled check above ensures these are not undefined
108
+ config: params.config!,
109
+ filter: params.filter,
110
+ page: params.page,
111
+ sort: params.sort,
112
+ }),
113
+ ...params.query,
114
+ enabled,
115
+ });
116
+ }
@@ -1,13 +1,14 @@
1
1
  import { queryOptions } from '@tanstack/react-query';
2
- import type { SdkConfig } from '../../types';
2
+ import type { SdkConfig } from '../../../types';
3
3
  import {
4
4
  collectableKeys,
5
5
  type GetCollectibleLowestListingArgs,
6
6
  type GetCollectibleLowestListingReturn,
7
7
  getMarketplaceClient,
8
+ type QueryKeyArgs,
8
9
  type ValuesOptional,
9
- } from '../_internal';
10
- import type { StandardQueryOptions } from '../types/query';
10
+ } from '../../_internal';
11
+ import type { StandardQueryOptions } from '../../types/query';
11
12
 
12
13
  export interface FetchLowestListingParams
13
14
  extends Omit<GetCollectibleLowestListingArgs, 'contractAddress' | 'chainId'> {
@@ -41,6 +42,17 @@ export type LowestListingQueryOptions =
41
42
  query?: StandardQueryOptions;
42
43
  };
43
44
 
45
+ export function getLowestListingQueryKey(params: LowestListingQueryOptions) {
46
+ const apiArgs = {
47
+ chainId: String(params.chainId),
48
+ contractAddress: params.collectionAddress,
49
+ tokenId: params.tokenId,
50
+ filter: params.filter,
51
+ } satisfies QueryKeyArgs<GetCollectibleLowestListingArgs>;
52
+
53
+ return [...collectableKeys.lowestListings, apiArgs] as const;
54
+ }
55
+
44
56
  export function lowestListingQueryOptions(params: LowestListingQueryOptions) {
45
57
  const enabled = Boolean(
46
58
  params.collectionAddress &&
@@ -51,7 +63,7 @@ export function lowestListingQueryOptions(params: LowestListingQueryOptions) {
51
63
  );
52
64
 
53
65
  return queryOptions({
54
- queryKey: [...collectableKeys.lowestListings, params],
66
+ queryKey: getLowestListingQueryKey(params),
55
67
  queryFn: () =>
56
68
  fetchLowestListing({
57
69
  // biome-ignore lint/style/noNonNullAssertion: The enabled check above ensures these are not undefined
@@ -1,11 +1,13 @@
1
1
  import { queryOptions } from '@tanstack/react-query';
2
2
  import type { Address } from 'viem';
3
- import type { SdkConfig } from '../../types';
3
+ import type { SdkConfig } from '../../../types';
4
4
  import {
5
+ collectableKeys,
5
6
  type GetCountOfPrimarySaleItemsArgs,
6
7
  getMarketplaceClient,
7
8
  type PrimarySaleItemsFilter,
8
- } from '../_internal';
9
+ type QueryKeyArgs,
10
+ } from '../../_internal';
9
11
 
10
12
  export interface UseCountOfPrimarySaleItemsArgs
11
13
  extends Omit<
@@ -36,13 +38,25 @@ export async function fetchCountOfPrimarySaleItems(
36
38
  return data.count;
37
39
  }
38
40
 
41
+ export function getCountOfPrimarySaleItemsQueryKey(
42
+ args: UseCountOfPrimarySaleItemsArgs,
43
+ ) {
44
+ const apiArgs = {
45
+ chainId: String(args.chainId),
46
+ primarySaleContractAddress: args.primarySaleContractAddress,
47
+ filter: args.filter,
48
+ } satisfies QueryKeyArgs<GetCountOfPrimarySaleItemsArgs>;
49
+
50
+ return [...collectableKeys.primarySaleItemsCount, apiArgs] as const;
51
+ }
52
+
39
53
  export function countOfPrimarySaleItemsOptions(
40
54
  args: UseCountOfPrimarySaleItemsArgs,
41
55
  config: SdkConfig,
42
56
  ) {
43
57
  return queryOptions({
44
58
  enabled: args.query?.enabled ?? true,
45
- queryKey: ['countOfPrimarySaleItems', args],
59
+ queryKey: getCountOfPrimarySaleItemsQueryKey(args),
46
60
  queryFn: () => fetchCountOfPrimarySaleItems(args, config),
47
61
  });
48
62
  }
@@ -0,0 +1,3 @@
1
+ export * from './countOfPrimarySaleItems';
2
+ export * from './primarySaleItems';
3
+ export * from './primarySaleItemsCount';
@@ -1,15 +1,17 @@
1
1
  import { infiniteQueryOptions } from '@tanstack/react-query';
2
2
  import type { Address } from 'viem';
3
- import type { SdkConfig } from '../../types';
3
+ import type { SdkConfig } from '../../../types';
4
4
  import {
5
+ collectableKeys,
5
6
  getMarketplaceClient,
6
7
  type ListPrimarySaleItemsArgs,
7
8
  type ListPrimarySaleItemsReturn,
8
9
  type Page,
9
10
  type PrimarySaleItemsFilter,
11
+ type QueryKeyArgs,
10
12
  type ValuesOptional,
11
- } from '../_internal';
12
- import type { StandardQueryOptions } from '../types/query';
13
+ } from '../../_internal';
14
+ import type { StandardQueryOptions } from '../../types/query';
13
15
 
14
16
  export interface FetchPrimarySaleItemsParams {
15
17
  chainId: number;
@@ -42,6 +44,18 @@ export type ListPrimarySaleItemsQueryOptions =
42
44
  query?: StandardQueryOptions;
43
45
  };
44
46
 
47
+ export function getListPrimarySaleItemsQueryKey(
48
+ params: ListPrimarySaleItemsQueryOptions,
49
+ ) {
50
+ const apiArgs = {
51
+ chainId: String(params.chainId),
52
+ primarySaleContractAddress: params.primarySaleContractAddress,
53
+ filter: params.filter,
54
+ } satisfies QueryKeyArgs<Omit<ListPrimarySaleItemsArgs, 'page'>>;
55
+
56
+ return [...collectableKeys.listPrimarySaleItems, apiArgs] as const;
57
+ }
58
+
45
59
  export const listPrimarySaleItemsQueryOptions = (
46
60
  params: ListPrimarySaleItemsQueryOptions,
47
61
  ) => {
@@ -56,7 +70,7 @@ export const listPrimarySaleItemsQueryOptions = (
56
70
  const initialPage: PageParam = params.page || { page: 1, pageSize: 30 };
57
71
 
58
72
  return infiniteQueryOptions({
59
- queryKey: ['listPrimarySaleItems', params],
73
+ queryKey: getListPrimarySaleItemsQueryKey(params),
60
74
  queryFn: async ({ pageParam }) => {
61
75
  return fetchPrimarySaleItems({
62
76
  // biome-ignore lint/style/noNonNullAssertion: The enabled check above ensures these are not undefined
@@ -1,12 +1,15 @@
1
1
  import { queryOptions } from '@tanstack/react-query';
2
2
  import type { Address } from 'viem';
3
- import type { SdkConfig } from '../../types';
3
+ import type { SdkConfig } from '../../../types';
4
4
  import {
5
+ collectableKeys,
6
+ type GetCountOfPrimarySaleItemsArgs,
5
7
  type GetCountOfPrimarySaleItemsReturn,
6
8
  getMarketplaceClient,
7
9
  type PrimarySaleItemsFilter,
8
- } from '../_internal';
9
- import type { StandardQueryOptions } from '../types/query';
10
+ type QueryKeyArgs,
11
+ } from '../../_internal';
12
+ import type { StandardQueryOptions } from '../../types/query';
10
13
 
11
14
  export interface FetchPrimarySaleItemsCountParams {
12
15
  chainId: number;
@@ -36,6 +39,18 @@ export type PrimarySaleItemsCountQueryOptions =
36
39
  query?: StandardQueryOptions;
37
40
  };
38
41
 
42
+ export function getPrimarySaleItemsCountQueryKey(
43
+ args: PrimarySaleItemsCountQueryOptions,
44
+ ) {
45
+ const apiArgs = {
46
+ chainId: String(args.chainId),
47
+ primarySaleContractAddress: args.primarySaleContractAddress,
48
+ filter: args.filter,
49
+ } satisfies QueryKeyArgs<GetCountOfPrimarySaleItemsArgs>;
50
+
51
+ return [...collectableKeys.primarySaleItemsCount, apiArgs] as const;
52
+ }
53
+
39
54
  export const primarySaleItemsCountQueryOptions = (
40
55
  args: PrimarySaleItemsCountQueryOptions,
41
56
  ) => {
@@ -47,7 +62,7 @@ export const primarySaleItemsCountQueryOptions = (
47
62
  );
48
63
 
49
64
  return queryOptions({
50
- queryKey: ['primarySaleItemsCount', args],
65
+ queryKey: getPrimarySaleItemsCountQueryKey(args),
51
66
  queryFn: () =>
52
67
  fetchPrimarySaleItemsCount({
53
68
  // biome-ignore lint/style/noNonNullAssertion: The enabled check above ensures these are not undefined
@@ -1,9 +1,13 @@
1
1
  import type { GetTokenIDRangesReturn } from '@0xsequence/indexer';
2
2
  import { queryOptions } from '@tanstack/react-query';
3
3
  import type { Address } from 'viem';
4
- import type { SdkConfig } from '../../types';
5
- import { getIndexerClient, type ValuesOptional } from '../_internal';
6
- import type { StandardQueryOptions } from '../types/query';
4
+ import type { SdkConfig } from '../../../types';
5
+ import {
6
+ getIndexerClient,
7
+ tokenKeys,
8
+ type ValuesOptional,
9
+ } from '../../_internal';
10
+ import type { StandardQueryOptions } from '../../types/query';
7
11
 
8
12
  export interface FetchGetTokenRangesParams {
9
13
  chainId: number;
@@ -37,6 +41,15 @@ export type GetTokenRangesQueryOptions =
37
41
  query?: StandardQueryOptions;
38
42
  };
39
43
 
44
+ export function getTokenRangesQueryKey(params: GetTokenRangesQueryOptions) {
45
+ const apiArgs = {
46
+ chainId: params.chainId!,
47
+ contractAddress: params.collectionAddress!,
48
+ };
49
+
50
+ return [...tokenKeys.ranges, apiArgs] as const;
51
+ }
52
+
40
53
  export function getTokenRangesQueryOptions(params: GetTokenRangesQueryOptions) {
41
54
  const enabled = Boolean(
42
55
  params.chainId &&
@@ -46,7 +59,7 @@ export function getTokenRangesQueryOptions(params: GetTokenRangesQueryOptions) {
46
59
  );
47
60
 
48
61
  return queryOptions({
49
- queryKey: ['indexer', 'tokenRanges', params],
62
+ queryKey: getTokenRangesQueryKey(params),
50
63
  queryFn: () =>
51
64
  fetchGetTokenRanges({
52
65
  // biome-ignore lint/style/noNonNullAssertion: The enabled check above ensures these are not undefined
@@ -0,0 +1,5 @@
1
+ export * from './getTokenRanges';
2
+ export * from './listBalances';
3
+ export * from './listTokenMetadata';
4
+ export * from './searchTokenMetadata';
5
+ export * from './tokenSupplies';
@@ -1,8 +1,8 @@
1
1
  import type { GetTokenBalancesReturn, Page } from '@0xsequence/indexer';
2
2
  import { infiniteQueryOptions } from '@tanstack/react-query';
3
3
  import type { Address, Hex } from 'viem';
4
- import type { SdkConfig } from '../../types';
5
- import { balanceQueries, getIndexerClient, LaosAPI } from '../_internal';
4
+ import type { SdkConfig } from '../../../types';
5
+ import { balanceQueries, getIndexerClient, LaosAPI } from '../../_internal';
6
6
 
7
7
  export type UseListBalancesArgs = {
8
8
  chainId: number;
@@ -55,6 +55,21 @@ export async function fetchBalances(
55
55
  });
56
56
  }
57
57
 
58
+ export function getListBalancesQueryKey(args: UseListBalancesArgs) {
59
+ const apiArgs = {
60
+ chainId: args.chainId,
61
+ accountAddress: args.accountAddress,
62
+ contractAddress: args.contractAddress,
63
+ tokenID: args.tokenId,
64
+ includeMetadata: args.includeMetadata,
65
+ metadataOptions: args.metadataOptions,
66
+ includeCollectionTokens: args.includeCollectionTokens,
67
+ isLaos721: args.isLaos721,
68
+ };
69
+
70
+ return [...balanceQueries.lists, apiArgs] as const;
71
+ }
72
+
58
73
  /**
59
74
  * Creates a tanstack infinite query options object for the balances query
60
75
  *
@@ -68,7 +83,7 @@ export function listBalancesOptions(
68
83
  ) {
69
84
  return infiniteQueryOptions({
70
85
  ...args.query,
71
- queryKey: [...balanceQueries.lists, args, config],
86
+ queryKey: getListBalancesQueryKey(args),
72
87
  queryFn: ({ pageParam }) => fetchBalances(args, config, pageParam),
73
88
  initialPageParam: { page: 1, pageSize: 30 } as Page,
74
89
  getNextPageParam: (lastPage) => lastPage.page.after,
@@ -1,11 +1,13 @@
1
+ import type { GetTokenMetadataArgs } from '@0xsequence/metadata';
1
2
  import { queryOptions } from '@tanstack/react-query';
2
- import type { SdkConfig } from '../../types';
3
+ import type { SdkConfig } from '../../../types';
3
4
  import {
4
5
  getMetadataClient,
6
+ type QueryKeyArgs,
5
7
  tokenKeys,
6
8
  type ValuesOptional,
7
- } from '../_internal';
8
- import type { StandardQueryOptions } from '../types/query';
9
+ } from '../../_internal';
10
+ import type { StandardQueryOptions } from '../../types/query';
9
11
 
10
12
  export interface FetchListTokenMetadataParams {
11
13
  chainId: number;
@@ -37,6 +39,18 @@ export type ListTokenMetadataQueryOptions =
37
39
  query?: StandardQueryOptions;
38
40
  };
39
41
 
42
+ export function getListTokenMetadataQueryKey(
43
+ params: ListTokenMetadataQueryOptions,
44
+ ) {
45
+ const apiArgs = {
46
+ chainID: String(params.chainId),
47
+ contractAddress: params.contractAddress,
48
+ tokenIDs: params.tokenIds,
49
+ } satisfies QueryKeyArgs<GetTokenMetadataArgs>;
50
+
51
+ return [...tokenKeys.metadata, apiArgs] as const;
52
+ }
53
+
40
54
  export function listTokenMetadataQueryOptions(
41
55
  params: ListTokenMetadataQueryOptions,
42
56
  ) {
@@ -49,7 +63,7 @@ export function listTokenMetadataQueryOptions(
49
63
  );
50
64
 
51
65
  return queryOptions({
52
- queryKey: [...tokenKeys.metadata, params],
66
+ queryKey: getListTokenMetadataQueryKey(params),
53
67
  queryFn: () =>
54
68
  fetchListTokenMetadata({
55
69
  // biome-ignore lint/style/noNonNullAssertion: The enabled check above ensures these are not undefined