@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
@@ -1,5 +1,5 @@
1
- import { EIP2981_ABI, SequenceMarketplaceV1_ABI, SequenceMarketplaceV2_ABI } from "../../index-CtF7EE2z.js";
2
- import { ERC1155_SALES_CONTRACT_ABI_V0, ERC1155_SALES_CONTRACT_ABI_V1, ERC721_SALE_ABI_V0, ERC721_SALE_ABI_V1 } from "../../index-DX0Vm8HY.js";
3
- import { ERC1155_ABI, ERC20_ABI, ERC721_ABI, SEQUENCE_1155_ITEMS_ABI } from "../../index-QxxS6f9r.js";
4
- import "../../index-q7f-WDBS.js";
5
- export { EIP2981_ABI, ERC1155_ABI, ERC1155_SALES_CONTRACT_ABI_V0, ERC1155_SALES_CONTRACT_ABI_V1, ERC20_ABI, ERC721_ABI, ERC721_SALE_ABI_V0, ERC721_SALE_ABI_V1, SEQUENCE_1155_ITEMS_ABI, SequenceMarketplaceV1_ABI, SequenceMarketplaceV2_ABI };
1
+ import { MAIN_MODULE_ABI } from "../../index-BeRV-7AX.js";
2
+ import { EIP2981_ABI, SequenceMarketplaceV1_ABI, SequenceMarketplaceV2_ABI } from "../../index-Bxzjy0d1.js";
3
+ import { ERC1155_SALES_CONTRACT_ABI_V0, ERC1155_SALES_CONTRACT_ABI_V1, ERC721_SALE_ABI_V0, ERC721_SALE_ABI_V1 } from "../../index-DwKr18CI.js";
4
+ import { ERC1155_ABI, ERC20_ABI, ERC721_ABI, SEQUENCE_1155_ITEMS_ABI } from "../../index-D9LPlmbC.js";
5
+ export { EIP2981_ABI, ERC1155_ABI, ERC1155_SALES_CONTRACT_ABI_V0, ERC1155_SALES_CONTRACT_ABI_V1, ERC20_ABI, ERC721_ABI, ERC721_SALE_ABI_V0, ERC721_SALE_ABI_V1, MAIN_MODULE_ABI, SEQUENCE_1155_ITEMS_ABI, SequenceMarketplaceV1_ABI, SequenceMarketplaceV2_ABI };
@@ -1,6 +1,6 @@
1
- import { EIP2981_ABI, SequenceMarketplaceV1_ABI, SequenceMarketplaceV2_ABI } from "../../marketplace-B5Z8G03R.js";
2
- import { ERC1155_SALES_CONTRACT_ABI_V0, ERC1155_SALES_CONTRACT_ABI_V1, ERC721_SALE_ABI_V0, ERC721_SALE_ABI_V1 } from "../../primary-sale-CLjXRrDj.js";
3
- import { ERC1155_ABI, ERC20_ABI, ERC721_ABI, SEQUENCE_1155_ITEMS_ABI } from "../../token-D9gZVqbX.js";
4
- import "../../abi-Wr_aTZFi.js";
1
+ import { MAIN_MODULE_ABI } from "../../abi-fa-o9gH3.js";
2
+ import { EIP2981_ABI, SequenceMarketplaceV1_ABI, SequenceMarketplaceV2_ABI } from "../../marketplace-NQB-sEQL.js";
3
+ import { ERC1155_SALES_CONTRACT_ABI_V0, ERC1155_SALES_CONTRACT_ABI_V1, ERC721_SALE_ABI_V0, ERC721_SALE_ABI_V1 } from "../../primary-sale-1u4QlPdA.js";
4
+ import { ERC1155_ABI, ERC20_ABI, ERC721_ABI, SEQUENCE_1155_ITEMS_ABI } from "../../token-Cv7l2ZaL.js";
5
5
 
6
- export { EIP2981_ABI, ERC1155_ABI, ERC1155_SALES_CONTRACT_ABI_V0, ERC1155_SALES_CONTRACT_ABI_V1, ERC20_ABI, ERC721_ABI, ERC721_SALE_ABI_V0, ERC721_SALE_ABI_V1, SEQUENCE_1155_ITEMS_ABI, SequenceMarketplaceV1_ABI, SequenceMarketplaceV2_ABI };
6
+ export { EIP2981_ABI, ERC1155_ABI, ERC1155_SALES_CONTRACT_ABI_V0, ERC1155_SALES_CONTRACT_ABI_V1, ERC20_ABI, ERC721_ABI, ERC721_SALE_ABI_V0, ERC721_SALE_ABI_V1, MAIN_MODULE_ABI, SEQUENCE_1155_ITEMS_ABI, SequenceMarketplaceV1_ABI, SequenceMarketplaceV2_ABI };
@@ -1,2 +1,2 @@
1
- import { EIP2981_ABI, SequenceMarketplaceV1_ABI, SequenceMarketplaceV2_ABI } from "../../../index-CtF7EE2z.js";
1
+ import { EIP2981_ABI, SequenceMarketplaceV1_ABI, SequenceMarketplaceV2_ABI } from "../../../index-Bxzjy0d1.js";
2
2
  export { EIP2981_ABI, SequenceMarketplaceV1_ABI, SequenceMarketplaceV2_ABI };
@@ -1,3 +1,3 @@
1
- import { EIP2981_ABI, SequenceMarketplaceV1_ABI, SequenceMarketplaceV2_ABI } from "../../../marketplace-B5Z8G03R.js";
1
+ import { EIP2981_ABI, SequenceMarketplaceV1_ABI, SequenceMarketplaceV2_ABI } from "../../../marketplace-NQB-sEQL.js";
2
2
 
3
3
  export { EIP2981_ABI, SequenceMarketplaceV1_ABI, SequenceMarketplaceV2_ABI };
@@ -1,2 +1,2 @@
1
- import { ERC1155_SALES_CONTRACT_ABI_V0, ERC1155_SALES_CONTRACT_ABI_V1, ERC721_SALE_ABI_V0, ERC721_SALE_ABI_V1 } from "../../../index-DX0Vm8HY.js";
1
+ import { ERC1155_SALES_CONTRACT_ABI_V0, ERC1155_SALES_CONTRACT_ABI_V1, ERC721_SALE_ABI_V0, ERC721_SALE_ABI_V1 } from "../../../index-DwKr18CI.js";
2
2
  export { ERC1155_SALES_CONTRACT_ABI_V0, ERC1155_SALES_CONTRACT_ABI_V1, ERC721_SALE_ABI_V0, ERC721_SALE_ABI_V1 };
@@ -1,3 +1,3 @@
1
- import { ERC1155_SALES_CONTRACT_ABI_V0, ERC1155_SALES_CONTRACT_ABI_V1, ERC721_SALE_ABI_V0, ERC721_SALE_ABI_V1 } from "../../../primary-sale-CLjXRrDj.js";
1
+ import { ERC1155_SALES_CONTRACT_ABI_V0, ERC1155_SALES_CONTRACT_ABI_V1, ERC721_SALE_ABI_V0, ERC721_SALE_ABI_V1 } from "../../../primary-sale-1u4QlPdA.js";
2
2
 
3
3
  export { ERC1155_SALES_CONTRACT_ABI_V0, ERC1155_SALES_CONTRACT_ABI_V1, ERC721_SALE_ABI_V0, ERC721_SALE_ABI_V1 };
