@0xsequence/marketplace-sdk 1.1.0 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (447) hide show
  1. package/CHANGELOG.md +58 -5
  2. package/dist/{BellIcon-IpHHEy8h.js → BellIcon-DMKEumAz.js} +2 -2
  3. package/dist/BellIcon-DMKEumAz.js.map +1 -0
  4. package/dist/{CartIcon-C8zbor8H.js → CartIcon-UyB4NYKt.js} +3 -3
  5. package/dist/CartIcon-UyB4NYKt.js.map +1 -0
  6. package/dist/CollectibleCard-z05qWzKE.d.ts +8 -0
  7. package/dist/_internal-DkS2VUn5.js.map +1 -1
  8. package/dist/abi-fa-o9gH3.js +134 -0
  9. package/dist/abi-fa-o9gH3.js.map +1 -0
  10. package/dist/{alien_swap-BTJ7mSR-.js → alien_swap-Cq8LuElo.js} +1 -1
  11. package/dist/{alien_swap-BTJ7mSR-.js.map → alien_swap-Cq8LuElo.js.map} +1 -1
  12. package/dist/{api-DuLKn__v.js → api-GwTR0dBA.js} +13 -49
  13. package/dist/api-GwTR0dBA.js.map +1 -0
  14. package/dist/{aqua-xyz-BYJ9WSP_.js → aqua-xyz-0yye_c-Z.js} +1 -1
  15. package/dist/{aqua-xyz-BYJ9WSP_.js.map → aqua-xyz-0yye_c-Z.js.map} +1 -1
  16. package/dist/{aura-D7SUjgro.js → aura-TaxFvTFQ.js} +1 -1
  17. package/dist/{aura-D7SUjgro.js.map → aura-TaxFvTFQ.js.map} +1 -1
  18. package/dist/{blur-BcnRFCaV.js → blur-BupOTobO.js} +1 -1
  19. package/dist/{blur-BcnRFCaV.js.map → blur-BupOTobO.js.map} +1 -1
  20. package/dist/{builder-api-BFuZNOaN.js → builder-api-m4JAA6ee.js} +3 -3
  21. package/dist/builder-api-m4JAA6ee.js.map +1 -0
  22. package/dist/{builder.gen-B9wR2nvF.js → builder.gen--XD71cNL.js} +2 -2
  23. package/dist/builder.gen--XD71cNL.js.map +1 -0
  24. package/dist/{coinbase-ChoX9Hw2.js → coinbase-DTgZ4wDT.js} +1 -1
  25. package/dist/{coinbase-ChoX9Hw2.js.map → coinbase-DTgZ4wDT.js.map} +1 -1
  26. package/dist/collectibles-CZ6i8sXK.js +324 -0
  27. package/dist/collectibles-CZ6i8sXK.js.map +1 -0
  28. package/dist/collections-5NcU-7ZR.js +331 -0
  29. package/dist/collections-5NcU-7ZR.js.map +1 -0
  30. package/dist/{components-CUv-wQr8.js → components-CY8kx2kb.js} +13 -9
  31. package/dist/components-CY8kx2kb.js.map +1 -0
  32. package/dist/{contracts-D72LBOX3.js → contracts-DRJHF89h.js} +5 -4
  33. package/dist/{contracts-D72LBOX3.js.map → contracts-DRJHF89h.js.map} +1 -1
  34. package/dist/{create-config-CIfejoCk.js → create-config-BxyfYCEk.js} +6 -5
  35. package/dist/create-config-BxyfYCEk.js.map +1 -0
  36. package/dist/{create-config-DV_dtaLt.d.ts → create-config-CFBeD8CB.d.ts} +149 -57
  37. package/dist/{element-Dbcv5qya.js → element-D4dDznlu.js} +1 -1
  38. package/dist/{element-Dbcv5qya.js.map → element-D4dDznlu.js.map} +1 -1
  39. package/dist/filters-B5niI_fX.d.ts +60 -0
  40. package/dist/{foundation-QPhUEUy8.js → foundation-GHZOKAzN.js} +1 -1
  41. package/dist/{foundation-QPhUEUy8.js.map → foundation-GHZOKAzN.js.map} +1 -1
  42. package/dist/index-8scPf0CS.d.ts +55 -0
  43. package/dist/index-9qsplZ8r.d.ts +18 -0
  44. package/dist/index-BIuYTMc2.d.ts +122 -0
  45. package/dist/{index-BoNNplSx.d.ts → index-BNrz99xy.d.ts} +3 -3
  46. package/dist/{index-BaytncQc.d.ts → index-BYQOPS8e.d.ts} +108 -51
  47. package/dist/{index-CXscCUg7.d.ts → index-BkZ7SPLc.d.ts} +19 -29
  48. package/dist/{index-D6YMj82n.d.ts → index-BnUku_aF.d.ts} +109 -114
  49. package/dist/index-BtDAHMW_.d.ts +50 -0
  50. package/dist/index-C-c_M_sE.d.ts +107 -0
  51. package/dist/index-CKefEBrI.d.ts +1 -0
  52. package/dist/{index-CMPUveNz.d.ts → index-CNIiC8Z_.d.ts} +11 -8
  53. package/dist/{index-DLUjc7Bx.d.ts → index-CbERNN3s.d.ts} +201 -12
  54. package/dist/{index-C768pAfu.d.ts → index-CsfxsN0t.d.ts} +4 -4
  55. package/dist/{index-CQecU53t.d.ts → index-DASjaiJL.d.ts} +119 -24
  56. package/dist/{index-CT8ZorFd.d.ts → index-DD7Vc4cE.d.ts} +2 -2
  57. package/dist/{index-DpeWm_vF.d.ts → index-DIc8OqWV.d.ts} +7 -6
  58. package/dist/index-DVI_vggD.d.ts +171 -0
  59. package/dist/index-DgsCqh_P.d.ts +1 -0
  60. package/dist/{index-DMBMM16q.d.ts → index-DqxQeYT2.d.ts} +39 -36
  61. package/dist/{index-D-UXGo5d.d.ts → index-Dsf9FRtr.d.ts} +19 -3
  62. package/dist/{index-DJG0kiII.d.ts → index-DxAReMEO.d.ts} +45 -34
  63. package/dist/index-UXRoZmd_.d.ts +70 -0
  64. package/dist/{index-CM0ZTePs.d.ts → index-isFvc5gd.d.ts} +2 -2
  65. package/dist/{index-jGgfEHfQ.d.ts → index-j3nuJWyJ.d.ts} +18 -10
  66. package/dist/{index-B6aSbaw2.d.ts → index-nVb7o0hc.d.ts} +2 -2
  67. package/dist/{index-Bv5XVLjH.d.ts → index-pbE88Tt7.d.ts} +2 -2
  68. package/dist/index-xpO4AQyS.d.ts +1 -0
  69. package/dist/index.d.ts +8 -8
  70. package/dist/index.js +13 -13
  71. package/dist/inventory--t6Zu55O.js +75 -0
  72. package/dist/inventory--t6Zu55O.js.map +1 -0
  73. package/dist/listCollectiblesPaginated-BlE5mSzh.d.ts +327 -0
  74. package/dist/listCollections-DWyqFSQ3.d.ts +828 -0
  75. package/dist/{looks-rare-C7cQztTR.js → looks-rare-2HBhMpOf.js} +1 -1
  76. package/dist/{looks-rare-C7cQztTR.js.map → looks-rare-2HBhMpOf.js.map} +1 -1
  77. package/dist/lowestListing-DsunDO1c.d.ts +475 -0
  78. package/dist/{magic-eden-D3r7jiBG.js → magic-eden-BYdTp-uk.js} +1 -1
  79. package/dist/{magic-eden-D3r7jiBG.js.map → magic-eden-BYdTp-uk.js.map} +1 -1
  80. package/dist/{manifold-DsX0CBP-.js → manifold-yE0x6ZmO.js} +1 -1
  81. package/dist/{manifold-DsX0CBP-.js.map → manifold-yE0x6ZmO.js.map} +1 -1
  82. package/dist/market-DuBpFsDg.js +219 -0
  83. package/dist/market-DuBpFsDg.js.map +1 -0
  84. package/dist/{marketCurrencies-Bzj8X4TL.d.ts → marketCurrencies-BgwmbGFk.d.ts} +57 -15
  85. package/dist/marketCurrencies-Bolonndy.js +59 -0
  86. package/dist/marketCurrencies-Bolonndy.js.map +1 -0
  87. package/dist/{marketplace-BYY8OloA.js → marketplace-NQB-sEQL.js} +1 -1
  88. package/dist/{marketplace-BYY8OloA.js.map → marketplace-NQB-sEQL.js.map} +1 -1
  89. package/dist/{marketplace-logos-Csv2MBwf.js → marketplace-logos-Cz9RrtQo.js} +21 -21
  90. package/dist/marketplace-logos-Cz9RrtQo.js.map +1 -0
  91. package/dist/{marketplace.gen-w2YvbEEo.js → marketplace.gen-906FrJQJ.js} +75 -5
  92. package/dist/marketplace.gen-906FrJQJ.js.map +1 -0
  93. package/dist/{marketplaceConfig-BTy75Mbf.js → marketplaceConfig-Bqjo7NYO.js} +9 -5
  94. package/dist/marketplaceConfig-Bqjo7NYO.js.map +1 -0
  95. package/dist/{mintify-DiOoDmO1.js → mintify-BXQx3mZB.js} +1 -1
  96. package/dist/{mintify-DiOoDmO1.js.map → mintify-BXQx3mZB.js.map} +1 -1
  97. package/dist/{network-DtmiMhcg.js → network-DwdZ_5-7.js} +2 -2
  98. package/dist/network-DwdZ_5-7.js.map +1 -0
  99. package/dist/{networkconfigToWagmiChain-DbUf6HiO.js → networkconfigToWagmiChain-Ct-hGq8M.js} +4 -3
  100. package/dist/networkconfigToWagmiChain-Ct-hGq8M.js.map +1 -0
  101. package/dist/{nftx-CP82jNra.js → nftx-B929_3Ce.js} +1 -1
  102. package/dist/{nftx-CP82jNra.js.map → nftx-B929_3Ce.js.map} +1 -1
  103. package/dist/{okx-p9-4xRjs.js → okx-sZ0-Udny.js} +1 -1
  104. package/dist/{okx-p9-4xRjs.js.map → okx-sZ0-Udny.js.map} +1 -1
  105. package/dist/{open-sea-D2GwAmKS.js → open-sea-DO9PhTrz.js} +1 -1
  106. package/dist/{open-sea-D2GwAmKS.js.map → open-sea-DO9PhTrz.js.map} +1 -1
  107. package/dist/orders-DH76ym2e.js +469 -0
  108. package/dist/orders-DH76ym2e.js.map +1 -0
  109. package/dist/{primary-sale-DOmNDq2P.js → primary-sale-1u4QlPdA.js} +1 -1
  110. package/dist/{primary-sale-DOmNDq2P.js.map → primary-sale-1u4QlPdA.js.map} +1 -1
  111. package/dist/primary-sales-CECrqatg.js +156 -0
  112. package/dist/primary-sales-CECrqatg.js.map +1 -0
  113. package/dist/{query-BG-MA1MB.d.ts → query-brXxOcH0.d.ts} +1 -1
  114. package/dist/{rarible-DqiiW9ki.js → rarible-Ccb2hs7y.js} +1 -1
  115. package/dist/{rarible-DqiiW9ki.js.map → rarible-Ccb2hs7y.js.map} +1 -1
  116. package/dist/react/_internal/api/index.d.ts +2 -2
  117. package/dist/react/_internal/api/index.js +6 -6
  118. package/dist/react/_internal/databeat/index.d.ts +1 -1
  119. package/dist/react/_internal/databeat/index.js +32 -22
  120. package/dist/react/_internal/index.d.ts +2 -2
  121. package/dist/react/_internal/index.js +8 -8
  122. package/dist/react/_internal/wagmi/index.d.ts +1 -1
  123. package/dist/react/_internal/wagmi/index.js +3 -3
  124. package/dist/react/hooks/config/index.d.ts +8 -8
  125. package/dist/react/hooks/config/index.js +32 -22
  126. package/dist/react/hooks/contracts/index.d.ts +6 -6
  127. package/dist/react/hooks/contracts/index.js +12 -12
  128. package/dist/react/hooks/data/collectibles/index.d.ts +10 -4
  129. package/dist/react/hooks/data/collectibles/index.js +32 -22
  130. package/dist/react/hooks/data/collections/index.d.ts +11 -11
  131. package/dist/react/hooks/data/collections/index.js +33 -23
  132. package/dist/react/hooks/data/index.d.ts +37 -29
  133. package/dist/react/hooks/data/index.js +33 -23
  134. package/dist/react/hooks/data/inventory/index.d.ts +36 -28
  135. package/dist/react/hooks/data/inventory/index.js +32 -22
  136. package/dist/react/hooks/data/market/index.d.ts +11 -5
  137. package/dist/react/hooks/data/market/index.js +32 -22
  138. package/dist/react/hooks/data/orders/index.d.ts +11 -5
  139. package/dist/react/hooks/data/orders/index.js +33 -23
  140. package/dist/react/hooks/data/primary-sales/index.d.ts +37 -29
  141. package/dist/react/hooks/data/primary-sales/index.js +33 -23
  142. package/dist/react/hooks/data/tokens/index.d.ts +4 -4
  143. package/dist/react/hooks/data/tokens/index.js +32 -22
  144. package/dist/react/hooks/index.d.ts +37 -29
  145. package/dist/react/hooks/index.js +33 -23
  146. package/dist/react/hooks/transactions/index.d.ts +2 -2
  147. package/dist/react/hooks/transactions/index.js +32 -22
  148. package/dist/react/hooks/ui/index.d.ts +4 -4
  149. package/dist/react/hooks/ui/index.js +32 -22
  150. package/dist/react/hooks/utils/index.d.ts +36 -28
  151. package/dist/react/hooks/utils/index.js +32 -22
  152. package/dist/react/index.d.ts +37 -29
  153. package/dist/react/index.js +33 -23
  154. package/dist/react/queries/collectibles/index.d.ts +11 -0
  155. package/dist/react/queries/collectibles/index.js +22 -0
  156. package/dist/react/queries/collections/index.d.ts +11 -0
  157. package/dist/react/queries/collections/index.js +20 -0
  158. package/dist/react/queries/index.d.ts +24 -16
  159. package/dist/react/queries/index.js +26 -16
  160. package/dist/react/queries/inventory/index.d.ts +3 -0
  161. package/dist/react/queries/inventory/index.js +22 -0
  162. package/dist/react/queries/market/index.d.ts +6 -0
  163. package/dist/react/queries/market/index.js +22 -0
  164. package/dist/react/queries/orders/index.d.ts +11 -0
  165. package/dist/react/queries/orders/index.js +13 -0
  166. package/dist/react/queries/primary-sales/index.d.ts +4 -0
  167. package/dist/react/queries/primary-sales/index.js +13 -0
  168. package/dist/react/queries/tokens/index.d.ts +5 -0
  169. package/dist/react/queries/tokens/index.js +13 -0
  170. package/dist/react/queries/utils/index.d.ts +4 -0
  171. package/dist/react/queries/utils/index.js +22 -0
  172. package/dist/react/ssr/index.d.ts +7 -7
  173. package/dist/react/ssr/index.js +8 -8
  174. package/dist/react/ssr/index.js.map +1 -1
  175. package/dist/react/ui/components/marketplace-collectible-card/components/footer/components/index.d.ts +2 -2
  176. package/dist/react/ui/components/marketplace-collectible-card/components/footer/components/index.js +16 -16
  177. package/dist/react/ui/components/marketplace-collectible-card/components/footer/index.d.ts +7 -10
  178. package/dist/react/ui/components/marketplace-collectible-card/components/footer/index.js +32 -22
  179. package/dist/react/ui/components/marketplace-collectible-card/index.d.ts +4 -4
  180. package/dist/react/ui/components/marketplace-collectible-card/index.js +32 -22
  181. package/dist/react/ui/components/marketplace-collectible-card/utils/index.d.ts +2 -2
  182. package/dist/react/ui/components/marketplace-collectible-card/utils/index.js +8 -8
  183. package/dist/react/ui/components/marketplace-logos/index.d.ts +21 -21
  184. package/dist/react/ui/components/marketplace-logos/index.js +1 -1
  185. package/dist/react/ui/icons/index.js +12 -12
  186. package/dist/react/ui/index.d.ts +4 -4
  187. package/dist/react/ui/index.js +32 -22
  188. package/dist/react/ui/modals/_internal/components/actionModal/index.d.ts +2 -2
  189. package/dist/react/ui/modals/_internal/components/actionModal/index.js +32 -22
  190. package/dist/react/utils/index.d.ts +3 -3
  191. package/dist/react/utils/index.js +6 -6
  192. package/dist/{react-BLJ4DkPx.js → react-CBsgOdVP.js} +1540 -474
  193. package/dist/react-CBsgOdVP.js.map +1 -0
  194. package/dist/{sequence-Bbb-TFKg.js → sequence-CRdb1yEs.js} +1 -1
  195. package/dist/{sequence-Bbb-TFKg.js.map → sequence-CRdb1yEs.js.map} +1 -1
  196. package/dist/styles/index.css +155 -1
  197. package/dist/{sudo-swap-CEPIM3Js.js → sudo-swap-BIklG2gq.js} +1 -1
  198. package/dist/{sudo-swap-CEPIM3Js.js.map → sudo-swap-BIklG2gq.js.map} +1 -1
  199. package/dist/{super-rare-CMEn9PoO.js → super-rare-h8645_5E.js} +1 -1
  200. package/dist/{super-rare-CMEn9PoO.js.map → super-rare-h8645_5E.js.map} +1 -1
  201. package/dist/{token-CcyLz8Z8.js → token-Cv7l2ZaL.js} +1 -1
  202. package/dist/{token-CcyLz8Z8.js.map → token-Cv7l2ZaL.js.map} +1 -1
  203. package/dist/tokenBalances-CouzNX4j.js +57 -0
  204. package/dist/tokenBalances-CouzNX4j.js.map +1 -0
  205. package/dist/tokenSupplies-C3zJll0M.d.ts +265 -0
  206. package/dist/tokens-BvIRUCGG.js +225 -0
  207. package/dist/tokens-BvIRUCGG.js.map +1 -0
  208. package/dist/transaction-DZUW5RHu.js.map +1 -1
  209. package/dist/types/index.d.ts +1 -1
  210. package/dist/types/index.js +2 -2
  211. package/dist/types-B_-cnkcP.js.map +1 -1
  212. package/dist/{types-D6LkVrF0.d.ts → types-CMDwfhfR.d.ts} +6 -5
  213. package/dist/utils/abi/index.d.ts +5 -5
  214. package/dist/utils/abi/index.js +5 -5
  215. package/dist/utils/abi/marketplace/index.d.ts +1 -1
  216. package/dist/utils/abi/marketplace/index.js +1 -1
  217. package/dist/utils/abi/primary-sale/index.d.ts +1 -1
  218. package/dist/utils/abi/primary-sale/index.js +1 -1
  219. package/dist/utils/abi/token/index.d.ts +1 -1
  220. package/dist/utils/abi/token/index.js +1 -1
  221. package/dist/utils/index.d.ts +7 -7
  222. package/dist/utils/index.js +11 -11
  223. package/dist/{utils-BZEkdqWK.js → utils-9ToOvt-c.js} +50 -7
  224. package/dist/utils-9ToOvt-c.js.map +1 -0
  225. package/dist/{utils-oVZxdK0o.js → utils-B6di6O-C.js} +2 -2
  226. package/dist/utils-B6di6O-C.js.map +1 -0
  227. package/dist/utils-BCYTEOvy.js +122 -0
  228. package/dist/utils-BCYTEOvy.js.map +1 -0
  229. package/dist/waitForTransactionReceipt-CbSeUSXe.js +26 -0
  230. package/dist/waitForTransactionReceipt-CbSeUSXe.js.map +1 -0
  231. package/dist/{x2y2-DNe6JgtG.js → x2y2-OvF__ugj.js} +1 -1
  232. package/dist/{x2y2-DNe6JgtG.js.map → x2y2-OvF__ugj.js.map} +1 -1
  233. package/dist/{zora-w0Zqxxs4.js → zora-DzCeu-eE.js} +1 -1
  234. package/dist/{zora-w0Zqxxs4.js.map → zora-DzCeu-eE.js.map} +1 -1
  235. package/package.json +46 -41
  236. package/src/react/_internal/api/__mocks__/marketplace.msw.ts +15 -0
  237. package/src/react/_internal/api/index.ts +0 -1
  238. package/src/react/_internal/api/marketplace.gen.ts +1774 -2383
  239. package/src/react/_internal/api/query-keys.ts +23 -0
  240. package/src/react/_internal/api/services.ts +1 -1
  241. package/src/react/_internal/databeat/types.ts +1 -0
  242. package/src/react/_internal/types.ts +14 -0
  243. package/src/react/_internal/utils.ts +3 -0
  244. package/src/react/hooks/config/useMarketplaceConfig.tsx +1 -1
  245. package/src/react/hooks/data/collectibles/useBalanceOfCollectible.tsx +1 -10
  246. package/src/react/hooks/data/collectibles/useCollectible.tsx +1 -1
  247. package/src/react/hooks/data/collectibles/useCountOfCollectables.tsx +1 -1
  248. package/src/react/hooks/data/collectibles/useListCollectibleActivities.tsx +1 -1
  249. package/src/react/hooks/data/collectibles/useListCollectibles.tsx +2 -17
  250. package/src/react/hooks/data/collectibles/useListCollectiblesPaginated.tsx +1 -1
  251. package/src/react/hooks/data/collectibles/useTokenBalances.tsx +1 -10
  252. package/src/react/hooks/data/collections/index.ts +2 -0
  253. package/src/react/hooks/data/collections/useCollection.tsx +1 -1
  254. package/src/react/hooks/data/collections/useCollectionActiveListingsCurrencies.test.tsx +112 -0
  255. package/src/react/hooks/data/collections/useCollectionActiveListingsCurrencies.tsx +74 -0
  256. package/src/react/hooks/data/collections/useCollectionActiveOffersCurrencies.test.tsx +110 -0
  257. package/src/react/hooks/data/collections/useCollectionActiveOffersCurrencies.tsx +74 -0
  258. package/src/react/hooks/data/collections/useCollectionBalanceDetails.tsx +1 -1
  259. package/src/react/hooks/data/collections/useCollectionDetails.ts +1 -1
  260. package/src/react/hooks/data/collections/useListCollectionActivities.tsx +1 -1
  261. package/src/react/hooks/data/collections/useListCollections.tsx +1 -1
  262. package/src/react/hooks/data/inventory/useInventory.tsx +2 -11
  263. package/src/react/hooks/data/market/useCurrency.tsx +1 -1
  264. package/src/react/hooks/data/market/useListMarketCardData.tsx +7 -0
  265. package/src/react/hooks/data/market/useMarketCurrencies.test.tsx +31 -2
  266. package/src/react/hooks/data/market/useMarketCurrencies.tsx +1 -1
  267. package/src/react/hooks/data/orders/index.ts +4 -0
  268. package/src/react/hooks/data/orders/useCountItemsOrdersForCollection.tsx +90 -0
  269. package/src/react/hooks/data/orders/useCountListingsForCollectible.tsx +1 -1
  270. package/src/react/hooks/data/orders/useCountOffersForCollectible.tsx +1 -1
  271. package/src/react/hooks/data/orders/useFloorOrder.tsx +1 -1
  272. package/src/react/hooks/data/orders/useGetCountOfFilteredOrders.tsx +39 -0
  273. package/src/react/hooks/data/orders/useHighestOffer.tsx +1 -1
  274. package/src/react/hooks/data/orders/useListItemsOrdersForCollection.tsx +93 -0
  275. package/src/react/hooks/data/orders/useListItemsOrdersForCollectionPaginated.tsx +108 -0
  276. package/src/react/hooks/data/orders/useListListingsForCollectible.tsx +1 -1
  277. package/src/react/hooks/data/orders/useListOffersForCollectible.tsx +1 -1
  278. package/src/react/hooks/data/orders/useLowestListing.tsx +1 -1
  279. package/src/react/hooks/data/primary-sales/index.ts +1 -0
  280. package/src/react/hooks/data/primary-sales/useGetCountOfPrimarySaleItems.tsx +2 -2
  281. package/src/react/hooks/data/primary-sales/useListPrimarySaleItems.tsx +1 -1
  282. package/src/react/hooks/data/primary-sales/usePrimarySaleItem.tsx +71 -0
  283. package/src/react/hooks/data/tokens/useGetTokenRanges.tsx +2 -2
  284. package/src/react/hooks/data/tokens/useListBalances.tsx +3 -12
  285. package/src/react/hooks/data/tokens/useListTokenMetadata.tsx +1 -1
  286. package/src/react/hooks/data/tokens/useSearchTokenMetadata.tsx +1 -1
  287. package/src/react/hooks/data/tokens/useTokenSupplies.ts +2 -14
  288. package/src/react/hooks/transactions/useGenerateCancelTransaction.test.tsx +1 -0
  289. package/src/react/hooks/transactions/useGenerateListingTransaction.test.tsx +13 -0
  290. package/src/react/hooks/transactions/useGenerateOfferTransaction.test.tsx +3 -0
  291. package/src/react/hooks/transactions/useGenerateSellTransaction.test.tsx +6 -0
  292. package/src/react/hooks/transactions/useProcessStep.test.tsx +8 -6
  293. package/src/react/hooks/transactions/useProcessStep.ts +8 -6
  294. package/src/react/hooks/ui/useFilterState.tsx +72 -2
  295. package/src/react/hooks/ui/useFilters.tsx +1 -1
  296. package/src/react/hooks/utils/useCheckoutOptions.tsx +2 -2
  297. package/src/react/hooks/utils/useCheckoutOptionsSalesContract.tsx +1 -1
  298. package/src/react/hooks/utils/useComparePrices.test.tsx +1 -1
  299. package/src/react/hooks/utils/useComparePrices.tsx +1 -1
  300. package/src/react/hooks/utils/useConvertPriceToUSD.tsx +1 -1
  301. package/src/react/providers/analytics-provider.tsx +45 -0
  302. package/src/react/providers/index.tsx +30 -41
  303. package/src/react/providers/modal-provider.tsx +14 -2
  304. package/src/react/queries/{balanceOfCollectible.ts → collectibles/balanceOfCollectible.ts} +23 -16
  305. package/src/react/queries/{collectible.ts → collectibles/collectible.ts} +20 -5
  306. package/src/react/queries/{countOfCollectables.ts → collectibles/countOfCollectables.ts} +32 -6
  307. package/src/react/queries/collectibles/index.ts +7 -0
  308. package/src/react/queries/{listCollectibleActivities.ts → collectibles/listCollectibleActivities.ts} +29 -5
  309. package/src/react/queries/{listCollectibles.ts → collectibles/listCollectibles.ts} +22 -56
  310. package/src/react/queries/{listCollectiblesPaginated.ts → collectibles/listCollectiblesPaginated.ts} +22 -5
  311. package/src/react/queries/{tokenBalances.ts → collectibles/tokenBalances.ts} +20 -16
  312. package/src/react/queries/collections/activeListingsCurrencies.ts +84 -0
  313. package/src/react/queries/collections/activeOffersCurrencies.ts +84 -0
  314. package/src/react/queries/{collection.ts → collections/collection.ts} +19 -5
  315. package/src/react/queries/{collectionBalanceDetails.ts → collections/collectionBalanceDetails.ts} +19 -4
  316. package/src/react/queries/{collectionDetails.ts → collections/collectionDetails.ts} +21 -6
  317. package/src/react/queries/collections/index.ts +7 -0
  318. package/src/react/queries/{listCollectionActivities.ts → collections/listCollectionActivities.ts} +28 -6
  319. package/src/react/queries/{listCollections.ts → collections/listCollections.ts} +17 -6
  320. package/src/react/queries/index.ts +7 -34
  321. package/src/react/queries/inventory/index.ts +1 -0
  322. package/src/react/queries/{inventory.ts → inventory/inventory.ts} +13 -14
  323. package/src/react/queries/{checkoutOptions.ts → market/checkoutOptions.ts} +28 -6
  324. package/src/react/queries/{checkoutOptionsSalesContract.ts → market/checkoutOptionsSalesContract.ts} +24 -5
  325. package/src/react/queries/{currency.ts → market/currency.ts} +13 -4
  326. package/src/react/queries/{filters.ts → market/filters.ts} +25 -6
  327. package/src/react/queries/market/index.ts +6 -0
  328. package/src/react/queries/{marketCurrencies.ts → market/marketCurrencies.ts} +32 -6
  329. package/src/react/queries/{marketplaceConfig.ts → market/marketplaceConfig.ts} +5 -5
  330. package/src/react/queries/orders/countItemsOrdersForCollection.ts +86 -0
  331. package/src/react/queries/{countListingsForCollectible.ts → orders/countListingsForCollectible.ts} +23 -6
  332. package/src/react/queries/{countOffersForCollectible.ts → orders/countOffersForCollectible.ts} +23 -6
  333. package/src/react/queries/{floorOrder.ts → orders/floorOrder.ts} +15 -4
  334. package/src/react/queries/orders/getCountOfFilteredOrders.ts +88 -0
  335. package/src/react/queries/{highestOffer.ts → orders/highestOffer.ts} +16 -4
  336. package/src/react/queries/orders/index.ts +11 -0
  337. package/src/react/queries/orders/listItemsOrdersForCollection.ts +90 -0
  338. package/src/react/queries/orders/listItemsOrdersForCollectionPaginated.ts +90 -0
  339. package/src/react/queries/{listListingsForCollectible.ts → orders/listListingsForCollectible.ts} +20 -5
  340. package/src/react/queries/{listOffersForCollectible.ts → orders/listOffersForCollectible.ts} +20 -5
  341. package/src/react/queries/{lowestListing.ts → orders/lowestListing.ts} +16 -4
  342. package/src/react/queries/{countOfPrimarySaleItems.ts → primary-sales/countOfPrimarySaleItems.ts} +17 -3
  343. package/src/react/queries/primary-sales/index.ts +4 -0
  344. package/src/react/queries/primary-sales/primarySaleItem.ts +80 -0
  345. package/src/react/queries/{primarySaleItems.ts → primary-sales/primarySaleItems.ts} +18 -4
  346. package/src/react/queries/{primarySaleItemsCount.ts → primary-sales/primarySaleItemsCount.ts} +19 -4
  347. package/src/react/queries/{getTokenRanges.ts → tokens/getTokenRanges.ts} +17 -4
  348. package/src/react/queries/tokens/index.ts +5 -0
  349. package/src/react/queries/{listBalances.ts → tokens/listBalances.ts} +17 -22
  350. package/src/react/queries/{listTokenMetadata.ts → tokens/listTokenMetadata.ts} +18 -4
  351. package/src/react/queries/{searchTokenMetadata.ts → tokens/searchTokenMetadata.ts} +18 -4
  352. package/src/react/queries/{tokenSupplies.ts → tokens/tokenSupplies.ts} +17 -34
  353. package/src/react/queries/{comparePrices.ts → utils/comparePrices.ts} +29 -5
  354. package/src/react/queries/{convertPriceToUSD.ts → utils/convertPriceToUSD.ts} +18 -5
  355. package/src/react/queries/utils/index.ts +2 -0
  356. package/src/react/ssr/create-ssr-client.ts +1 -1
  357. package/src/react/ui/components/_internals/ErrorLogBox.tsx +85 -0
  358. package/src/react/ui/components/_internals/action-button/ActionButton.stories.tsx +2 -0
  359. package/src/react/ui/components/_internals/action-button/ActionButton.tsx +4 -0
  360. package/src/react/ui/components/_internals/action-button/components/NonOwnerActions.tsx +4 -0
  361. package/src/react/ui/components/marketplace-collectible-card/components/ActionButtonWrapper.tsx +3 -0
  362. package/src/react/ui/components/marketplace-collectible-card/components/footer/Footer.tsx +4 -18
  363. package/src/react/ui/components/marketplace-collectible-card/types.ts +1 -0
  364. package/src/react/ui/components/marketplace-collectible-card/variants/MarketCard.tsx +5 -2
  365. package/src/react/ui/components/marketplace-collectible-card/variants/ShopCard.tsx +2 -2
  366. package/src/react/ui/modals/BuyModal/__tests__/BuyModalRouter.test.tsx +3 -0
  367. package/src/react/ui/modals/BuyModal/__tests__/Modal1155.test.tsx +1 -0
  368. package/src/react/ui/modals/BuyModal/components/ERC1155BuyModal.tsx +65 -3
  369. package/src/react/ui/modals/BuyModal/components/ERC721BuyModal.tsx +31 -0
  370. package/src/react/ui/modals/BuyModal/hooks/__tests__/useERC721SalePaymentParams.test.tsx +20 -1
  371. package/src/react/ui/modals/BuyModal/hooks/useERC1155Checkout.ts +7 -2
  372. package/src/react/ui/modals/BuyModal/hooks/useERC721SalePaymentParams.ts +12 -3
  373. package/src/react/ui/modals/BuyModal/hooks/usePaymentModalParams.ts +11 -25
  374. package/src/react/ui/modals/BuyModal/store.ts +3 -0
  375. package/src/react/ui/modals/CreateListingModal/Modal.tsx +63 -24
  376. package/src/react/ui/modals/CreateListingModal/__tests__/Modal.test.tsx +4 -0
  377. package/src/react/ui/modals/CreateListingModal/hooks/useCreateListing.tsx +18 -12
  378. package/src/react/ui/modals/CreateListingModal/hooks/useGetTokenApproval.ts +4 -1
  379. package/src/react/ui/modals/CreateListingModal/hooks/useTransactionSteps.tsx +1 -0
  380. package/src/react/ui/modals/MakeOfferModal/Modal.tsx +77 -10
  381. package/src/react/ui/modals/MakeOfferModal/__tests__/Modal.test.tsx +12 -0
  382. package/src/react/ui/modals/MakeOfferModal/hooks/useGetTokenApproval.tsx +6 -1
  383. package/src/react/ui/modals/MakeOfferModal/hooks/useMakeOffer.tsx +15 -26
  384. package/src/react/ui/modals/MakeOfferModal/hooks/useTransactionSteps.tsx +3 -0
  385. package/src/react/ui/modals/SellModal/Modal.tsx +21 -3
  386. package/src/react/ui/modals/SellModal/__tests__/Modal.test.tsx +2 -0
  387. package/src/react/ui/modals/SellModal/hooks/useGetTokenApproval.tsx +3 -1
  388. package/src/react/ui/modals/SellModal/hooks/useSell.tsx +13 -7
  389. package/src/react/ui/modals/SuccessfulPurchaseModal/__tests__/Modal.test.tsx +9 -0
  390. package/src/react/ui/modals/_internal/components/calendarDropdown/TimeSelector.tsx +105 -0
  391. package/src/react/ui/modals/_internal/components/calendarDropdown/index.tsx +45 -12
  392. package/src/react/ui/modals/_internal/components/calendarDropdown/overrides.css +39 -0
  393. package/src/react/ui/modals/_internal/components/currencyOptionsSelect/index.tsx +34 -10
  394. package/src/react/ui/modals/_internal/components/expirationDateSelect/index.tsx +18 -9
  395. package/src/react/ui/modals/_internal/components/floorPriceText/__tests__/FloorPriceText.test.tsx +2 -0
  396. package/src/react/ui/modals/_internal/components/floorPriceText/index.tsx +1 -1
  397. package/src/react/ui/modals/_internal/components/priceInput/index.tsx +198 -11
  398. package/src/react/ui/modals/_internal/components/transactionDetails/index.tsx +58 -10
  399. package/src/react/ui/modals/_internal/components/transactionStatusModal/__tests__/utils.test.ts +2 -0
  400. package/src/react/utils/waitForTransactionReceipt.ts +26 -32
  401. package/src/styles/index.css +1 -0
  402. package/src/styles/styles.ts +156 -2
  403. package/src/types/index.ts +1 -1
  404. package/src/utils/abi/index.ts +1 -0
  405. package/src/utils/abi/mainModule.ts +158 -0
  406. package/src/utils/networkconfigToWagmiChain.ts +7 -0
  407. package/src/utils/price.ts +58 -0
  408. package/test/const.ts +2 -0
  409. package/test/server-setup.ts +0 -2
  410. package/dist/BellIcon-IpHHEy8h.js.map +0 -1
  411. package/dist/CartIcon-C8zbor8H.js.map +0 -1
  412. package/dist/CollectibleCard-C2EWF0zo.d.ts +0 -8
  413. package/dist/api-DuLKn__v.js.map +0 -1
  414. package/dist/builder-api-BFuZNOaN.js.map +0 -1
  415. package/dist/builder.gen-B9wR2nvF.js.map +0 -1
  416. package/dist/components-CUv-wQr8.js.map +0 -1
  417. package/dist/create-config-CIfejoCk.js.map +0 -1
  418. package/dist/filters-zkMJaPey.d.ts +0 -31
  419. package/dist/index-B8vaT3_s.d.ts +0 -18
  420. package/dist/index-Yobo6icm.d.ts +0 -234
  421. package/dist/listCollectiblesPaginated-Bq0QSOjJ.d.ts +0 -168
  422. package/dist/listCollections-dTCq00l5.d.ts +0 -669
  423. package/dist/lowestListing-CB5Te-Q9.d.ts +0 -168
  424. package/dist/marketplace-logos-Csv2MBwf.js.map +0 -1
  425. package/dist/marketplace.gen-w2YvbEEo.js.map +0 -1
  426. package/dist/marketplaceConfig-BTy75Mbf.js.map +0 -1
  427. package/dist/network-DtmiMhcg.js.map +0 -1
  428. package/dist/networkconfigToWagmiChain-DbUf6HiO.js.map +0 -1
  429. package/dist/queries-EMA5CcwY.js +0 -1399
  430. package/dist/queries-EMA5CcwY.js.map +0 -1
  431. package/dist/react-BLJ4DkPx.js.map +0 -1
  432. package/dist/react-F03jPjPk.css +0 -80
  433. package/dist/react-F03jPjPk.css.map +0 -1
  434. package/dist/tokenSupplies-C470zTT0.d.ts +0 -147
  435. package/dist/utils-BZEkdqWK.js.map +0 -1
  436. package/dist/utils-oVZxdK0o.js.map +0 -1
  437. package/dist/waitForTransactionReceipt-B08YZiDY.js +0 -26
  438. package/dist/waitForTransactionReceipt-B08YZiDY.js.map +0 -1
  439. package/src/react/_internal/api/__mocks__/laos.msw.ts +0 -387
  440. package/src/react/_internal/api/__tests__/laos-api.test.ts +0 -756
  441. package/src/react/_internal/api/laos-api.ts +0 -106
  442. package/src/react/hooks/data/collectibles/useBalanceOfCollectible.laos.test.tsx +0 -367
  443. package/src/react/queries/__tests__/balanceOfCollectible.laos.test.ts +0 -123
  444. package/src/react/queries/__tests__/inventory.laos.test.ts +0 -499
  445. package/src/react/queries/__tests__/tokenBalances.laos.test.ts +0 -123
  446. /package/dist/{index-Cg5cFzs-.d.ts → index-CCggO_hw.d.ts} +0 -0
  447. /package/dist/{abi-DYsUABe6.js → queries-CyajGg_O.js} +0 -0