@@ -1,2 +1,2 @@
1
- import { ERC1155_ABI, ERC20_ABI, ERC721_ABI, SEQUENCE_1155_ITEMS_ABI } from "../../../index-QxxS6f9r.js";
1
+ import { ERC1155_ABI, ERC20_ABI, ERC721_ABI, SEQUENCE_1155_ITEMS_ABI } from "../../../index-D9LPlmbC.js";
2
2
  export { ERC1155_ABI, ERC20_ABI, ERC721_ABI, SEQUENCE_1155_ITEMS_ABI };
@@ -1,3 +1,3 @@
1
- import { ERC1155_ABI, ERC20_ABI, ERC721_ABI, SEQUENCE_1155_ITEMS_ABI } from "../../../token-D9gZVqbX.js";
1
+ import { ERC1155_ABI, ERC20_ABI, ERC721_ABI, SEQUENCE_1155_ITEMS_ABI } from "../../../token-Cv7l2ZaL.js";
2
2
 
3
3
  export { ERC1155_ABI, ERC20_ABI, ERC721_ABI, SEQUENCE_1155_ITEMS_ABI };
@@ -1,7 +1,7 @@
1
- import "../create-config-lLSrnkbb.js";
2
- import { EIP2981_ABI, SequenceMarketplaceV1_ABI, SequenceMarketplaceV2_ABI } from "../index-CtF7EE2z.js";
3
- import { ERC1155_SALES_CONTRACT_ABI_V0, ERC1155_SALES_CONTRACT_ABI_V1, ERC721_SALE_ABI_V0, ERC721_SALE_ABI_V1 } from "../index-DX0Vm8HY.js";
4
- import { ERC1155_ABI, ERC20_ABI, ERC721_ABI, SEQUENCE_1155_ITEMS_ABI } from "../index-QxxS6f9r.js";
5
- import "../index-q7f-WDBS.js";
6
- import { calculateEarningsAfterFees, calculatePriceDifferencePercentage, cn, compareAddress, formatPrice, formatPriceWithFee, getMarketplaceDetails, getNetwork, getPresentableChainName, networkToWagmiChain, truncateEnd, truncateMiddle } from "../index-ByW08-Z7.js";
7
- export { EIP2981_ABI, ERC1155_ABI, ERC1155_SALES_CONTRACT_ABI_V0, ERC1155_SALES_CONTRACT_ABI_V1, ERC20_ABI, ERC721_ABI, ERC721_SALE_ABI_V0, ERC721_SALE_ABI_V1, SEQUENCE_1155_ITEMS_ABI, SequenceMarketplaceV1_ABI, SequenceMarketplaceV2_ABI, calculateEarningsAfterFees, calculatePriceDifferencePercentage, cn, compareAddress, formatPrice, formatPriceWithFee, getMarketplaceDetails, getNetwork, getPresentableChainName, networkToWagmiChain, truncateEnd, truncateMiddle };
1
+ import "../create-config-ZOB7i4ZJ.js";
2
+ import { MAIN_MODULE_ABI } from "../index-BeRV-7AX.js";
3
+ import { EIP2981_ABI, SequenceMarketplaceV1_ABI, SequenceMarketplaceV2_ABI } from "../index-Bxzjy0d1.js";
4
+ import { ERC1155_SALES_CONTRACT_ABI_V0, ERC1155_SALES_CONTRACT_ABI_V1, ERC721_SALE_ABI_V0, ERC721_SALE_ABI_V1 } from "../index-DwKr18CI.js";
5
+ import { ERC1155_ABI, ERC20_ABI, ERC721_ABI, SEQUENCE_1155_ITEMS_ABI } from "../index-D9LPlmbC.js";
6
+ import { calculateEarningsAfterFees, calculatePriceDifferencePercentage, cn, compareAddress, formatPrice, formatPriceWithFee, getMarketplaceDetails, getNetwork, getPresentableChainName, networkToWagmiChain, truncateEnd, truncateMiddle } from "../index-CS65jqOq.js";
7
+ export { EIP2981_ABI, ERC1155_ABI, ERC1155_SALES_CONTRACT_ABI_V0, ERC1155_SALES_CONTRACT_ABI_V1, ERC20_ABI, ERC721_ABI, ERC721_SALE_ABI_V0, ERC721_SALE_ABI_V1, MAIN_MODULE_ABI, SEQUENCE_1155_ITEMS_ABI, SequenceMarketplaceV1_ABI, SequenceMarketplaceV2_ABI, calculateEarningsAfterFees, calculatePriceDifferencePercentage, cn, compareAddress, formatPrice, formatPriceWithFee, getMarketplaceDetails, getNetwork, getPresentableChainName, networkToWagmiChain, truncateEnd, truncateMiddle };
@@ -1,13 +1,14 @@
1
1
  import "../builder.gen-B9wR2nvF.js";
2
- import "../transaction-CC2KxNF6.js";
3
- import "../marketplace.gen-JzNYpM0U.js";
4
- import { getNetwork, getPresentableChainName } from "../network-DnBEe1Ur.js";
5
- import "../types-G2PWxiJR.js";
6
- import { EIP2981_ABI, SequenceMarketplaceV1_ABI, SequenceMarketplaceV2_ABI } from "../marketplace-B5Z8G03R.js";
7
- import { ERC1155_SALES_CONTRACT_ABI_V0, ERC1155_SALES_CONTRACT_ABI_V1, ERC721_SALE_ABI_V0, ERC721_SALE_ABI_V1 } from "../primary-sale-CLjXRrDj.js";
8
- import { ERC1155_ABI, ERC20_ABI, ERC721_ABI, SEQUENCE_1155_ITEMS_ABI } from "../token-D9gZVqbX.js";
9
- import "../abi-Wr_aTZFi.js";
10
- import { calculateEarningsAfterFees, calculatePriceDifferencePercentage, cn, compareAddress, formatPrice, formatPriceWithFee, getMarketplaceDetails, networkToWagmiChain, truncateEnd, truncateMiddle } from "../utils-CKJd-CRf.js";
11
- import "../marketplace-logos-D8t86gsW.js";
2
+ import { networkToWagmiChain } from "../networkconfigToWagmiChain-DbUf6HiO.js";
3
+ import "../transaction-DZUW5RHu.js";
4
+ import "../marketplace.gen-ksUafDqS.js";
5
+ import { getNetwork, getPresentableChainName } from "../network-DtmiMhcg.js";
6
+ import "../types-B_-cnkcP.js";
7
+ import { MAIN_MODULE_ABI } from "../abi-fa-o9gH3.js";
8
+ import { EIP2981_ABI, SequenceMarketplaceV1_ABI, SequenceMarketplaceV2_ABI } from "../marketplace-NQB-sEQL.js";
9
+ import { ERC1155_SALES_CONTRACT_ABI_V0, ERC1155_SALES_CONTRACT_ABI_V1, ERC721_SALE_ABI_V0, ERC721_SALE_ABI_V1 } from "../primary-sale-1u4QlPdA.js";
10
+ import { ERC1155_ABI, ERC20_ABI, ERC721_ABI, SEQUENCE_1155_ITEMS_ABI } from "../token-Cv7l2ZaL.js";
11
+ import { calculateEarningsAfterFees, calculatePriceDifferencePercentage, cn, compareAddress, formatPrice, formatPriceWithFee, getMarketplaceDetails, truncateEnd, truncateMiddle } from "../utils-BfpDVibN.js";
12
+ import "../marketplace-logos-D4dS1Foy.js";
12
13
 