@@ -1,756 +0,0 @@
1
- import { setupServer } from 'msw/node';
2
- import { afterAll, afterEach, beforeEach, describe, expect, it } from 'vitest';
3
- import { laosHandlers } from '../__mocks__/laos.msw';
4
- import { LaosAPI } from '../laos-api';
5
-
6
- // Setup MSW server
7
- const server = setupServer(...laosHandlers);
8
-
9
- describe('LaosAPI', () => {
10
- let laosApi: LaosAPI;
11
-
12
- beforeEach(() => {
13
- laosApi = new LaosAPI();
14
- server.listen({ onUnhandledRequest: 'error' });
15
- });
16
-
17
- afterEach(() => {
18
- server.resetHandlers();
19
- });
20
-
21
- afterAll(() => {
22
- server.close();
23
- });
24
-
25
- describe('getTokenSupplies', () => {
26
- it('should fetch token supplies successfully with default parameters', async () => {
27
- const result = await laosApi.getTokenSupplies({
28
- chainId: '11155111',
29
- contractAddress: '0x1234567890123456789012345678901234567890',
30
- });
31
-
32
- expect(result).toMatchInlineSnapshot(`
33
- {
34
- "contractType": "LAOS-ERC-721",
35
- "page": {
36
- "more": false,
37
- "pageSize": 50,
38
- "sort": [
39
- {
40
- "column": "CREATED_AT",
41
- "order": "DESC",
42
- },
43
- ],
44
- },
45
- "tokenIDs": [
46
- {
47
- "chainId": 11155111,
48
- "contractInfo": {
49
- "address": "0x1234567890123456789012345678901234567890",
50
- "bytecodeHash": "0xhash123",
51
- "chainId": 11155111,
52
- "decimals": 0,
53
- "deployed": true,
54
- "extensions": {
55
- "categories": [],
56
- "description": "Test LAOS collection for testing",
57
- "link": "https://example.com",
58
- "ogImage": "https://example.com/og.png",
59
- "ogName": "LAOS Test",
60
- "originAddress": "0x1234567890123456789012345678901234567890",
61
- "originChainId": 11155111,
62
- },
63
- "logoURI": "https://example.com/logo.png",
64
- "name": "Test LAOS Collection",
65
- "source": "laos",
66
- "status": "AVAILABLE",
67
- "symbol": "TLC",
68
- "type": "LAOS-ERC-721",
69
- "updatedAt": "2023-01-01T00:00:00.000Z",
70
- },
71
- "supply": "1000",
72
- "tokenID": "1",
73
- "tokenMetadata": {
74
- "attributes": [
75
- {
76
- "trait_type": "Rarity",
77
- "value": "Common",
78
- },
79
- ],
80
- "contractAddress": "0x1234567890123456789012345678901234567890",
81
- "decimals": 0,
82
- "description": "A test token for LAOS testing",
83
- "image": "https://example.com/token1.png",
84
- "name": "Test Token 1",
85
- "properties": {},
86
- "source": "",
87
- "status": "NOT_AVAILABLE",
88
- "tokenId": "1",
89
- },
90
- },
91
- {
92
- "chainId": 11155111,
93
- "contractInfo": {
94
- "address": "0x1234567890123456789012345678901234567890",
95
- "bytecodeHash": "0xhash123",
96
- "chainId": 11155111,
97
- "decimals": 0,
98
- "deployed": true,
99
- "extensions": {
100
- "blacklist": false,
101
- "categories": [],
102
- "description": "Test LAOS collection for testing",
103
- "featureIndex": 0,
104
- "featured": false,
105
- "link": "https://example.com",
106
- "ogImage": "https://example.com/og.png",
107
- "ogName": "LAOS Test",
108
- "originAddress": "0x1234567890123456789012345678901234567890",
109
- "originChainId": 11155111,
110
- "verified": true,
111
- "verifiedBy": "system",
112
- },
113
- "logoURI": "https://example.com/logo.png",
114
- "name": "Test LAOS Collection",
115
- "source": "laos",
116
- "status": "AVAILABLE",
117
- "symbol": "TLC",
118
- "type": "LAOS-ERC-721",
119
- "updatedAt": "2023-01-01T00:00:00.000Z",
120
- },
121
- "supply": "500",
122
- "tokenID": "2",
123
- "tokenMetadata": {
124
- "attributes": [
125
- {
126
- "trait_type": "Rarity",
127
- "value": "Rare",
128
- },
129
- ],
130
- "contractAddress": "0x1234567890123456789012345678901234567890",
131
- "decimals": 0,
132
- "description": "Another test token for LAOS testing",
133
- "image": "https://example.com/token2.png",
134
- "name": "Test Token 2",
135
- "properties": {},
136
- "source": "",
137
- "status": "NOT_AVAILABLE",
138
- "tokenId": "2",
139
- },
140
- },
141
- ],
142
- }
143
- `);
144
- expect(result.tokenIDs).toHaveLength(2);
145
- expect(result.tokenIDs[0].contractInfo?.address).toBe(
146
- '0x1234567890123456789012345678901234567890',
147
- );
148
- expect(result.tokenIDs[0].supply).toBe('1000');
149
- });
150
-
151
- it('should fetch token supplies with custom includeMetadata=false', async () => {
152
- const result = await laosApi.getTokenSupplies({
153
- chainId: '11155111',
154
- contractAddress: '0x1234567890123456789012345678901234567890',
155
- includeMetadata: false,
156
- });
157
-
158
- expect(result).toMatchInlineSnapshot(`
159
- {
160
- "contractType": "LAOS-ERC-721",
161
- "page": {
162
- "more": false,
163
- "pageSize": 50,
164
- "sort": [
165
- {
166
- "column": "CREATED_AT",
167
- "order": "DESC",
168
- },
169
- ],
170
- },
171
- "tokenIDs": [
172
- {
173
- "chainId": 11155111,
174
- "contractInfo": {
175
- "address": "0x1234567890123456789012345678901234567890",
176
- "bytecodeHash": "0xhash123",
177
- "chainId": 11155111,
178
- "decimals": 0,
179
- "deployed": true,
180
- "extensions": {
181
- "categories": [],
182
- "description": "Test LAOS collection for testing",
183
- "link": "https://example.com",
184
- "ogImage": "https://example.com/og.png",
185
- "ogName": "LAOS Test",
186
- "originAddress": "0x1234567890123456789012345678901234567890",
187
- "originChainId": 11155111,
188
- },
189
- "logoURI": "https://example.com/logo.png",
190
- "name": "Test LAOS Collection",
191
- "source": "laos",
192
- "status": "AVAILABLE",
193
- "symbol": "TLC",
194
- "type": "LAOS-ERC-721",
195
- "updatedAt": "2023-01-01T00:00:00.000Z",
196
- },
197
- "supply": "1000",
198
- "tokenID": "1",
199
- "tokenMetadata": {
200
- "attributes": [
201
- {
202
- "trait_type": "Rarity",
203
- "value": "Common",
204
- },
205
- ],
206
- "contractAddress": "0x1234567890123456789012345678901234567890",
207
- "decimals": 0,
208
- "description": "A test token for LAOS testing",
209
- "image": "https://example.com/token1.png",
210
- "name": "Test Token 1",
211
- "properties": {},
212
- "source": "",
213
- "status": "NOT_AVAILABLE",
214
- "tokenId": "1",
215
- },
216
- },
217
- {
218
- "chainId": 11155111,
219
- "contractInfo": {
220
- "address": "0x1234567890123456789012345678901234567890",
221
- "bytecodeHash": "0xhash123",
222
- "chainId": 11155111,
223
- "decimals": 0,
224
- "deployed": true,
225
- "extensions": {
226
- "blacklist": false,
227
- "categories": [],
228
- "description": "Test LAOS collection for testing",
229
- "featureIndex": 0,
230
- "featured": false,
231
- "link": "https://example.com",
232
- "ogImage": "https://example.com/og.png",
233
- "ogName": "LAOS Test",
234
- "originAddress": "0x1234567890123456789012345678901234567890",
235
- "originChainId": 11155111,
236
- "verified": true,
237
- "verifiedBy": "system",
238
- },
239
- "logoURI": "https://example.com/logo.png",
240
- "name": "Test LAOS Collection",
241
- "source": "laos",
242
- "status": "AVAILABLE",
243
- "symbol": "TLC",
244
- "type": "LAOS-ERC-721",
245
- "updatedAt": "2023-01-01T00:00:00.000Z",
246
- },
247
- "supply": "500",
248
- "tokenID": "2",
249
- "tokenMetadata": {
250
- "attributes": [
251
- {
252
- "trait_type": "Rarity",
253
- "value": "Rare",
254
- },
255
- ],
256
- "contractAddress": "0x1234567890123456789012345678901234567890",
257
- "decimals": 0,
258
- "description": "Another test token for LAOS testing",
259
- "image": "https://example.com/token2.png",
260
- "name": "Test Token 2",
261
- "properties": {},
262
- "source": "",
263
- "status": "NOT_AVAILABLE",
264
- "tokenId": "2",
265
- },
266
- },
267
- ],
268
- }
269
- `);
270
- });
271
-
272
- it('should fetch token supplies with custom pagination sort order', async () => {
273
- const result = await laosApi.getTokenSupplies({
274
- chainId: '11155111',
275
- contractAddress: '0x1234567890123456789012345678901234567890',
276
- page: {
277
- sort: [
278
- {
279
- column: 'CREATED_AT',
280
- order: 'ASC',
281
- },
282
- ],
283
- },
284
- });
285
-
286
- expect(result.page.sort?.[0]?.order).toBe('ASC');
287
- // Verify tokens are in reverse order (ASC vs DESC)
288
- expect(result.tokenIDs[0].tokenID).toBe('2');
289
- expect(result.tokenIDs[1].tokenID).toBe('1');
290
- });
291
-
292
- it('should handle empty token supplies response', async () => {
293
- const result = await laosApi.getTokenSupplies({
294
- chainId: '11155111',
295
- contractAddress: '0x0000000000000000000000000000000000000003', // Special address for empty response
296
- });
297
-
298
- expect(result.tokenIDs).toHaveLength(0);
299
- expect(result.page).toBeDefined();
300
- });
301
-
302
- it('should throw error on 404 response', async () => {
303
- await expect(
304
- laosApi.getTokenSupplies({
305
- chainId: '11155111',
306
- contractAddress: '0x0000000000000000000000000000000000000000', // Special address for 404
307
- }),
308
- ).rejects.toThrow('Failed to get token supplies: Not Found');
309
- });
310
-
311
- it('should throw error on 500 response', async () => {
312
- await expect(
313
- laosApi.getTokenSupplies({
314
- chainId: '11155111',
315
- contractAddress: '0x0000000000000000000000000000000000000001', // Special address for 500
316
- }),
317
- ).rejects.toThrow('Failed to get token supplies: Internal Server Error');
318
- });
319
-
320
- it('should throw error on 400 response', async () => {
321
- await expect(
322
- laosApi.getTokenSupplies({
323
- chainId: '11155111',
324
- contractAddress: '0x0000000000000000000000000000000000000002', // Special address for 400
325
- }),
326
- ).rejects.toThrow('Failed to get token supplies: Bad Request');
327
- });
328
-
329
- it('should include correct request body parameters', async () => {
330
- // This test implicitly validates that the mock receives the correct body
331
- // by checking that custom parameters affect the response
332
- const result = await laosApi.getTokenSupplies({
333
- chainId: '11155111',
334
- contractAddress: '0x1234567890123456789012345678901234567890',
335
- includeMetadata: false,
336
- page: {
337
- sort: [
338
- {
339
- column: 'TOKEN_ID',
340
- order: 'ASC',
341
- },
342
- ],
343
- },
344
- });
345
-
346
- expect(result).toBeDefined();
347
- });
348
- });
349
-
350
- describe('getTokenBalances', () => {
351
- it('should fetch token balances successfully with default parameters', async () => {
352
- const result = await laosApi.getTokenBalances({
353
- chainId: '11155111',
354
- accountAddress: '0xuser1234567890123456789012345678901234567890',
355
- contractAddress: '0x1234567890123456789012345678901234567890',
356
- });
357
-
358
- expect(result).toMatchInlineSnapshot(`
359
- {
360
- "balances": [
361
- {
362
- "accountAddress": "0xuser1234567890123456789012345678901234567890",
363
- "balance": "5",
364
- "blockHash": "0xblock123",
365
- "blockNumber": 12345,
366
- "chainId": 11155111,
367
- "contractAddress": "0x1234567890123456789012345678901234567890",
368
- "contractInfo": {
369
- "address": "0x1234567890123456789012345678901234567890",
370
- "bytecodeHash": "0xhash123",
371
- "chainId": 11155111,
372
- "decimals": 0,
373
- "deployed": true,
374
- "extensions": {
375
- "blacklist": false,
376
- "categories": [],
377
- "description": "Test LAOS collection for testing",
378
- "featureIndex": 0,
379
- "featured": false,
380
- "link": "https://example.com",
381
- "ogImage": "https://example.com/og.png",
382
- "ogName": "LAOS Test",
383
- "originAddress": "0x1234567890123456789012345678901234567890",
384
- "originChainId": 11155111,
385
- "verified": true,
386
- "verifiedBy": "system",
387
- },
388
- "logoURI": "https://example.com/logo.png",
389
- "name": "Test LAOS Collection",
390
- "source": "laos",
391
- "status": "AVAILABLE",
392
- "symbol": "TLC",
393
- "type": "LAOS-ERC-721",
394
- "updatedAt": "2023-01-01T00:00:00.000Z",
395
- },
396
- "contractType": "LAOS-ERC-721",
397
- "isSummary": false,
398
- "tokenID": "1",
399
- "tokenMetadata": {
400
- "attributes": [
401
- {
402
- "trait_type": "Rarity",
403
- "value": "Common",
404
- },
405
- ],
406
- "contractAddress": "0x1234567890123456789012345678901234567890",
407
- "decimals": 0,
408
- "description": "A test token for LAOS testing",
409
- "image": "https://example.com/token1.png",
410
- "name": "Test Token 1",
411
- "properties": {},
412
- "source": "onchain",
413
- "status": "verified",
414
- "tokenId": "1",
415
- },
416
- "uniqueCollectibles": "1",
417
- },
418
- {
419
- "accountAddress": "0xuser1234567890123456789012345678901234567890",
420
- "balance": "2",
421
- "blockHash": "0xblock124",
422
- "blockNumber": 12346,
423
- "chainId": 11155111,
424
- "contractAddress": "0x1234567890123456789012345678901234567890",
425
- "contractInfo": {
426
- "address": "0x1234567890123456789012345678901234567890",
427
- "bytecodeHash": "0xhash123",
428
- "chainId": 11155111,
429
- "decimals": 0,
430
- "deployed": true,
431
- "extensions": {
432
- "blacklist": false,
433
- "categories": [],
434
- "description": "Test LAOS collection for testing",
435
- "featureIndex": 0,
436
- "featured": false,
437
- "link": "https://example.com",
438
- "ogImage": "https://example.com/og.png",
439
- "ogName": "LAOS Test",
440
- "originAddress": "0x1234567890123456789012345678901234567890",
441
- "originChainId": 11155111,
442
- "verified": true,
443
- "verifiedBy": "system",
444
- },
445
- "logoURI": "https://example.com/logo.png",
446
- "name": "Test LAOS Collection",
447
- "source": "laos",
448
- "status": "AVAILABLE",
449
- "symbol": "TLC",
450
- "type": "LAOS-ERC-721",
451
- "updatedAt": "2023-01-01T00:00:00.000Z",
452
- },
453
- "contractType": "LAOS-ERC-721",
454
- "isSummary": false,
455
- "tokenID": "2",
456
- "tokenMetadata": {
457
- "attributes": [
458
- {
459
- "trait_type": "Rarity",
460
- "value": "Rare",
461
- },
462
- ],
463
- "contractAddress": "0x1234567890123456789012345678901234567890",
464
- "decimals": 0,
465
- "description": "Another test token for LAOS testing",
466
- "image": "https://example.com/token2.png",
467
- "name": "Test Token 2",
468
- "properties": {},
469
- "source": "",
470
- "status": "NOT_AVAILABLE",
471
- "tokenId": "2",
472
- },
473
- "uniqueCollectibles": "1",
474
- },
475
- ],
476
- "page": {
477
- "more": false,
478
- "pageSize": 50,
479
- "sort": [
480
- {
481
- "column": "CREATED_AT",
482
- "order": "DESC",
483
- },
484
- ],
485
- },
486
- }
487
- `);
488
- expect(result.balances).toHaveLength(2);
489
- expect(result.balances[0].accountAddress).toBe(
490
- '0xuser1234567890123456789012345678901234567890',
491
- );
492
- expect(result.balances[0].balance).toBe('5');
493
- });
494
-
495
- it('should fetch token balances with custom includeMetadata=false', async () => {
496
- const result = await laosApi.getTokenBalances({
497
- chainId: '11155111',
498
- accountAddress: '0xuser1234567890123456789012345678901234567890',
499
- contractAddress: '0x1234567890123456789012345678901234567890',
500
- includeMetadata: false,
501
- });
502
-
503
- expect(result).toMatchInlineSnapshot(`
504
- {
505
- "balances": [
506
- {
507
- "accountAddress": "0xuser1234567890123456789012345678901234567890",
508
- "balance": "5",
509
- "blockHash": "0xblock123",
510
- "blockNumber": 12345,
511
- "chainId": 11155111,
512
- "contractAddress": "0x1234567890123456789012345678901234567890",
513
- "contractInfo": {
514
- "address": "0x1234567890123456789012345678901234567890",
515
- "bytecodeHash": "0xhash123",
516
- "chainId": 11155111,
517
- "decimals": 0,
518
- "deployed": true,
519
- "extensions": {
520
- "blacklist": false,
521
- "categories": [],
522
- "description": "Test LAOS collection for testing",
523
- "featureIndex": 0,
524
- "featured": false,
525
- "link": "https://example.com",
526
- "ogImage": "https://example.com/og.png",
527
- "ogName": "LAOS Test",
528
- "originAddress": "0x1234567890123456789012345678901234567890",
529
- "originChainId": 11155111,
530
- "verified": true,
531
- "verifiedBy": "system",
532
- },
533
- "logoURI": "https://example.com/logo.png",
534
- "name": "Test LAOS Collection",
535
- "source": "laos",
536
- "status": "AVAILABLE",
537
- "symbol": "TLC",
538
- "type": "LAOS-ERC-721",
539
- "updatedAt": "2023-01-01T00:00:00.000Z",
540
- },
541
- "contractType": "LAOS-ERC-721",
542
- "isSummary": false,
543
- "tokenID": "1",
544
- "tokenMetadata": {
545
- "attributes": [
546
- {
547
- "trait_type": "Rarity",
548
- "value": "Common",
549
- },
550
- ],
551
- "contractAddress": "0x1234567890123456789012345678901234567890",
552
- "decimals": 0,
553
- "description": "A test token for LAOS testing",
554
- "image": "https://example.com/token1.png",
555
- "name": "Test Token 1",
556
- "properties": {},
557
- "source": "onchain",
558
- "status": "verified",
559
- "tokenId": "1",
560
- },
561
- "uniqueCollectibles": "1",
562
- },
563
- {
564
- "accountAddress": "0xuser1234567890123456789012345678901234567890",
565
- "balance": "2",
566
- "blockHash": "0xblock124",
567
- "blockNumber": 12346,
568
- "chainId": 11155111,
569
- "contractAddress": "0x1234567890123456789012345678901234567890",
570
- "contractInfo": {
571
- "address": "0x1234567890123456789012345678901234567890",
572
- "bytecodeHash": "0xhash123",
573
- "chainId": 11155111,
574
- "decimals": 0,
575
- "deployed": true,
576
- "extensions": {
577
- "blacklist": false,
578
- "categories": [],
579
- "description": "Test LAOS collection for testing",
580
- "featureIndex": 0,
581
- "featured": false,
582
- "link": "https://example.com",
583
- "ogImage": "https://example.com/og.png",
584
- "ogName": "LAOS Test",
585
- "originAddress": "0x1234567890123456789012345678901234567890",
586
- "originChainId": 11155111,
587
- "verified": true,
588
- "verifiedBy": "system",
589
- },
590
- "logoURI": "https://example.com/logo.png",
591
- "name": "Test LAOS Collection",
592
- "source": "laos",
593
- "status": "AVAILABLE",
594
- "symbol": "TLC",
595
- "type": "LAOS-ERC-721",
596
- "updatedAt": "2023-01-01T00:00:00.000Z",
597
- },
598
- "contractType": "LAOS-ERC-721",
599
- "isSummary": false,
600
- "tokenID": "2",
601
- "tokenMetadata": {
602
- "attributes": [
603
- {
604
- "trait_type": "Rarity",
605
- "value": "Rare",
606
- },
607
- ],
608
- "contractAddress": "0x1234567890123456789012345678901234567890",
609
- "decimals": 0,
610
- "description": "Another test token for LAOS testing",
611
- "image": "https://example.com/token2.png",
612
- "name": "Test Token 2",
613
- "properties": {},
614
- "source": "",
615
- "status": "NOT_AVAILABLE",
616
- "tokenId": "2",
617
- },
618
- "uniqueCollectibles": "1",
619
- },
620
- ],
621
- "page": {
622
- "more": false,
623
- "pageSize": 50,
624
- "sort": [
625
- {
626
- "column": "CREATED_AT",
627
- "order": "DESC",
628
- },
629
- ],
630
- },
631
- }
632
- `);
633
- });
634
-
635
- it('should fetch token balances with custom pagination sort order', async () => {
636
- const result = await laosApi.getTokenBalances({
637
- chainId: '11155111',
638
- accountAddress: '0xuser1234567890123456789012345678901234567890',
639
- contractAddress: '0x1234567890123456789012345678901234567890',
640
- page: {
641
- sort: [
642
- {
643
- column: 'CREATED_AT',
644
- order: 'ASC',
645
- },
646
- ],
647
- },
648
- });
649
-
650
- expect(result.page.sort?.[0]?.order).toBe('ASC');
651
- // Verify balances are in reverse order (ASC vs DESC)
652
- expect(result.balances[0].tokenID).toBe('2');
653
- expect(result.balances[1].tokenID).toBe('1');
654
- });
655
-
656
- it('should handle empty token balances response', async () => {
657
- const result = await laosApi.getTokenBalances({
658
- chainId: '11155111',
659
- accountAddress: '0x0000000000000000000000000000000000000003', // Special address for empty response
660
- contractAddress: '0x1234567890123456789012345678901234567890',
661
- });
662
-
663
- expect(result.balances).toHaveLength(0);
664
- expect(result.page).toBeDefined();
665
- });
666
-
667
- it('should throw error on 404 response', async () => {
668
- await expect(
669
- laosApi.getTokenBalances({
670
- chainId: '11155111',
671
- accountAddress: '0x0000000000000000000000000000000000000000', // Special address for 404
672
- contractAddress: '0x1234567890123456789012345678901234567890',
673
- }),
674
- ).rejects.toThrow('Failed to get token balances: Not Found');
675
- });
676
-
677
- it('should throw error on 500 response', async () => {
678
- await expect(
679
- laosApi.getTokenBalances({
680
- chainId: '11155111',
681
- accountAddress: '0x0000000000000000000000000000000000000001', // Special address for 500
682
- contractAddress: '0x1234567890123456789012345678901234567890',
683
- }),
684
- ).rejects.toThrow('Failed to get token balances: Internal Server Error');
685
- });
686
-
687
- it('should throw error on 400 response', async () => {
688
- await expect(
689
- laosApi.getTokenBalances({
690
- chainId: '11155111',
691
- accountAddress: '0x0000000000000000000000000000000000000002', // Special address for 400
692
- contractAddress: '0x1234567890123456789012345678901234567890',
693
- }),
694
- ).rejects.toThrow('Failed to get token balances: Bad Request');
695
- });
696
-
697
- it('should include correct request body parameters', async () => {
698
- // This test implicitly validates that the mock receives the correct body
699
- // by checking that custom parameters affect the response
700
- const result = await laosApi.getTokenBalances({
701
- chainId: '11155111',
702
- accountAddress: '0xuser1234567890123456789012345678901234567890',
703
- contractAddress: '0x1234567890123456789012345678901234567890',
704
- includeMetadata: false,
705
- page: {
706
- sort: [
707
- {
708
- column: 'TOKEN_ID',
709
- order: 'ASC',
710
- },
711
- ],
712
- },
713
- });
714
-
715
- expect(result).toBeDefined();
716
- });
717
- });
718
-
719
- describe('API integration', () => {
720
- it('should handle network timeout scenarios', async () => {
721
- // Note: This would require additional MSW configuration for timeout simulation
722
- // For now, we test that the API structure supports error handling
723
- const api = new LaosAPI('https://timeout.example.com');
724
-
725
- // This will fail due to the URL not being mocked, testing error handling
726
- await expect(
727
- api.getTokenSupplies({
728
- chainId: '11155111',
729
- contractAddress: '0x1234567890123456789012345678901234567890',
730
- }),
731
- ).rejects.toThrow();
732
- });
733
-
734
- it('should maintain consistent response structure across methods', async () => {
735
- const suppliesResult = await laosApi.getTokenSupplies({
736
- chainId: '11155111',
737
- contractAddress: '0x1234567890123456789012345678901234567890',
738
- });
739
-
740
- const balancesResult = await laosApi.getTokenBalances({
741
- chainId: '11155111',
742
- accountAddress: '0xuser1234567890123456789012345678901234567890',
743
- contractAddress: '0x1234567890123456789012345678901234567890',
744
- });
745
-
746
- // Both should have consistent page structure
747
- expect(suppliesResult.page).toHaveProperty('pageSize');
748
- expect(suppliesResult.page).toHaveProperty('more');
749
- expect(suppliesResult.page).toHaveProperty('sort');
750
-
751
- expect(balancesResult.page).toHaveProperty('pageSize');
752
- expect(balancesResult.page).toHaveProperty('more');
753
- expect(balancesResult.page).toHaveProperty('sort');
754
- });
755
- });
756
- });