13
- export { EIP2981_ABI, ERC1155_ABI, ERC1155_SALES_CONTRACT_ABI_V0, ERC1155_SALES_CONTRACT_ABI_V1, ERC20_ABI, ERC721_ABI, ERC721_SALE_ABI_V0, ERC721_SALE_ABI_V1, SEQUENCE_1155_ITEMS_ABI, SequenceMarketplaceV1_ABI, SequenceMarketplaceV2_ABI, calculateEarningsAfterFees, calculatePriceDifferencePercentage, cn, compareAddress, formatPrice, formatPriceWithFee, getMarketplaceDetails, getNetwork, getPresentableChainName, networkToWagmiChain, truncateEnd, truncateMiddle };
14
+ export { EIP2981_ABI, ERC1155_ABI, ERC1155_SALES_CONTRACT_ABI_V0, ERC1155_SALES_CONTRACT_ABI_V1, ERC20_ABI, ERC721_ABI, ERC721_SALE_ABI_V0, ERC721_SALE_ABI_V1, MAIN_MODULE_ABI, SEQUENCE_1155_ITEMS_ABI, SequenceMarketplaceV1_ABI, SequenceMarketplaceV2_ABI, calculateEarningsAfterFees, calculatePriceDifferencePercentage, cn, compareAddress, formatPrice, formatPriceWithFee, getMarketplaceDetails, getNetwork, getPresentableChainName, networkToWagmiChain, truncateEnd, truncateMiddle };
@@ -0,0 +1,112 @@
1
+ import { currencyKeys, getQueryClient } from "./api-BoO0V5aJ.js";
2
+ import { marketCurrenciesQueryOptions } from "./marketCurrencies-sKrTX0og.js";
3
+ import { queryOptions } from "@tanstack/react-query";
4
+ import { formatUnits } from "viem";
5
+
6
+ //#region src/react/queries/utils/convertPriceToUSD.ts
7
+ /**
8
+ * Converts a price amount from a specific currency to USD using exchange rates
9
+ */
10
+ async function fetchConvertPriceToUSD(params) {
11
+ const { chainId, currencyAddress, amountRaw, config } = params;
12
+ const currencyDetails = (await getQueryClient().fetchQuery(marketCurrenciesQueryOptions({
13
+ chainId,
14
+ config
15
+ }))).find((c) => c.contractAddress.toLowerCase() === currencyAddress.toLowerCase());
16
+ if (!currencyDetails) throw new Error("Currency not found");
17
+ const usdAmount = Number(formatUnits(BigInt(amountRaw), currencyDetails.decimals)) * currencyDetails.exchangeRate;
18
+ return {
19
+ usdAmount,
20
+ usdAmountFormatted: usdAmount.toFixed(2)
21
+ };
22
+ }
23
+ function getConvertPriceToUSDQueryKey(params) {
24
+ const apiArgs = {
25
+ chainId: params.chainId,
26
+ currencyAddress: params.currencyAddress,
27
+ amountRaw: params.amountRaw
28
+ };
29
+ return [
30
+ ...currencyKeys.conversion,
31
+ "usd",
32
+ apiArgs
33
+ ];
34
+ }
35
+ function convertPriceToUSDQueryOptions(params) {
36
+ const enabled = Boolean(params.chainId && params.currencyAddress && params.amountRaw && params.config && (params.query?.enabled ?? true));
37
+ return queryOptions({
38
+ queryKey: getConvertPriceToUSDQueryKey(params),
39
+ queryFn: () => fetchConvertPriceToUSD({
40
+ chainId: params.chainId,
41
+ currencyAddress: params.currencyAddress,
42
+ amountRaw: params.amountRaw,
43
+ config: params.config
44
+ }),
45
+ ...params.query,
46
+ enabled
47
+ });
48
+ }
49
+
50
+ //#endregion
51
+ //#region src/react/queries/utils/comparePrices.ts
52
+ /**
53
+ * Compares prices between different currencies by converting both to USD
54
+ */
55
+ async function fetchComparePrices(params) {
56
+ const { chainId, priceAmountRaw, priceCurrencyAddress, compareToPriceAmountRaw, compareToPriceCurrencyAddress, config } = params;
57
+ const [priceUSD, compareToPriceUSD] = await Promise.all([fetchConvertPriceToUSD({
58
+ chainId,
59
+ currencyAddress: priceCurrencyAddress,
60
+ amountRaw: priceAmountRaw,
61
+ config
62
+ }), fetchConvertPriceToUSD({
63
+ chainId,
64
+ currencyAddress: compareToPriceCurrencyAddress,
65
+ amountRaw: compareToPriceAmountRaw,
66
+ config
67
+ })]);
68
+ const difference = priceUSD.usdAmount - compareToPriceUSD.usdAmount;
69
+ if (compareToPriceUSD.usdAmount === 0) throw new Error("Cannot compare to zero price");
70
+ const percentageDifference = difference / compareToPriceUSD.usdAmount * 100;
71
+ const isAbove = percentageDifference > 0;
72
+ const isSame = percentageDifference === 0;
73
+ return {
74
+ percentageDifference,
75
+ percentageDifferenceFormatted: Math.abs(percentageDifference).toFixed(2),
76
+ status: isAbove ? "above" : isSame ? "same" : "below"
77
+ };
78
+ }
79
+ function getComparePricesQueryKey(params) {
80
+ const apiArgs = {
81
+ chainId: params.chainId,
82
+ priceAmountRaw: params.priceAmountRaw,
83
+ priceCurrencyAddress: params.priceCurrencyAddress,
84
+ compareToPriceAmountRaw: params.compareToPriceAmountRaw,
85
+ compareToPriceCurrencyAddress: params.compareToPriceCurrencyAddress
86
+ };
87
+ return [
88
+ ...currencyKeys.conversion,
89
+ "compare",
90
+ apiArgs
91
+ ];
92
+ }
93
+ function comparePricesQueryOptions(params) {
94
+ const enabled = Boolean(params.chainId && params.priceAmountRaw && params.priceCurrencyAddress && params.compareToPriceAmountRaw && params.compareToPriceCurrencyAddress && params.config && (params.query?.enabled ?? true));
95
+ return queryOptions({
96
+ queryKey: getComparePricesQueryKey(params),
97
+ queryFn: () => fetchComparePrices({
98
+ chainId: params.chainId,
99
+ priceAmountRaw: params.priceAmountRaw,
100
+ priceCurrencyAddress: params.priceCurrencyAddress,
101
+ compareToPriceAmountRaw: params.compareToPriceAmountRaw,
102
+ compareToPriceCurrencyAddress: params.compareToPriceCurrencyAddress,
103
+ config: params.config
104
+ }),
105
+ ...params.query,
106
+ enabled
107
+ });
108
+ }
109
+
110
+ //#endregion
111
+ export { comparePricesQueryOptions, convertPriceToUSDQueryOptions, fetchComparePrices, fetchConvertPriceToUSD, getComparePricesQueryKey, getConvertPriceToUSDQueryKey };
112
+ //# sourceMappingURL=utils-BCgNhBFR.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils-BCgNhBFR.js","names":[],"sources":["../src/react/queries/utils/convertPriceToUSD.ts","../src/react/queries/utils/comparePrices.ts"],"sourcesContent":["import { queryOptions } from '@tanstack/react-query';\nimport { type Address, formatUnits } from 'viem';\nimport type { SdkConfig } from '../../../types';\nimport {\n\ttype Currency,\n\tcurrencyKeys,\n\tgetQueryClient,\n\ttype ValuesOptional,\n} from '../../_internal';\nimport type { StandardQueryOptions } from '../../types/query';\nimport { marketCurrenciesQueryOptions } from '../market/marketCurrencies';\n\nexport interface FetchConvertPriceToUSDParams {\n\tchainId: number;\n\tcurrencyAddress: Address;\n\tamountRaw: string;\n\tconfig: SdkConfig;\n}\n\nexport interface ConvertPriceToUSDReturn {\n\tusdAmount: number;\n\tusdAmountFormatted: string;\n}\n\n/**\n * Converts a price amount from a specific currency to USD using exchange rates\n */\nexport async function fetchConvertPriceToUSD(\n\tparams: FetchConvertPriceToUSDParams,\n): Promise<ConvertPriceToUSDReturn> {\n\tconst { chainId, currencyAddress, amountRaw, config } = params;\n\n\tconst queryClient = getQueryClient();\n\tconst currencies = (await queryClient.fetchQuery(\n\t\tmarketCurrenciesQueryOptions({\n\t\t\tchainId,\n\t\t\tconfig,\n\t\t}),\n\t)) as Currency[];\n\n\tconst currencyDetails = currencies.find(\n\t\t(c: Currency) =>\n\t\t\tc.contractAddress.toLowerCase() === currencyAddress.toLowerCase(),\n\t);\n\n\tif (!currencyDetails) {\n\t\tthrow new Error('Currency not found');\n\t}\n\n\tconst amountDecimal = Number(\n\t\tformatUnits(BigInt(amountRaw), currencyDetails.decimals),\n\t);\n\tconst usdAmount = amountDecimal * currencyDetails.exchangeRate;\n\n\treturn {\n\t\tusdAmount,\n\t\tusdAmountFormatted: usdAmount.toFixed(2),\n\t};\n}\n\nexport type ConvertPriceToUSDQueryOptions =\n\tValuesOptional<FetchConvertPriceToUSDParams> & {\n\t\tquery?: StandardQueryOptions;\n\t};\n\nexport function getConvertPriceToUSDQueryKey(\n\tparams: ConvertPriceToUSDQueryOptions,\n) {\n\tconst apiArgs = {\n\t\tchainId: params.chainId!,\n\t\tcurrencyAddress: params.currencyAddress!,\n\t\tamountRaw: params.amountRaw!,\n\t};\n\n\treturn [...currencyKeys.conversion, 'usd', apiArgs] as const;\n}\n\nexport function convertPriceToUSDQueryOptions(\n\tparams: ConvertPriceToUSDQueryOptions,\n) {\n\tconst enabled = Boolean(\n\t\tparams.chainId &&\n\t\t\tparams.currencyAddress &&\n\t\t\tparams.amountRaw &&\n\t\t\tparams.config &&\n\t\t\t(params.query?.enabled ?? true),\n\t);\n\n\treturn queryOptions({\n\t\tqueryKey: getConvertPriceToUSDQueryKey(params),\n\t\tqueryFn: () =>\n\t\t\tfetchConvertPriceToUSD({\n\t\t\t\t// biome-ignore lint/style/noNonNullAssertion: The enabled check above ensures these are not undefined\n\t\t\t\tchainId: params.chainId!,\n\t\t\t\t// biome-ignore lint/style/noNonNullAssertion: The enabled check above ensures these are not undefined\n\t\t\t\tcurrencyAddress: params.currencyAddress!,\n\t\t\t\t// biome-ignore lint/style/noNonNullAssertion: The enabled check above ensures these are not undefined\n\t\t\t\tamountRaw: params.amountRaw!,\n\t\t\t\t// biome-ignore lint/style/noNonNullAssertion: The enabled check above ensures these are not undefined\n\t\t\t\tconfig: params.config!,\n\t\t\t}),\n\t\t...params.query,\n\t\tenabled,\n\t});\n}\n","import { queryOptions } from '@tanstack/react-query';\nimport type { Address } from 'viem';\nimport type { SdkConfig } from '../../../types';\nimport { currencyKeys, type ValuesOptional } from '../../_internal';\nimport type { StandardQueryOptions } from '../../types/query';\nimport { fetchConvertPriceToUSD } from './convertPriceToUSD';\n\nexport interface FetchComparePricesParams {\n\tchainId: number;\n\t// First price details\n\tpriceAmountRaw: string;\n\tpriceCurrencyAddress: Address;\n\t// Second price details (to compare against)\n\tcompareToPriceAmountRaw: string;\n\tcompareToPriceCurrencyAddress: Address;\n\tconfig: SdkConfig;\n}\n\nexport type ComparePricesReturn = {\n\tpercentageDifference: number;\n\tpercentageDifferenceFormatted: string;\n\tstatus: 'above' | 'same' | 'below';\n};\n\n/**\n * Compares prices between different currencies by converting both to USD\n */\nexport async function fetchComparePrices(\n\tparams: FetchComparePricesParams,\n): Promise<ComparePricesReturn> {\n\tconst {\n\t\tchainId,\n\t\tpriceAmountRaw,\n\t\tpriceCurrencyAddress,\n\t\tcompareToPriceAmountRaw,\n\t\tcompareToPriceCurrencyAddress,\n\t\tconfig,\n\t} = params;\n\n\tconst [priceUSD, compareToPriceUSD] = await Promise.all([\n\t\tfetchConvertPriceToUSD({\n\t\t\tchainId,\n\t\t\tcurrencyAddress: priceCurrencyAddress,\n\t\t\tamountRaw: priceAmountRaw,\n\t\t\tconfig,\n\t\t}),\n\t\tfetchConvertPriceToUSD({\n\t\t\tchainId,\n\t\t\tcurrencyAddress: compareToPriceCurrencyAddress,\n\t\t\tamountRaw: compareToPriceAmountRaw,\n\t\t\tconfig,\n\t\t}),\n\t]);\n\n\tconst difference = priceUSD.usdAmount - compareToPriceUSD.usdAmount;\n\n\tif (compareToPriceUSD.usdAmount === 0) {\n\t\tthrow new Error('Cannot compare to zero price');\n\t}\n\n\tconst percentageDifference = (difference / compareToPriceUSD.usdAmount) * 100;\n\tconst isAbove = percentageDifference > 0;\n\tconst isSame = percentageDifference === 0;\n\n\treturn {\n\t\tpercentageDifference,\n\t\tpercentageDifferenceFormatted: Math.abs(percentageDifference).toFixed(2),\n\t\tstatus: isAbove ? 'above' : isSame ? 'same' : 'below',\n\t};\n}\n\nexport type ComparePricesQueryOptions =\n\tValuesOptional<FetchComparePricesParams> & {\n\t\tquery?: StandardQueryOptions;\n\t};\n\nexport function getComparePricesQueryKey(params: ComparePricesQueryOptions) {\n\tconst apiArgs = {\n\t\tchainId: params.chainId!,\n\t\tpriceAmountRaw: params.priceAmountRaw!,\n\t\tpriceCurrencyAddress: params.priceCurrencyAddress!,\n\t\tcompareToPriceAmountRaw: params.compareToPriceAmountRaw!,\n\t\tcompareToPriceCurrencyAddress: params.compareToPriceCurrencyAddress!,\n\t};\n\n\treturn [...currencyKeys.conversion, 'compare', apiArgs] as const;\n}\n\nexport function comparePricesQueryOptions(params: ComparePricesQueryOptions) {\n\tconst enabled = Boolean(\n\t\tparams.chainId &&\n\t\t\tparams.priceAmountRaw &&\n\t\t\tparams.priceCurrencyAddress &&\n\t\t\tparams.compareToPriceAmountRaw &&\n\t\t\tparams.compareToPriceCurrencyAddress &&\n\t\t\tparams.config &&\n\t\t\t(params.query?.enabled ?? true),\n\t);\n\n\treturn queryOptions({\n\t\tqueryKey: getComparePricesQueryKey(params),\n\t\tqueryFn: () =>\n\t\t\tfetchComparePrices({\n\t\t\t\t// biome-ignore lint/style/noNonNullAssertion: The enabled check above ensures these are not undefined\n\t\t\t\tchainId: params.chainId!,\n\t\t\t\t// biome-ignore lint/style/noNonNullAssertion: The enabled check above ensures these are not undefined\n\t\t\t\tpriceAmountRaw: params.priceAmountRaw!,\n\t\t\t\t// biome-ignore lint/style/noNonNullAssertion: The enabled check above ensures these are not undefined\n\t\t\t\tpriceCurrencyAddress: params.priceCurrencyAddress!,\n\t\t\t\t// biome-ignore lint/style/noNonNullAssertion: The enabled check above ensures these are not undefined\n\t\t\t\tcompareToPriceAmountRaw: params.compareToPriceAmountRaw!,\n\t\t\t\t// biome-ignore lint/style/noNonNullAssertion: The enabled check above ensures these are not undefined\n\t\t\t\tcompareToPriceCurrencyAddress: params.compareToPriceCurrencyAddress!,\n\t\t\t\t// biome-ignore lint/style/noNonNullAssertion: The enabled check above ensures these are not undefined\n\t\t\t\tconfig: params.config!,\n\t\t\t}),\n\t\t...params.query,\n\t\tenabled,\n\t});\n}\n"],"mappings":";;;;;;;;;AA2BA,eAAsB,uBACrB,QACmC;CACnC,MAAM,EAAE,SAAS,iBAAiB,WAAW,WAAW;CAUxD,MAAM,mBAPc,MADA,gBAAgB,CACE,WACrC,6BAA6B;EAC5B;EACA;EACA,CAAC,CACF,EAEkC,MACjC,MACA,EAAE,gBAAgB,aAAa,KAAK,gBAAgB,aAAa,CAClE;AAED,KAAI,CAAC,gBACJ,OAAM,IAAI,MAAM,qBAAqB;CAMtC,MAAM,YAHgB,OACrB,YAAY,OAAO,UAAU,EAAE,gBAAgB,SAAS,CACxD,GACiC,gBAAgB;AAElD,QAAO;EACN;EACA,oBAAoB,UAAU,QAAQ,EAAE;EACxC;;AAQF,SAAgB,6BACf,QACC;CACD,MAAM,UAAU;EACf,SAAS,OAAO;EAChB,iBAAiB,OAAO;EACxB,WAAW,OAAO;EAClB;AAED,QAAO;EAAC,GAAG,aAAa;EAAY;EAAO;EAAQ;;AAGpD,SAAgB,8BACf,QACC;CACD,MAAM,UAAU,QACf,OAAO,WACN,OAAO,mBACP,OAAO,aACP,OAAO,WACN,OAAO,OAAO,WAAW,MAC3B;AAED,QAAO,aAAa;EACnB,UAAU,6BAA6B,OAAO;EAC9C,eACC,uBAAuB;GAEtB,SAAS,OAAO;GAEhB,iBAAiB,OAAO;GAExB,WAAW,OAAO;GAElB,QAAQ,OAAO;GACf,CAAC;EACH,GAAG,OAAO;EACV;EACA,CAAC;;;;;;;;AC5EH,eAAsB,mBACrB,QAC+B;CAC/B,MAAM,EACL,SACA,gBACA,sBACA,yBACA,+BACA,WACG;CAEJ,MAAM,CAAC,UAAU,qBAAqB,MAAM,QAAQ,IAAI,CACvD,uBAAuB;EACtB;EACA,iBAAiB;EACjB,WAAW;EACX;EACA,CAAC,EACF,uBAAuB;EACtB;EACA,iBAAiB;EACjB,WAAW;EACX;EACA,CAAC,CACF,CAAC;CAEF,MAAM,aAAa,SAAS,YAAY,kBAAkB;AAE1D,KAAI,kBAAkB,cAAc,EACnC,OAAM,IAAI,MAAM,+BAA+B;CAGhD,MAAM,uBAAwB,aAAa,kBAAkB,YAAa;CAC1E,MAAM,UAAU,uBAAuB;CACvC,MAAM,SAAS,yBAAyB;AAExC,QAAO;EACN;EACA,+BAA+B,KAAK,IAAI,qBAAqB,CAAC,QAAQ,EAAE;EACxE,QAAQ,UAAU,UAAU,SAAS,SAAS;EAC9C;;AAQF,SAAgB,yBAAyB,QAAmC;CAC3E,MAAM,UAAU;EACf,SAAS,OAAO;EAChB,gBAAgB,OAAO;EACvB,sBAAsB,OAAO;EAC7B,yBAAyB,OAAO;EAChC,+BAA+B,OAAO;EACtC;AAED,QAAO;EAAC,GAAG,aAAa;EAAY;EAAW;EAAQ;;AAGxD,SAAgB,0BAA0B,QAAmC;CAC5E,MAAM,UAAU,QACf,OAAO,WACN,OAAO,kBACP,OAAO,wBACP,OAAO,2BACP,OAAO,iCACP,OAAO,WACN,OAAO,OAAO,WAAW,MAC3B;AAED,QAAO,aAAa;EACnB,UAAU,yBAAyB,OAAO;EAC1C,eACC,mBAAmB;GAElB,SAAS,OAAO;GAEhB,gBAAgB,OAAO;GAEvB,sBAAsB,OAAO;GAE7B,yBAAyB,OAAO;GAEhC,+BAA+B,OAAO;GAEtC,QAAQ,OAAO;GACf,CAAC;EACH,GAAG,OAAO;EACV;EACA,CAAC"}
@@ -1,5 +1,5 @@
1
- import { MarketplaceKind } from "./marketplace.gen-JzNYpM0U.js";
2
- import { AlienSwapLogo, BlurLogo, LooksRareLogo, MagicEdenLogo, MintifyLogo, OpenSeaLogo, SequenceLogo, X2y2Logo } from "./marketplace-logos-D8t86gsW.js";
1
+ import { MarketplaceKind } from "./marketplace.gen-ksUafDqS.js";
2
+ import { AlienSwapLogo, BlurLogo, LooksRareLogo, MagicEdenLogo, MintifyLogo, OpenSeaLogo, SequenceLogo, X2y2Logo } from "./marketplace-logos-D4dS1Foy.js";
3
3
  import { clsx } from "clsx";
4
4
  import { twMerge } from "tailwind-merge";
5
5
  import * as dn from "dnum";
@@ -85,24 +85,10 @@ function getMarketplaceDetails({ originName, kind }) {
85
85
  if (KIND_TO_MARKETPLACE[kind]) return MARKETPLACES[KIND_TO_MARKETPLACE[kind]];
86
86
  }
87
87
  function getRootDomain(url) {
88
- const domain = url.replace(/^(https?:\/\/)?(www\.)?/, "");
89
- const parts = domain.split(".");
88
+ const parts = url.replace(/^(https?:\/\/)?(www\.)?/, "").split(".");
90
89
  return parts[parts.length - 2] || parts[0];
91
90
  }
92
91
 
93
- //#endregion
94
- //#region src/utils/networkconfigToWagmiChain.ts
95
- const networkToWagmiChain = (network) => ({
96
- ...network,
97
- id: Number(network.chainId),
98
- name: network.name,
99
- nativeCurrency: { ...network.nativeToken },
100
- rpcUrls: {
101
- default: { http: [network.rpcUrl] },
102
- public: { http: [network.rpcUrl] }
103
- }
104
- });
105
-
106
92
  //#endregion
107
93
  //#region src/utils/price.ts
108
94
  /**
@@ -121,9 +107,7 @@ const networkToWagmiChain = (network) => ({
121
107
  const calculatePriceDifferencePercentage = ({ inputPriceRaw, basePriceRaw, decimals }) => {
122
108
  const inputPrice = Number(formatUnits(inputPriceRaw, decimals));
123
109
  const basePrice = Number(formatUnits(basePriceRaw, decimals));
124
- const difference = inputPrice - basePrice;
125
- const percentageDifference = difference / basePrice * 100;
126
- return percentageDifference.toFixed(2);
110
+ return ((inputPrice - basePrice) / basePrice * 100).toFixed(2);
127
111
  };
128
112
  /**
129
113
  * Formats a raw price amount with the specified number of decimal places
@@ -136,8 +120,7 @@ const calculatePriceDifferencePercentage = ({ inputPriceRaw, basePriceRaw, decim
136
120
  * ```
137
121
  */
138
122
  const formatPrice = (amount, decimals) => {
139
- const formattedUnits = Number(formatUnits(amount, decimals));
140
- return formattedUnits.toLocaleString("en-US", {
123
+ return Number(formatUnits(amount, decimals)).toLocaleString("en-US", {
141
124
  minimumFractionDigits: 0,
142
125
  maximumFractionDigits: decimals
143
126
  });
@@ -205,5 +188,5 @@ const formatPriceWithFee = (amount, decimals, feePercentage) => {
205
188
  };
206
189
 
207
190
  //#endregion
208
- export { calculateEarningsAfterFees, calculatePriceDifferencePercentage, cn, compareAddress, formatPrice, formatPriceWithFee, getMarketplaceDetails, networkToWagmiChain, truncateEnd, truncateMiddle };
209
- //# sourceMappingURL=utils-CKJd-CRf.js.map
191
+ export { calculateEarningsAfterFees, calculatePriceDifferencePercentage, cn, compareAddress, formatPrice, formatPriceWithFee, getMarketplaceDetails, truncateEnd, truncateMiddle };
192
+ //# sourceMappingURL=utils-BfpDVibN.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils-BfpDVibN.js","names":["MARKETPLACES: Record<string, Marketplace>","KIND_TO_MARKETPLACE: Partial<\n\tRecord<MarketplaceKind, keyof typeof MARKETPLACES>\n>"],"sources":["../src/utils/address.ts","../src/utils/cn.ts","../src/utils/getMarketplaceDetails.ts","../src/utils/price.ts"],"sourcesContent":["export const truncateMiddle = (\n\taddress: string,\n\tminPrefix = 20,\n\tminSuffix = 3,\n): string => {\n\tif (minPrefix + minSuffix >= 40) {\n\t\treturn address;\n\t}\n\treturn `${address.substring(0, 2 + minPrefix)}…${address.substring(address.length - minSuffix)}`;\n};\n\nexport const truncateEnd = (text: string | undefined, truncateAt: number) => {\n\tif (!text) return '';\n\n\tlet finalText = text;\n\n\tif (text.length >= truncateAt) {\n\t\tfinalText = `${text.slice(0, truncateAt)}...`;\n\t}\n\n\treturn finalText;\n};\n\nexport const compareAddress = (a = '', b = '') => {\n\treturn a.toLowerCase() === b.toLowerCase();\n};\n","import { type ClassValue, clsx } from 'clsx';\nimport { twMerge } from 'tailwind-merge';\n\nexport function cn(...inputs: ClassValue[]) {\n\treturn twMerge(clsx(inputs));\n}\n","import type { Image } from '@0xsequence/design-system';\nimport type { ComponentType } from 'react';\nimport {\n\tAlienSwapLogo,\n\tBlurLogo,\n\tLooksRareLogo,\n\tMagicEdenLogo,\n\tMintifyLogo,\n\tOpenSeaLogo,\n\tSequenceLogo,\n\tX2y2Logo,\n} from '../react/ui/components/marketplace-logos';\nimport { MarketplaceKind } from '../types';\n\ninterface Marketplace {\n\tlogo: ComponentType<React.ComponentProps<typeof Image>>;\n\tdisplayName: string;\n}\n\nconst MARKETPLACES: Record<string, Marketplace> = {\n\tsequence: {\n\t\tlogo: SequenceLogo,\n\t\tdisplayName: 'Sequence',\n\t},\n\topensea: {\n\t\tlogo: OpenSeaLogo,\n\t\tdisplayName: 'OpenSea',\n\t},\n\tmagiceden: {\n\t\tlogo: MagicEdenLogo,\n\t\tdisplayName: 'Magic Eden',\n\t},\n\tmintify: {\n\t\tlogo: MintifyLogo,\n\t\tdisplayName: 'Mintify',\n\t},\n\tlooksrare: {\n\t\tlogo: LooksRareLogo,\n\t\tdisplayName: 'Looks Rare',\n\t},\n\tx2y2: {\n\t\tlogo: X2y2Logo,\n\t\tdisplayName: 'X2Y2',\n\t},\n\tblur: {\n\t\tlogo: BlurLogo,\n\t\tdisplayName: 'Blur',\n\t},\n\talienswap: {\n\t\tlogo: AlienSwapLogo,\n\t\tdisplayName: 'AlienSwap',\n\t},\n} as const;\n\nconst KIND_TO_MARKETPLACE: Partial<\n\tRecord<MarketplaceKind, keyof typeof MARKETPLACES>\n> = {\n\t[MarketplaceKind.sequence_marketplace_v1]: 'sequence',\n\t[MarketplaceKind.sequence_marketplace_v2]: 'sequence',\n\t[MarketplaceKind.opensea]: 'opensea',\n\t[MarketplaceKind.mintify]: 'mintify',\n\t[MarketplaceKind.looks_rare]: 'looksrare',\n\t[MarketplaceKind.x2y2]: 'x2y2',\n\t[MarketplaceKind.blur]: 'blur',\n\t[MarketplaceKind.magic_eden]: 'magiceden',\n};\n\ntype MarketplaceDetailsProp = {\n\toriginName: string;\n\tkind: MarketplaceKind;\n};\n\n// TODO: add support for more marketplaces and improve detection of marketplace\nexport function getMarketplaceDetails({\n\toriginName,\n\tkind,\n}: MarketplaceDetailsProp) {\n\tif (\n\t\tkind === MarketplaceKind.sequence_marketplace_v1 ||\n\t\tkind === MarketplaceKind.sequence_marketplace_v2\n\t) {\n\t\treturn MARKETPLACES.sequence;\n\t}\n\n\tlet name = originName.toLowerCase();\n\n\ttry {\n\t\t//Check if the name can be parsed as a url\n\t\tnew URL(name);\n\t\t// if it can we are naively trying to extract the root domain\n\t\tname = getRootDomain(name) || name;\n\t} catch {}\n\n\tname = name.replace(/ /g, '');\n\n\tconst details = MARKETPLACES[name];\n\n\tif (details) {\n\t\treturn details;\n\t}\n\n\tif (KIND_TO_MARKETPLACE[kind]) {\n\t\treturn MARKETPLACES[KIND_TO_MARKETPLACE[kind]];\n\t}\n}\n\nfunction getRootDomain(url: string) {\n\tconst domain = url.replace(/^(https?:\\/\\/)?(www\\.)?/, '');\n\tconst parts = domain.split('.');\n\treturn parts[parts.length - 2] || parts[0];\n}\n","import * as dn from 'dnum';\nimport { formatUnits } from 'viem';\n\ntype CalculatePriceDifferencePercentageArgs = {\n\tinputPriceRaw: bigint;\n\tbasePriceRaw: bigint;\n\tdecimals: number;\n};\n\n/**\n * Calculates the percentage difference between two prices\n * @param args - Object containing input price, base price, and decimals\n * @returns The percentage difference as a string with 2 decimal places\n * @example\n * ```ts\n * const diff = calculatePriceDifferencePercentage({\n * inputPriceRaw: 1000000n,\n * basePriceRaw: 900000n,\n * decimals: 6\n * }); // Returns \"11.11\"\n * ```\n */\nexport const calculatePriceDifferencePercentage = ({\n\tinputPriceRaw,\n\tbasePriceRaw,\n\tdecimals,\n}: CalculatePriceDifferencePercentageArgs) => {\n\tconst inputPrice = Number(formatUnits(inputPriceRaw, decimals));\n\tconst basePrice = Number(formatUnits(basePriceRaw, decimals));\n\tconst difference = inputPrice - basePrice;\n\tconst percentageDifference = (difference / basePrice) * 100;\n\n\treturn percentageDifference.toFixed(2);\n};\n\n/**\n * Formats a raw price amount with the specified number of decimal places\n * @param amount - The raw price amount as a bigint\n * @param decimals - Number of decimal places to format to\n * @returns Formatted price string with proper decimal and thousands separators\n * @example\n * ```ts\n * const formatted = formatPrice(1000000n, 6); // Returns \"1.000000\"\n * ```\n */\nexport const formatPrice = (amount: bigint, decimals: number): string => {\n\tconst formattedUnits = Number(formatUnits(amount, decimals));\n\treturn formattedUnits.toLocaleString('en-US', {\n\t\tminimumFractionDigits: 0,\n\t\tmaximumFractionDigits: decimals,\n\t});\n};\n\n/**\n * Calculates the final earnings amount after applying multiple fee percentages\n * @param amount - The raw amount as a bigint (e.g., from a blockchain transaction)\n * @param decimals - The number of decimal places for the currency (e.g., 18 for ETH, 6 for USDC)\n * @param fees - Array of fee percentages to apply (e.g., [2.5, 1.0] for 2.5% and 1% fees)\n * @returns Formatted string representing the final earnings after all fees are applied\n * @throws Will return '0' if there's an error in calculation\n * @example\n * ```ts\n * const earnings = calculateEarningsAfterFees(\n * 1000000000000000000n, // 1 ETH\n * 18, // ETH decimals\n * [2.5, 1.0] // 2.5% and 1% fees\n * ); // Returns \"0.96525\" (1 ETH after 2.5% and 1% fees)\n * ```\n */\nexport const calculateEarningsAfterFees = (\n\tamount: bigint,\n\tdecimals: number,\n\tfees: number[],\n): string => {\n\ttry {\n\t\tconst decimalAmount = Number(formatUnits(amount, decimals));\n\t\tlet earnings = dn.from(decimalAmount.toString(), decimals);\n\n\t\tfor (const fee of fees) {\n\t\t\tif (fee > 0) {\n\t\t\t\tconst feeMultiplier = dn.from((1 - fee / 100).toString(), decimals);\n\t\t\t\tearnings = dn.multiply(earnings, feeMultiplier);\n\t\t\t}\n\t\t}\n\n\t\treturn dn.format(earnings, {\n\t\t\tdigits: decimals,\n\t\t\ttrailingZeros: false,\n\t\t\tlocale: 'en-US',\n\t\t});\n\t} catch (error) {\n\t\tconsole.error('Error calculating earnings after fees:', error);\n\t\treturn '0';\n\t}\n};\n\n/**\n * Formats a price amount with fee applied\n * @param amount - The raw price amount as a bigint\n * @param decimals - Number of decimal places for the currency\n * @param feePercentage - Fee percentage to apply (e.g., 3.5 for 3.5%)\n * @returns Formatted price string with fee applied and proper decimal/thousands separators\n * @example\n * ```ts\n * const priceWithFee = formatPriceWithFee(1000000n, 6, 3.5); // Returns \"1.035\"\n * ```\n */\nexport const formatPriceWithFee = (\n\tamount: bigint,\n\tdecimals: number,\n\tfeePercentage: number,\n): string => {\n\ttry {\n\t\tconst decimalAmount = Number(formatUnits(amount, decimals));\n\t\tconst price = dn.from(decimalAmount.toString(), decimals);\n\t\tconst feeMultiplier = dn.from(\n\t\t\t(1 + feePercentage / 100).toString(),\n\t\t\tdecimals,\n\t\t);\n\t\tconst totalPrice = dn.multiply(price, feeMultiplier);\n\n\t\treturn dn.format(totalPrice, {\n\t\t\tdigits: decimals,\n\t\t\ttrailingZeros: false,\n\t\t\tlocale: 'en-US',\n\t\t});\n\t} catch (error) {\n\t\tconsole.error('Error formatting price with fee:', error);\n\t\treturn '0';\n\t}\n};\n"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { ContractType } from "./marketplace.gen-JzNYpM0U.js";
1
+ import { ContractType } from "./marketplace.gen-ksUafDqS.js";
2
2
  import { formatUnits } from "viem";
3
3
 
4
4
  //#region src/react/ui/components/marketplace-collectible-card/utils/formatPrice.ts
@@ -40,4 +40,4 @@ const getSupplyStatusText = ({ quantityRemaining, collectionType, unlimitedSuppl
40
40
 
41
41
  //#endregion
42
42
  export { OVERFLOW_PRICE, UNDERFLOW_PRICE, formatPriceNumber, getSupplyStatusText };
43
- //# sourceMappingURL=utils-wquIhK6T.js.map
43
+ //# sourceMappingURL=utils-BqxcalL2.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils-BqxcalL2.js","names":[],"sources":["../src/react/ui/components/marketplace-collectible-card/utils/formatPrice.ts","../src/react/ui/components/marketplace-collectible-card/utils/supplyStatus.ts"],"sourcesContent":["import { formatUnits } from 'viem';\n\nexport const OVERFLOW_PRICE = 100000000;\nexport const UNDERFLOW_PRICE = 0.0001;\n\nexport const formatPriceNumber = (\n\tamount: string,\n\tdecimals: number,\n): {\n\tformattedNumber: string;\n\tisUnderflow: boolean;\n\tisOverflow: boolean;\n} => {\n\tconst formattedPrice = formatUnits(BigInt(amount), decimals);\n\tconst numericPrice = Number.parseFloat(formattedPrice);\n\n\tif (numericPrice < UNDERFLOW_PRICE) {\n\t\treturn {\n\t\t\tformattedNumber: UNDERFLOW_PRICE.toString(),\n\t\t\tisUnderflow: true,\n\t\t\tisOverflow: false,\n\t\t};\n\t}\n\n\tif (numericPrice > OVERFLOW_PRICE) {\n\t\treturn {\n\t\t\tformattedNumber: OVERFLOW_PRICE.toLocaleString('en-US', {\n\t\t\t\tmaximumFractionDigits: 2,\n\t\t\t}),\n\t\t\tisUnderflow: false,\n\t\t\tisOverflow: true,\n\t\t};\n\t}\n\n\tconst maxDecimals = numericPrice < 0.01 ? 6 : 4;\n\n\treturn {\n\t\tformattedNumber: numericPrice.toLocaleString('en-US', {\n\t\t\tminimumFractionDigits: 0,\n\t\t\tmaximumFractionDigits: maxDecimals,\n\t\t}),\n\t\tisUnderflow: false,\n\t\tisOverflow: false,\n\t};\n};\n","import { ContractType } from '../../../../_internal';\n\nexport const getSupplyStatusText = ({\n\tquantityRemaining,\n\tcollectionType,\n\tunlimitedSupply,\n}: {\n\tquantityRemaining: string | undefined;\n\tcollectionType: ContractType;\n\tunlimitedSupply?: boolean;\n}): string => {\n\tif (unlimitedSupply) {\n\t\treturn 'Unlimited Supply';\n\t}\n\n\tif (\n\t\tcollectionType === ContractType.ERC721 &&\n\t\tquantityRemaining === undefined\n\t) {\n\t\treturn 'Out of stock';\n\t}\n\n\tif (\n\t\tcollectionType === ContractType.ERC1155 &&\n\t\t!unlimitedSupply &&\n\t\tquantityRemaining === '0'\n\t) {\n\t\treturn 'Out of stock';\n\t}\n\n\tif (quantityRemaining && Number(quantityRemaining) > 0) {\n\t\treturn `Supply: ${quantityRemaining}`;\n\t}\n\n\treturn 'Out of stock';\n};\n"],"mappings":";;;;AAEA,MAAa,iBAAiB;AAC9B,MAAa,kBAAkB;AAE/B,MAAa,qBACZ,QACA,aAKI;CACJ,MAAM,iBAAiB,YAAY,OAAO,OAAO,EAAE,SAAS;CAC5D,MAAM,eAAe,OAAO,WAAW,eAAe;AAEtD,KAAI,eAAe,gBAClB,QAAO;EACN,iBAAiB,gBAAgB,UAAU;EAC3C,aAAa;EACb,YAAY;EACZ;AAGF,KAAI,eAAe,eAClB,QAAO;EACN,iBAAiB,eAAe,eAAe,SAAS,EACvD,uBAAuB,GACvB,CAAC;EACF,aAAa;EACb,YAAY;EACZ;CAGF,MAAM,cAAc,eAAe,MAAO,IAAI;AAE9C,QAAO;EACN,iBAAiB,aAAa,eAAe,SAAS;GACrD,uBAAuB;GACvB,uBAAuB;GACvB,CAAC;EACF,aAAa;EACb,YAAY;EACZ;;;;;ACzCF,MAAa,uBAAuB,EACnC,mBACA,gBACA,sBAKa;AACb,KAAI,gBACH,QAAO;AAGR,KACC,mBAAmB,aAAa,UAChC,sBAAsB,OAEtB,QAAO;AAGR,KACC,mBAAmB,aAAa,WAChC,CAAC,mBACD,sBAAsB,IAEtB,QAAO;AAGR,KAAI,qBAAqB,OAAO,kBAAkB,GAAG,EACpD,QAAO,WAAW;AAGnB,QAAO"}
@@ -0,0 +1,25 @@
1
+ import { getIndexerClient } from "./api-BoO0V5aJ.js";
2
+ import { TransactionReceiptNotFoundError } from "viem";
3
+
4
+ //#region src/react/utils/waitForTransactionReceipt.ts
5
+ const MAX_RETRIES = 3;
6
+ const MAX_BLOCK_WAIT = 30;
7
+ const waitForTransactionReceipt = async ({ txHash, chainId, sdkConfig, maxBlockWait = MAX_BLOCK_WAIT }) => {
8
+ const indexer = getIndexerClient(chainId, sdkConfig);
9
+ let retries = 0;
10
+ while (retries < MAX_RETRIES) try {
11
+ return (await indexer.fetchTransactionReceipt({
12
+ txnHash: txHash,
13
+ maxBlockWait
14
+ })).receipt;
15
+ } catch (error) {
16
+ retries++;
17
+ console.error(`Failed to fetch transaction receipt (attempt ${retries}/${MAX_RETRIES}):`, error);
18
+ if (retries >= MAX_RETRIES) throw TransactionReceiptNotFoundError;
19
+ }
20
+ throw TransactionReceiptNotFoundError;
21
+ };
22
+
23
+ //#endregion
24
+ export { waitForTransactionReceipt };
25
+ //# sourceMappingURL=waitForTransactionReceipt-DieAnV52.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"waitForTransactionReceipt-DieAnV52.js","names":[],"sources":["../src/react/utils/waitForTransactionReceipt.ts"],"sourcesContent":["import type { TransactionReceipt } from '@0xsequence/indexer';\nimport { type Hex, TransactionReceiptNotFoundError } from 'viem';\nimport type { SdkConfig } from '../../types';\nimport { getIndexerClient } from '../_internal/api';\n\nconst MAX_RETRIES = 3;\nconst MAX_BLOCK_WAIT = 30;\n\nexport const waitForTransactionReceipt = async ({\n\ttxHash,\n\tchainId,\n\tsdkConfig,\n\tmaxBlockWait = MAX_BLOCK_WAIT,\n}: {\n\ttxHash: Hex;\n\tchainId: number;\n\tsdkConfig: SdkConfig;\n\tmaxBlockWait?: number;\n}): Promise<TransactionReceipt> => {\n\tconst indexer = getIndexerClient(chainId, sdkConfig);\n\tlet retries = 0;\n\n\twhile (retries < MAX_RETRIES) {\n\t\ttry {\n\t\t\tconst result = await indexer.fetchTransactionReceipt({\n\t\t\t\ttxnHash: txHash,\n\t\t\t\tmaxBlockWait,\n\t\t\t});\n\t\t\treturn result.receipt;\n\t\t} catch (error) {\n\t\t\tretries++;\n\t\t\tconsole.error(\n\t\t\t\t`Failed to fetch transaction receipt (attempt ${retries}/${MAX_RETRIES}):`,\n\t\t\t\terror,\n\t\t\t);\n\t\t\tif (retries >= MAX_RETRIES) {\n\t\t\t\tthrow TransactionReceiptNotFoundError;\n\t\t\t}\n\t\t}\n\t}\n\n\tthrow TransactionReceiptNotFoundError;\n};\n"],"mappings":";;;;AAKA,MAAM,cAAc;AACpB,MAAM,iBAAiB;AAEvB,MAAa,4BAA4B,OAAO,EAC/C,QACA,SACA,WACA,eAAe,qBAMmB;CAClC,MAAM,UAAU,iBAAiB,SAAS,UAAU;CACpD,IAAI,UAAU;AAEd,QAAO,UAAU,YAChB,KAAI;AAKH,UAJe,MAAM,QAAQ,wBAAwB;GACpD,SAAS;GACT;GACA,CAAC,EACY;UACN,OAAO;AACf;AACA,UAAQ,MACP,gDAAgD,QAAQ,GAAG,YAAY,KACvE,MACA;AACD,MAAI,WAAW,YACd,OAAM;;AAKT,OAAM"}
@@ -3,4 +3,4 @@ var x2y2_default = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAIAAAACACAYAAA
3
3
 
4
4
  //#endregion
5
5
  export { x2y2_default as default };
6
- //# sourceMappingURL=x2y2-CQdg24VP.js.map
6
+ //# sourceMappingURL=x2y2-45WDooeh.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"x2y2-CQdg24VP.js","names":[],"sources":["../src/react/ui/images/marketplaces/x2y2.png"],"sourcesContent":["\"data:image/png;base64,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\""],"mappings":";mBAAA"}
1
+ {"version":3,"file":"x2y2-45WDooeh.js","names":[],"sources":["../src/react/ui/images/marketplaces/x2y2.png"],"sourcesContent":["\"data:image/png;base64,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\""],"mappings":";mBAAA"}
@@ -3,4 +3,4 @@ var zora_default = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAIAAAACACAYAAA
3
3
 
4
4
  //#endregion
5
5
  export { zora_default as default };
6
- //# sourceMappingURL=zora-DdEydy4L.js.map
6
+ //# sourceMappingURL=zora-CbeBoLvQ.js.map