@0xsequence/marketplace-sdk 0.8.10 → 0.8.12

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 (436) hide show
  1. package/.changeset/fluffy-jokes-lay.md +5 -0
  2. package/.changeset/wise-bugs-boil.md +8 -0
  3. package/CHANGELOG.md +182 -3
  4. package/dist/CartIcon-Bll1rbxv.js +141 -0
  5. package/dist/CartIcon-Bll1rbxv.js.map +1 -0
  6. package/dist/CollectibleCard-CLQTl0_6.d.ts +8 -0
  7. package/dist/_internal-69NEWNUE.js +34 -0
  8. package/dist/_internal-69NEWNUE.js.map +1 -0
  9. package/dist/abi-BKyRjVcZ.js +0 -0
  10. package/dist/{alien_swap-2B65TDGT.js → alien_swap-B_76IMma.js} +5 -5
  11. package/dist/alien_swap-B_76IMma.js.map +1 -0
  12. package/dist/api-1KFxYh7o.js +232 -0
  13. package/dist/api-1KFxYh7o.js.map +1 -0
  14. package/dist/{aqua-xyz-WMYQLAIS.js → aqua-xyz-CMN_TFY5.js} +5 -5
  15. package/dist/aqua-xyz-CMN_TFY5.js.map +1 -0
  16. package/dist/{aura-V22RV5OG.js → aura-Cye_TuHj.js} +5 -5
  17. package/dist/aura-Cye_TuHj.js.map +1 -0
  18. package/dist/{blur-GE5QOMCM.js → blur-DWDMyMpK.js} +5 -5
  19. package/dist/blur-DWDMyMpK.js.map +1 -0
  20. package/dist/builder-api-BQvzykoU.js +28 -0
  21. package/dist/builder-api-BQvzykoU.js.map +1 -0
  22. package/dist/builder-api-DoK3907S.d.ts +12 -0
  23. package/dist/builder.gen-CxP9NT1p.js +303 -0
  24. package/dist/builder.gen-CxP9NT1p.js.map +1 -0
  25. package/dist/{coinbase-NLHJMGAP.js → coinbase-ByA_XRB0.js} +5 -5
  26. package/dist/coinbase-ByA_XRB0.js.map +1 -0
  27. package/dist/{element-2LGTYYSP.js → element-b77CyXIZ.js} +5 -5
  28. package/dist/element-b77CyXIZ.js.map +1 -0
  29. package/dist/{foundation-BPN66ZTN.js → foundation-DbOrKP9Y.js} +5 -5
  30. package/dist/foundation-DbOrKP9Y.js.map +1 -0
  31. package/dist/index-1bezgsFq.d.ts +1129 -0
  32. package/dist/index-4-kfOFdx.d.ts +22 -0
  33. package/dist/index-BEYefG1G.d.ts +24 -0
  34. package/dist/index-BHiSG-Yi.d.ts +312 -0
  35. package/dist/index-BIMIpDiI.d.ts +188 -0
  36. package/dist/index-BQW0PUkQ.d.ts +3973 -0
  37. package/dist/index-BfH21xmk.d.ts +117 -0
  38. package/dist/index-BjIwVzc4.d.ts +1057 -0
  39. package/dist/index-C39K_8SG.d.ts +1 -0
  40. package/dist/index-CN8puQQJ.d.ts +24 -0
  41. package/dist/index-Cl7PQOGu.d.ts +102 -0
  42. package/dist/index-D5v5iluA.d.ts +809 -0
  43. package/dist/index-DXMfTZ1F.d.ts +7 -0
  44. package/dist/index-DafWjEb4.d.ts +65 -0
  45. package/dist/index-ij9f8GAA.d.ts +1 -0
  46. package/dist/index.css +384 -371
  47. package/dist/index.d.ts +10 -28
  48. package/dist/index.js +13 -105
  49. package/dist/{looks-rare-MZRSOPT4.js → looks-rare-C1VqNcSM.js} +5 -5
  50. package/dist/looks-rare-C1VqNcSM.js.map +1 -0
  51. package/dist/{magic-eden-PUBL6KWW.js → magic-eden-ea_AGCZr.js} +5 -5
  52. package/dist/magic-eden-ea_AGCZr.js.map +1 -0
  53. package/dist/{manifold-GA445YJ6.js → manifold-8y8J2sjT.js} +5 -5
  54. package/dist/manifold-8y8J2sjT.js.map +1 -0
  55. package/dist/marketplace-logos-CSeGcPW4.js +50 -0
  56. package/dist/marketplace-logos-CSeGcPW4.js.map +1 -0
  57. package/dist/marketplace-nwnZv9Cb.js +1913 -0
  58. package/dist/marketplace-nwnZv9Cb.js.map +1 -0
  59. package/dist/marketplace.gen-Dqk8vRmD.js +1068 -0
  60. package/dist/marketplace.gen-Dqk8vRmD.js.map +1 -0
  61. package/dist/marketplaceConfig-D2MYFqll.js +71 -0
  62. package/dist/marketplaceConfig-D2MYFqll.js.map +1 -0
  63. package/dist/{mintify-UMC5PTKC.js → mintify-LA68TzWg.js} +5 -5
  64. package/dist/mintify-LA68TzWg.js.map +1 -0
  65. package/dist/{nftx-AX3CY3IE.js → nftx-D3Tc8nzd.js} +5 -5
  66. package/dist/nftx-D3Tc8nzd.js.map +1 -0
  67. package/dist/{okx-GNVLAE2R.js → okx-hbqg6oIJ.js} +5 -5
  68. package/dist/okx-hbqg6oIJ.js.map +1 -0
  69. package/dist/{open-sea-KI43GVEB.js → open-sea-BccuK8-t.js} +5 -5
  70. package/dist/open-sea-BccuK8-t.js.map +1 -0
  71. package/dist/options-DCi6_23w.js +34 -0
  72. package/dist/options-DCi6_23w.js.map +1 -0
  73. package/dist/primary-sale-Cw95phYC.js +1264 -0
  74. package/dist/primary-sale-Cw95phYC.js.map +1 -0
  75. package/dist/queries-DPvwtnO7.js +486 -0
  76. package/dist/queries-DPvwtnO7.js.map +1 -0
  77. package/dist/{rarible-2J3MMZJ7.js → rarible-BgTwwj9g.js} +5 -5
  78. package/dist/rarible-BgTwwj9g.js.map +1 -0
  79. package/dist/react/_internal/api/index.d.ts +4 -86
  80. package/dist/react/_internal/api/index.js +7 -150
  81. package/dist/react/_internal/databeat/index.d.ts +45 -41
  82. package/dist/react/_internal/databeat/index.js +23 -27
  83. package/dist/react/_internal/index.d.ts +7 -24
  84. package/dist/react/_internal/index.js +9 -176
  85. package/dist/react/_internal/wagmi/index.d.ts +4 -18
  86. package/dist/react/_internal/wagmi/index.js +5 -14
  87. package/dist/react/hooks/index.d.ts +17 -3803
  88. package/dist/react/hooks/index.js +23 -157
  89. package/dist/react/hooks/options/index.d.ts +5 -7
  90. package/dist/react/hooks/options/index.js +11 -19
  91. package/dist/react/index.d.ts +37 -33
  92. package/dist/react/index.js +23 -199
  93. package/dist/react/queries/index.d.ts +8 -26
  94. package/dist/react/queries/index.js +18 -40
  95. package/dist/react/ssr/index.d.ts +19 -13
  96. package/dist/react/ssr/index.js +29 -27
  97. package/dist/react/ssr/index.js.map +1 -1
  98. package/dist/react/ui/components/marketplace-collectible-card/index.d.ts +10 -0
  99. package/dist/react/ui/components/marketplace-collectible-card/index.js +23 -0
  100. package/dist/react/ui/components/marketplace-collectible-card/utils/index.d.ts +8 -0
  101. package/dist/react/ui/components/marketplace-collectible-card/utils/index.js +10 -0
  102. package/dist/react/ui/components/marketplace-logos/index.d.ts +26 -24
  103. package/dist/react/ui/components/marketplace-logos/index.js +3 -45
  104. package/dist/react/ui/icons/index.d.ts +1 -2
  105. package/dist/react/ui/icons/index.js +10 -14
  106. package/dist/react/ui/index.d.ts +10 -116
  107. package/dist/react/ui/index.js +23 -46
  108. package/dist/react/ui/modals/_internal/components/actionModal/index.d.ts +59 -33
  109. package/dist/react/ui/modals/_internal/components/actionModal/index.js +23 -31
  110. package/dist/react-BG7o4PId.js +8351 -0
  111. package/dist/react-BG7o4PId.js.map +1 -0
  112. package/dist/react-BbHBl6gg.css +80 -0
  113. package/dist/react-BbHBl6gg.css.map +1 -0
  114. package/dist/sdk-config-DJzxVPld.d.ts +1535 -0
  115. package/dist/{sequence-TGLUFEPQ.js → sequence-Do3kzb4J.js} +5 -5
  116. package/dist/sequence-Do3kzb4J.js.map +1 -0
  117. package/dist/src-Dz2CfBL0.js +8 -0
  118. package/dist/src-Dz2CfBL0.js.map +1 -0
  119. package/dist/{sudo-swap-M2O6E3TE.js → sudo-swap-B6vPKxBz.js} +5 -5
  120. package/dist/sudo-swap-B6vPKxBz.js.map +1 -0
  121. package/dist/{super-rare-UU2U4LIN.js → super-rare-eCm1SE6O.js} +5 -5
  122. package/dist/super-rare-eCm1SE6O.js.map +1 -0
  123. package/dist/token-CO5llIla.js +1312 -0
  124. package/dist/token-CO5llIla.js.map +1 -0
  125. package/dist/transaction-CcVViHEL.js +97 -0
  126. package/dist/transaction-CcVViHEL.js.map +1 -0
  127. package/dist/types/index.d.ts +3 -12
  128. package/dist/types/index.js +5 -44
  129. package/dist/types-BIJOaL4j.d.ts +68 -0
  130. package/dist/types-DwWE6xOF.js +13 -0
  131. package/dist/types-DwWE6xOF.js.map +1 -0
  132. package/dist/useCollection-C-mclKU0.d.ts +66 -0
  133. package/dist/utils/abi/index.d.ts +5 -3
  134. package/dist/utils/abi/index.js +6 -26
  135. package/dist/utils/abi/marketplace/index.d.ts +2 -805
  136. package/dist/utils/abi/marketplace/index.js +3 -11
  137. package/dist/utils/abi/primary-sale/index.d.ts +2 -1054
  138. package/dist/utils/abi/primary-sale/index.js +3 -9
  139. package/dist/utils/abi/token/index.d.ts +2 -1125
  140. package/dist/utils/abi/token/index.js +3 -11
  141. package/dist/utils/index.d.ts +8 -91
  142. package/dist/utils/index.js +11 -56
  143. package/dist/utils-BFdxaToy.js +216 -0
  144. package/dist/utils-BFdxaToy.js.map +1 -0
  145. package/dist/utils-Cat9_pef.js +44 -0
  146. package/dist/utils-Cat9_pef.js.map +1 -0
  147. package/dist/wagmi-DRctYEk6.js +159 -0
  148. package/dist/wagmi-DRctYEk6.js.map +1 -0
  149. package/dist/{x2y2-3W5BBMZC.js → x2y2-DD17tT91.js} +5 -5
  150. package/dist/x2y2-DD17tT91.js.map +1 -0
  151. package/dist/{zora-6EY6FUH6.js → zora-BpSG9UzS.js} +5 -5
  152. package/dist/zora-BpSG9UzS.js.map +1 -0
  153. package/package.json +21 -19
  154. package/src/index.ts +0 -1
  155. package/src/react/_internal/api/__mocks__/builder.msw.ts +157 -80
  156. package/src/react/_internal/api/__mocks__/indexer.msw.ts +1 -0
  157. package/src/react/_internal/api/builder-api.ts +2 -2
  158. package/src/react/_internal/api/builder.gen.ts +666 -112
  159. package/src/react/_internal/api/marketplace.gen.ts +2421 -1315
  160. package/src/react/_internal/api/services.ts +42 -49
  161. package/src/react/_internal/types.ts +1 -13
  162. package/src/react/_internal/wagmi/__tests__/create-config.test.ts +102 -87
  163. package/src/react/_internal/wagmi/create-config.ts +15 -6
  164. package/src/react/_internal/wagmi/get-connectors.ts +29 -21
  165. package/src/react/hooks/__tests__/__snapshots__/useListCollections.test.tsx.snap +273 -0
  166. package/src/react/hooks/__tests__/__snapshots__/useMarketplaceConfig.test.tsx.snap +122 -82
  167. package/src/react/hooks/__tests__/useAutoSelectFeeOption.test.tsx +7 -4
  168. package/src/react/hooks/__tests__/useCheckoutOptionsSalesContract.test.tsx +225 -0
  169. package/src/react/hooks/__tests__/useCollectionDetailsPolling.test.tsx +3 -3
  170. package/src/react/hooks/__tests__/useFilters.test.tsx +0 -16
  171. package/src/react/hooks/__tests__/useGenerateCancelTransaction.test.tsx +2 -3
  172. package/src/react/hooks/__tests__/useHighestOffer.test.tsx +0 -16
  173. package/src/react/hooks/__tests__/useInventory.test.tsx +6 -42
  174. package/src/react/hooks/__tests__/useListCollections.test.tsx +24 -57
  175. package/src/react/hooks/__tests__/{useCurrencies.test.tsx → useMarketCurrencies.test.tsx} +21 -15
  176. package/src/react/hooks/__tests__/useMarketplaceConfig.test.tsx +2 -59
  177. package/src/react/hooks/index.ts +9 -1
  178. package/src/react/hooks/useBalanceOfCollectible.tsx +14 -8
  179. package/src/react/hooks/useCancelTransactionSteps.tsx +5 -1
  180. package/src/react/hooks/useCheckoutOptions.tsx +2 -1
  181. package/src/react/hooks/useCheckoutOptionsSalesContract.tsx +67 -0
  182. package/src/react/hooks/useCollectionDetails.tsx +22 -7
  183. package/src/react/hooks/useConvertPriceToUSD.tsx +1 -1
  184. package/src/react/hooks/useCountListingsForCollectible.tsx +5 -4
  185. package/src/react/hooks/useCountOfCollectables.tsx +10 -7
  186. package/src/react/hooks/useCountOffersForCollectible.tsx +5 -4
  187. package/src/react/hooks/useCurrency.tsx +2 -2
  188. package/src/react/hooks/useERC721SaleMintedTokens.tsx +67 -0
  189. package/src/react/hooks/useFilters.tsx +14 -22
  190. package/src/react/hooks/useFloorOrder.tsx +5 -2
  191. package/src/react/hooks/useGenerateCancelTransaction.tsx +13 -6
  192. package/src/react/hooks/useGenerateListingTransaction.tsx +15 -5
  193. package/src/react/hooks/useGenerateOfferTransaction.tsx +15 -6
  194. package/src/react/hooks/useGenerateSellTransaction.tsx +15 -6
  195. package/src/react/hooks/useGetTokenSuppliesMap.ts +33 -0
  196. package/src/react/hooks/useInventory.tsx +7 -4
  197. package/src/react/hooks/useList1155ShopCardData.tsx +130 -0
  198. package/src/react/hooks/useList721ShopCardData.tsx +130 -0
  199. package/src/react/hooks/useListBalances.tsx +7 -8
  200. package/src/react/hooks/useListCollectibleActivities.tsx +2 -1
  201. package/src/react/hooks/useListCollectibles.tsx +1 -12
  202. package/src/react/hooks/useListCollectiblesPaginated.tsx +8 -5
  203. package/src/react/hooks/useListCollectionActivities.tsx +2 -1
  204. package/src/react/hooks/useListCollections.tsx +14 -76
  205. package/src/react/hooks/useListListingsForCollectible.tsx +2 -1
  206. package/src/react/hooks/useListMarketCardData.tsx +157 -0
  207. package/src/react/hooks/useListOffersForCollectible.tsx +2 -1
  208. package/src/react/hooks/useListPrimarySaleItems.ts +42 -0
  209. package/src/react/hooks/useMarketCurrencies.tsx +8 -0
  210. package/src/react/hooks/useMarketplaceConfig.tsx +0 -2
  211. package/src/react/hooks/useTokenSaleDetailsBatch.tsx +134 -0
  212. package/src/react/queries/highestOffer.ts +6 -4
  213. package/src/react/queries/index.ts +1 -0
  214. package/src/react/queries/inventory.ts +36 -2
  215. package/src/react/queries/listBalances.ts +14 -30
  216. package/src/react/queries/listCollectibles.ts +60 -7
  217. package/src/react/queries/listCollections.ts +124 -0
  218. package/src/react/queries/listTokenMetadata.ts +6 -1
  219. package/src/react/queries/lowestListing.ts +6 -4
  220. package/src/react/queries/marketCurrencies.ts +81 -0
  221. package/src/react/queries/marketplaceConfig.ts +82 -79
  222. package/src/react/ssr/__tests__/__snapshots__/create-ssr-client.test.ts.snap +122 -82
  223. package/src/react/ssr/__tests__/create-ssr-client.test.ts +0 -3
  224. package/src/react/ssr/create-ssr-client.ts +5 -10
  225. package/src/react/ui/components/_internals/action-button/ActionButton.tsx +47 -13
  226. package/src/react/ui/components/_internals/action-button/__tests__/ActionButtonBody.test.tsx +1 -1
  227. package/src/react/ui/components/_internals/action-button/__tests__/NonOwnerActions.test.tsx +28 -15
  228. package/src/react/ui/components/_internals/action-button/__tests__/OwnerActions.test.tsx +1 -1
  229. package/src/react/ui/components/_internals/action-button/__tests__/useActionButtonLogic.test.tsx +1 -1
  230. package/src/react/ui/components/_internals/action-button/components/ActionButtonBody.tsx +1 -1
  231. package/src/react/ui/components/_internals/action-button/components/NonOwnerActions.tsx +78 -15
  232. package/src/react/ui/components/_internals/action-button/components/OwnerActions.tsx +1 -1
  233. package/src/react/ui/components/_internals/action-button/hooks/useActionButtonLogic.ts +1 -1
  234. package/src/react/ui/components/marketplace-collectible-card/CollectibleCard.tsx +17 -0
  235. package/src/react/ui/components/marketplace-collectible-card/CollectibleCardSkeleton.tsx +24 -0
  236. package/src/react/ui/components/marketplace-collectible-card/Footer.tsx +231 -0
  237. package/src/react/ui/components/marketplace-collectible-card/components/ActionButtonWrapper.tsx +76 -0
  238. package/src/react/ui/components/marketplace-collectible-card/components/BaseCard.tsx +55 -0
  239. package/src/react/ui/components/marketplace-collectible-card/index.ts +3 -0
  240. package/src/react/ui/components/marketplace-collectible-card/types.ts +95 -0
  241. package/src/react/ui/components/marketplace-collectible-card/utils/formatPrice.ts +45 -0
  242. package/src/react/ui/components/marketplace-collectible-card/utils/index.ts +2 -0
  243. package/src/react/ui/components/marketplace-collectible-card/utils/supplyStatus.ts +39 -0
  244. package/src/react/ui/components/marketplace-collectible-card/variants/MarketCard.tsx +124 -0
  245. package/src/react/ui/components/marketplace-collectible-card/variants/ShopCard.tsx +105 -0
  246. package/src/react/ui/components/{collectible-card/media → media}/Media.tsx +52 -30
  247. package/src/react/ui/components/{collectible-card/media → media}/MediaSkeleton.tsx +1 -1
  248. package/src/react/ui/components/{collectible-card/media → media}/types.ts +4 -1
  249. package/src/react/ui/index.ts +5 -2
  250. package/src/react/ui/modals/BuyModal/__tests__/BuyModalRouter.test.tsx +554 -0
  251. package/src/react/ui/modals/BuyModal/__tests__/ERC1155ShopModal.test.tsx +385 -0
  252. package/src/react/ui/modals/BuyModal/__tests__/ERC721ShopModal.test.tsx +272 -0
  253. package/src/react/ui/modals/BuyModal/__tests__/Modal.test.tsx.bak +112 -0
  254. package/src/react/ui/modals/BuyModal/__tests__/Modal1155.test.tsx +117 -13
  255. package/src/react/ui/modals/BuyModal/__tests__/store.test.ts +10 -7
  256. package/src/react/ui/modals/BuyModal/components/BuyModalRouter.tsx +157 -0
  257. package/src/react/ui/modals/BuyModal/components/ERC1155BuyModal.tsx +136 -0
  258. package/src/react/ui/modals/BuyModal/components/ERC1155QuantityModal.tsx +184 -0
  259. package/src/react/ui/modals/BuyModal/components/ERC1155ShopModal.tsx +121 -0
  260. package/src/react/ui/modals/BuyModal/components/ERC721BuyModal.tsx +85 -0
  261. package/src/react/ui/modals/BuyModal/components/ERC721ShopModal.tsx +86 -0
  262. package/src/react/ui/modals/BuyModal/components/Modal.tsx +14 -0
  263. package/src/react/ui/modals/BuyModal/components/types.ts +8 -0
  264. package/src/react/ui/modals/BuyModal/hooks/__tests__/useCheckoutOptions.test.tsx +4 -4
  265. package/src/react/ui/modals/BuyModal/hooks/__tests__/useERC1155Checkout.test.tsx +379 -0
  266. package/src/react/ui/modals/BuyModal/hooks/__tests__/useERC721SalePaymentParams.test.tsx +253 -0
  267. package/src/react/ui/modals/BuyModal/hooks/__tests__/{useFees.test.tsx → useMarketPlatformFee.test.tsx} +37 -28
  268. package/src/react/ui/modals/BuyModal/hooks/useCheckoutOptions.ts +62 -44
  269. package/src/react/ui/modals/BuyModal/hooks/useERC1155Checkout.ts +73 -0
  270. package/src/react/ui/modals/BuyModal/hooks/useERC721SalePaymentParams.ts +196 -0
  271. package/src/react/ui/modals/BuyModal/hooks/useLoadData.ts +74 -18
  272. package/src/react/ui/modals/BuyModal/hooks/useMarketPlatformFee.ts +53 -0
  273. package/src/react/ui/modals/BuyModal/hooks/usePaymentModalParams.ts +27 -12
  274. package/src/react/ui/modals/BuyModal/store.ts +147 -13
  275. package/src/react/ui/modals/CreateListingModal/Modal.tsx +3 -5
  276. package/src/react/ui/modals/CreateListingModal/hooks/useCreateListing.tsx +5 -3
  277. package/src/react/ui/modals/CreateListingModal/hooks/useGetTokenApproval.ts +2 -1
  278. package/src/react/ui/modals/CreateListingModal/hooks/useTransactionSteps.tsx +7 -5
  279. package/src/react/ui/modals/MakeOfferModal/Modal.tsx +2 -3
  280. package/src/react/ui/modals/MakeOfferModal/hooks/useGetTokenApproval.tsx +2 -1
  281. package/src/react/ui/modals/MakeOfferModal/hooks/useMakeOffer.tsx +4 -3
  282. package/src/react/ui/modals/MakeOfferModal/hooks/useTransactionSteps.tsx +5 -3
  283. package/src/react/ui/modals/SellModal/Modal.tsx +0 -1
  284. package/src/react/ui/modals/SellModal/hooks/useGetTokenApproval.tsx +4 -3
  285. package/src/react/ui/modals/SellModal/hooks/useTransactionSteps.tsx +8 -5
  286. package/src/react/ui/modals/SuccessfulPurchaseModal/__tests__/Modal.test.tsx +11 -7
  287. package/src/react/ui/modals/SuccessfulPurchaseModal/index.tsx +34 -28
  288. package/src/react/ui/modals/SuccessfulPurchaseModal/store.ts +71 -0
  289. package/src/react/ui/modals/TransferModal/_views/enterWalletAddress/index.tsx +0 -1
  290. package/src/react/ui/modals/TransferModal/index.tsx +0 -1
  291. package/src/react/ui/modals/_internal/components/actionModal/ActionModal.test.tsx +0 -1
  292. package/src/react/ui/modals/_internal/components/actionModal/ActionModal.tsx +105 -108
  293. package/src/react/ui/modals/_internal/components/actionModal/store.ts +45 -12
  294. package/src/react/ui/modals/_internal/components/currencyOptionsSelect/__tests__/index.test.tsx +2 -2
  295. package/src/react/ui/modals/_internal/components/currencyOptionsSelect/index.tsx +7 -6
  296. package/src/react/ui/modals/_internal/components/selectWaasFeeOptions/__tests__/SelectWaasFeeOptions.test.tsx +13 -7
  297. package/src/react/ui/modals/_internal/components/selectWaasFeeOptions/index.tsx +3 -5
  298. package/src/react/ui/modals/_internal/components/selectWaasFeeOptions/useWaasFeeOptionManager.tsx +5 -3
  299. package/src/react/ui/modals/_internal/components/switchChainModal/__tests__/SwitchChainModal.test.tsx +12 -8
  300. package/src/react/ui/modals/_internal/components/switchChainModal/index.tsx +35 -33
  301. package/src/react/ui/modals/_internal/components/switchChainModal/store.ts +61 -32
  302. package/src/react/ui/modals/_internal/components/transactionDetails/index.tsx +2 -2
  303. package/src/react/ui/modals/_internal/hooks/useSelectWaasFeeOptions.ts +2 -12
  304. package/src/react/ui/modals/modal-provider.tsx +1 -1
  305. package/src/types/buyModalErrors.ts +438 -0
  306. package/src/types/index.ts +1 -3
  307. package/src/types/new-marketplace-types.ts +104 -0
  308. package/src/types/sdk-config.ts +22 -12
  309. package/src/types/types.ts +17 -0
  310. package/src/utils/_internal/error/transaction.ts +36 -1
  311. package/tsconfig.json +1 -1
  312. package/tsconfig.tsbuildinfo +1 -1
  313. package/tsdown.config.ts +25 -0
  314. package/.ctirc +0 -32
  315. package/dist/alien_swap-2B65TDGT.js.map +0 -1
  316. package/dist/aqua-xyz-WMYQLAIS.js.map +0 -1
  317. package/dist/aura-V22RV5OG.js.map +0 -1
  318. package/dist/blur-GE5QOMCM.js.map +0 -1
  319. package/dist/chunk-2PSNAIAT.js +0 -1
  320. package/dist/chunk-2PSNAIAT.js.map +0 -1
  321. package/dist/chunk-5C6ZZ6WX.js +0 -130
  322. package/dist/chunk-5C6ZZ6WX.js.map +0 -1
  323. package/dist/chunk-5O44EPXZ.js +0 -207
  324. package/dist/chunk-5O44EPXZ.js.map +0 -1
  325. package/dist/chunk-6CTFVBKU.js +0 -1
  326. package/dist/chunk-6CTFVBKU.js.map +0 -1
  327. package/dist/chunk-7F27CJZW.js +0 -1544
  328. package/dist/chunk-7F27CJZW.js.map +0 -1
  329. package/dist/chunk-A7BVFBWB.js +0 -81
  330. package/dist/chunk-A7BVFBWB.js.map +0 -1
  331. package/dist/chunk-D7RVSZAQ.js +0 -332
  332. package/dist/chunk-D7RVSZAQ.js.map +0 -1
  333. package/dist/chunk-DWTLVJAW.js +0 -42
  334. package/dist/chunk-DWTLVJAW.js.map +0 -1
  335. package/dist/chunk-FGM57QUU.js +0 -128
  336. package/dist/chunk-FGM57QUU.js.map +0 -1
  337. package/dist/chunk-FUM4OGOQ.js +0 -1027
  338. package/dist/chunk-FUM4OGOQ.js.map +0 -1
  339. package/dist/chunk-JKCF7HEA.js +0 -1
  340. package/dist/chunk-JKCF7HEA.js.map +0 -1
  341. package/dist/chunk-KTST7ORH.js +0 -53
  342. package/dist/chunk-KTST7ORH.js.map +0 -1
  343. package/dist/chunk-M6NJ73Y5.js +0 -154
  344. package/dist/chunk-M6NJ73Y5.js.map +0 -1
  345. package/dist/chunk-N7BPFK46.js +0 -1
  346. package/dist/chunk-N7BPFK46.js.map +0 -1
  347. package/dist/chunk-NX52D7NX.js +0 -135
  348. package/dist/chunk-NX52D7NX.js.map +0 -1
  349. package/dist/chunk-O34GCB47.js +0 -32
  350. package/dist/chunk-O34GCB47.js.map +0 -1
  351. package/dist/chunk-Q3ECVC4F.js +0 -811
  352. package/dist/chunk-Q3ECVC4F.js.map +0 -1
  353. package/dist/chunk-RVIUUJTP.js +0 -76
  354. package/dist/chunk-RVIUUJTP.js.map +0 -1
  355. package/dist/chunk-SXVUTSMT.js +0 -2895
  356. package/dist/chunk-SXVUTSMT.js.map +0 -1
  357. package/dist/chunk-UJSF7PSC.js +0 -5728
  358. package/dist/chunk-UJSF7PSC.js.map +0 -1
  359. package/dist/chunk-WH5BZC7W.js +0 -38
  360. package/dist/chunk-WH5BZC7W.js.map +0 -1
  361. package/dist/chunk-XX4EVWBF.js +0 -1292
  362. package/dist/chunk-XX4EVWBF.js.map +0 -1
  363. package/dist/chunk-Y2HJO2VY.js +0 -432
  364. package/dist/chunk-Y2HJO2VY.js.map +0 -1
  365. package/dist/chunk-Y63BOO6M.js +0 -11
  366. package/dist/chunk-Y63BOO6M.js.map +0 -1
  367. package/dist/coinbase-NLHJMGAP.js.map +0 -1
  368. package/dist/create-config-CAQcvjl6.d.ts +0 -8
  369. package/dist/element-2LGTYYSP.js.map +0 -1
  370. package/dist/foundation-BPN66ZTN.js.map +0 -1
  371. package/dist/get-query-client-D46hbjk6.d.ts +0 -5
  372. package/dist/index-MlUK9AQE.d.ts +0 -62
  373. package/dist/index.css.map +0 -1
  374. package/dist/index.js.map +0 -1
  375. package/dist/listTokenMetadata-DO4ChDjn.d.ts +0 -203
  376. package/dist/looks-rare-MZRSOPT4.js.map +0 -1
  377. package/dist/magic-eden-PUBL6KWW.js.map +0 -1
  378. package/dist/manifold-GA445YJ6.js.map +0 -1
  379. package/dist/marketplace.gen-DQzWciwC.d.ts +0 -1072
  380. package/dist/marketplaceConfig-D0MXemEl.d.ts +0 -17
  381. package/dist/mintify-UMC5PTKC.js.map +0 -1
  382. package/dist/nftx-AX3CY3IE.js.map +0 -1
  383. package/dist/okx-GNVLAE2R.js.map +0 -1
  384. package/dist/open-sea-KI43GVEB.js.map +0 -1
  385. package/dist/rarible-2J3MMZJ7.js.map +0 -1
  386. package/dist/react/_internal/api/index.js.map +0 -1
  387. package/dist/react/_internal/databeat/index.js.map +0 -1
  388. package/dist/react/_internal/index.js.map +0 -1
  389. package/dist/react/_internal/wagmi/index.js.map +0 -1
  390. package/dist/react/hooks/index.js.map +0 -1
  391. package/dist/react/hooks/options/index.js.map +0 -1
  392. package/dist/react/index.css +0 -2764
  393. package/dist/react/index.css.map +0 -1
  394. package/dist/react/index.js.map +0 -1
  395. package/dist/react/queries/index.js.map +0 -1
  396. package/dist/react/ui/components/collectible-card/index.css +0 -2764
  397. package/dist/react/ui/components/collectible-card/index.css.map +0 -1
  398. package/dist/react/ui/components/collectible-card/index.d.ts +0 -70
  399. package/dist/react/ui/components/collectible-card/index.js +0 -32
  400. package/dist/react/ui/components/collectible-card/index.js.map +0 -1
  401. package/dist/react/ui/components/marketplace-logos/index.js.map +0 -1
  402. package/dist/react/ui/icons/index.js.map +0 -1
  403. package/dist/react/ui/index.css +0 -2764
  404. package/dist/react/ui/index.css.map +0 -1
  405. package/dist/react/ui/index.js.map +0 -1
  406. package/dist/react/ui/modals/_internal/components/actionModal/index.js.map +0 -1
  407. package/dist/sdk-config-onSPBxJj.d.ts +0 -134
  408. package/dist/sequence-TGLUFEPQ.js.map +0 -1
  409. package/dist/services-CMSb9ipU.d.ts +0 -23
  410. package/dist/sudo-swap-M2O6E3TE.js.map +0 -1
  411. package/dist/super-rare-UU2U4LIN.js.map +0 -1
  412. package/dist/types/index.js.map +0 -1
  413. package/dist/types-B8xzPEKX.d.ts +0 -68
  414. package/dist/utils/abi/index.js.map +0 -1
  415. package/dist/utils/abi/marketplace/index.js.map +0 -1
  416. package/dist/utils/abi/primary-sale/index.js.map +0 -1
  417. package/dist/utils/abi/token/index.js.map +0 -1
  418. package/dist/utils/index.js.map +0 -1
  419. package/dist/x2y2-3W5BBMZC.js.map +0 -1
  420. package/dist/zora-6EY6FUH6.js.map +0 -1
  421. package/postcss.config.mjs +0 -5
  422. package/src/react/hooks/__tests__/__snapshots__/useRoyaltyPercentage.test.tsx.snap +0 -8
  423. package/src/react/hooks/useCurrencies.tsx +0 -77
  424. package/src/react/ui/components/collectible-card/CollectibleCard.tsx +0 -170
  425. package/src/react/ui/components/collectible-card/Footer.tsx +0 -157
  426. package/src/react/ui/components/collectible-card/__tests__/CollectibleCard.test.tsx +0 -94
  427. package/src/react/ui/components/collectible-card/__tests__/Footer.test.tsx +0 -136
  428. package/src/react/ui/components/collectible-card/__tests__/Media.test.tsx +0 -224
  429. package/src/react/ui/components/collectible-card/index.ts +0 -2
  430. package/src/react/ui/modals/BuyModal/ERC1155QuantityModal.tsx +0 -124
  431. package/src/react/ui/modals/BuyModal/Modal.tsx +0 -124
  432. package/src/react/ui/modals/BuyModal/__tests__/Modal.test.tsx +0 -104
  433. package/src/react/ui/modals/BuyModal/hooks/useFees.ts +0 -38
  434. package/src/react/ui/modals/SuccessfulPurchaseModal/_store.ts +0 -72
  435. package/tsup.config.ts +0 -23
  436. /package/src/react/ui/components/{collectible-card/media → media}/utils.ts +0 -0
@@ -19,11 +19,12 @@ import { useConfig } from '../../../../hooks';
19
19
  import type { ModalCallbacks } from '../../_internal/types';
20
20
  import {
21
21
  buyModalStore,
22
+ isMarketProps,
22
23
  useBuyModalProps,
23
24
  useOnError,
24
25
  useOnSuccess,
25
26
  } from '../store';
26
- import { useFees } from './useFees';
27
+ import { useMarketPlatformFee } from './useMarketPlatformFee';
27
28
 
28
29
  interface GetBuyCollectableParams {
29
30
  chainId: number;
@@ -62,8 +63,9 @@ export const getBuyCollectableParams = async ({
62
63
  skipNativeBalanceCheck,
63
64
  nativeTokenAddress,
64
65
  }: GetBuyCollectableParams) => {
65
- const marketplaceClient = getMarketplaceClient(chainId, config);
66
+ const marketplaceClient = getMarketplaceClient(config);
66
67
  const { steps } = await marketplaceClient.generateBuyTransaction({
68
+ chainId: String(chainId),
67
69
  collectionAddress,
68
70
  buyer: await wallet.address(),
69
71
  marketplace: marketplace,
@@ -165,6 +167,7 @@ interface usePaymentModalParams {
165
167
  collectable: TokenMetadata | undefined;
166
168
  checkoutOptions: CheckoutOptions | undefined;
167
169
  priceCurrencyAddress: string | undefined;
170
+ enabled: boolean;
168
171
  }
169
172
 
170
173
  export const usePaymentModalParams = (args: usePaymentModalParams) => {
@@ -175,38 +178,50 @@ export const usePaymentModalParams = (args: usePaymentModalParams) => {
175
178
  checkoutOptions,
176
179
  priceCurrencyAddress,
177
180
  quantity,
181
+ enabled,
178
182
  } = args;
179
183
 
180
184
  const buyModalProps = useBuyModalProps();
181
185
  const {
182
186
  chainId,
183
187
  collectionAddress,
184
- collectibleId,
185
- orderId,
186
- customCreditCardProviderCallback,
187
188
  skipNativeBalanceCheck,
188
189
  nativeTokenAddress,
189
190
  } = buyModalProps;
190
191
 
192
+ // Extract Marketplace-specific properties using type guard
193
+ const collectibleId = isMarketProps(buyModalProps)
194
+ ? buyModalProps.collectibleId
195
+ : '';
196
+ const orderId = isMarketProps(buyModalProps) ? buyModalProps.orderId : '';
197
+ const customCreditCardProviderCallback = isMarketProps(buyModalProps)
198
+ ? buyModalProps.customCreditCardProviderCallback
199
+ : undefined;
200
+
191
201
  const config = useConfig();
192
- const fee = useFees({
193
- chainId,
194
- collectionAddress,
195
- });
202
+ const fee = useMarketPlatformFee(
203
+ isMarketProps(buyModalProps)
204
+ ? {
205
+ chainId,
206
+ collectionAddress,
207
+ }
208
+ : skipToken,
209
+ );
196
210
  const onSuccess = useOnSuccess();
197
211
  const onError = useOnError();
198
212
 
199
- const enabled =
213
+ const queryEnabled =
200
214
  !!wallet &&
201
215
  !!marketplace &&
202
216
  !!collectable &&
203
217
  !!checkoutOptions &&
204
218
  !!priceCurrencyAddress &&
205
- !!quantity;
219
+ !!quantity &&
220
+ enabled;
206
221
 
207
222
  return useQuery({
208
223
  queryKey: ['buyCollectableParams', buyModalProps, args, fee],
209
- queryFn: enabled
224
+ queryFn: queryEnabled
210
225
  ? () =>
211
226
  getBuyCollectableParams({
212
227
  chainId,
@@ -1,19 +1,76 @@
1
1
  import { createStore } from '@xstate/store';
2
2
  import { useSelector } from '@xstate/store/react';
3
3
  import type { Address, Hash } from 'viem';
4
- import type { MarketplaceKind, Step } from '../../../_internal';
4
+ import type { MarketplaceType } from '../../../../types';
5
+ import type {
6
+ CheckoutOptionsItem,
7
+ MarketplaceKind,
8
+ Step,
9
+ } from '../../../_internal';
5
10
 
6
- export type BuyModalProps = {
7
- orderId: string;
11
+ export type CheckoutOptionsSalesContractProps = {
8
12
  chainId: number;
13
+ salesContractAddress: Address;
9
14
  collectionAddress: Address;
15
+ items: Array<CheckoutOptionsItem>;
16
+ customProviderCallback?: (
17
+ onSuccess: (txHash: string) => void,
18
+ onError: (error: Error) => void,
19
+ onClose: () => void,
20
+ ) => void;
21
+ };
22
+
23
+ export type PaymentModalProps = {
10
24
  collectibleId: string;
11
25
  marketplace: MarketplaceKind;
26
+ orderId: string;
12
27
  customCreditCardProviderCallback?: (buyStep: Step) => void;
28
+ };
29
+
30
+ export type BuyModalBaseProps = {
31
+ chainId: number;
32
+ collectionAddress: Address;
13
33
  skipNativeBalanceCheck?: boolean;
14
34
  nativeTokenAddress?: Address;
35
+ marketplaceType?: MarketplaceType;
36
+ customCreditCardProviderCallback?: PaymentModalProps['customCreditCardProviderCallback'];
37
+ };
38
+
39
+ // Shop type modal props
40
+ export type ShopBuyModalProps = BuyModalBaseProps & {
41
+ marketplaceType: 'shop';
42
+ salesContractAddress: Address;
43
+ items: Array<Partial<CheckoutOptionsItem> & { tokenId?: string }>;
44
+ quantityDecimals: number;
45
+ quantityRemaining: number;
46
+ salePrice: {
47
+ amount: string;
48
+ currencyAddress: Address;
49
+ };
15
50
  };
16
51
 
52
+ // Marketplace type modal props
53
+ export type MarketplaceBuyModalProps = BuyModalBaseProps & {
54
+ marketplaceType?: 'market';
55
+ collectibleId: string;
56
+ marketplace: MarketplaceKind;
57
+ orderId: string;
58
+ };
59
+
60
+ export type BuyModalProps = ShopBuyModalProps | MarketplaceBuyModalProps;
61
+
62
+ // Type guard functions
63
+ export function isShopProps(props: BuyModalProps): props is ShopBuyModalProps {
64
+ return props.marketplaceType === 'shop';
65
+ }
66
+
67
+ export function isMarketProps(
68
+ props: BuyModalProps,
69
+ ): props is MarketplaceBuyModalProps {
70
+ // Default to MARKET type for backward compatibility
71
+ return !props.marketplaceType || props.marketplaceType === 'market';
72
+ }
73
+
17
74
  export type onSuccessCallback = ({
18
75
  hash,
19
76
  orderId,
@@ -23,12 +80,18 @@ export type onSuccessCallback = ({
23
80
  }) => void;
24
81
  export type onErrorCallback = (error: Error) => void;
25
82
 
83
+ type ModalState = 'idle' | 'opening' | 'open' | 'processing' | 'closing';
84
+ type SubModalState = 'idle' | 'opening' | 'open' | 'closed';
85
+
26
86
  const initialContext = {
27
87
  isOpen: false,
28
- props: null as unknown as BuyModalProps,
88
+ props: null as BuyModalProps | null,
29
89
  onError: (() => {}) as onErrorCallback,
30
90
  onSuccess: (() => {}) as onSuccessCallback,
31
- quantity: undefined as number | undefined,
91
+ quantity: null as number | null,
92
+ modalState: 'idle' as ModalState,
93
+ paymentModalState: 'idle' as SubModalState,
94
+ checkoutModalState: 'idle' as SubModalState,
32
95
  };
33
96
 
34
97
  export const buyModalStore = createStore({
@@ -41,32 +104,94 @@ export const buyModalStore = createStore({
41
104
  onError?: onErrorCallback;
42
105
  onSuccess?: onSuccessCallback;
43
106
  },
44
- ) => ({
107
+ ) => {
108
+ // Prevent duplicate opens
109
+ if (context.modalState !== 'idle') {
110
+ return context;
111
+ }
112
+ return {
113
+ ...context,
114
+ props: event.props,
115
+ onError: event.onError ?? context.onError,
116
+ onSuccess: event.onSuccess ?? context.onSuccess,
117
+ isOpen: true,
118
+ modalState: 'opening' as const,
119
+ };
120
+ },
121
+
122
+ modalOpened: (context) => ({
45
123
  ...context,
46
- props: event.props,
47
- onError: event.onError ?? context.onError,
48
- onSuccess: event.onSuccess ?? context.onSuccess,
49
- isOpen: true,
124
+ modalState: 'open' as const,
50
125
  }),
51
126
 
52
127
  close: (context) => ({
53
128
  ...context,
54
129
  isOpen: false,
55
- quantity: undefined,
130
+ quantity: null,
131
+ modalState: 'idle' as const,
132
+ paymentModalState: 'idle' as const,
133
+ checkoutModalState: 'idle' as const,
56
134
  }),
57
135
 
58
136
  setQuantity: (context, event: { quantity: number }) => ({
59
137
  ...context,
60
138
  quantity: event.quantity,
61
139
  }),
140
+
141
+ openPaymentModal: (context) => {
142
+ if (context.paymentModalState !== 'idle') {
143
+ return context; // Prevent duplicate opens
144
+ }
145
+ return {
146
+ ...context,
147
+ paymentModalState: 'opening' as const,
148
+ };
149
+ },
150
+
151
+ paymentModalOpened: (context) => ({
152
+ ...context,
153
+ paymentModalState: 'open' as const,
154
+ }),
155
+
156
+ paymentModalClosed: (context) => ({
157
+ ...context,
158
+ paymentModalState: 'closed' as const,
159
+ }),
160
+
161
+ openCheckoutModal: (context) => {
162
+ if (context.checkoutModalState !== 'idle') {
163
+ return context;
164
+ }
165
+ return {
166
+ ...context,
167
+ checkoutModalState: 'opening' as const,
168
+ };
169
+ },
170
+
171
+ checkoutModalOpened: (context) => ({
172
+ ...context,
173
+ checkoutModalState: 'open' as const,
174
+ }),
175
+
176
+ checkoutModalClosed: (context) => ({
177
+ ...context,
178
+ checkoutModalState: 'closed' as const,
179
+ }),
62
180
  },
63
181
  });
64
182
 
65
183
  export const useIsOpen = () =>
66
184
  useSelector(buyModalStore, (state) => state.context.isOpen);
67
185
 
68
- export const useBuyModalProps = () =>
69
- useSelector(buyModalStore, (state) => state.context.props);
186
+ export const useBuyModalProps = () => {
187
+ const props = useSelector(buyModalStore, (state) => state.context.props);
188
+ if (!props) {
189
+ throw new Error(
190
+ 'BuyModal props not initialized. Make sure to call show() first.',
191
+ );
192
+ }
193
+ return props;
194
+ };
70
195
 
71
196
  export const useOnError = () =>
72
197
  useSelector(buyModalStore, (state) => state.context.onError);
@@ -76,3 +201,12 @@ export const useOnSuccess = () =>
76
201
 
77
202
  export const useQuantity = () =>
78
203
  useSelector(buyModalStore, (state) => state.context.quantity);
204
+
205
+ export const useModalState = () =>
206
+ useSelector(buyModalStore, (state) => state.context.modalState);
207
+
208
+ export const usePaymentModalState = () =>
209
+ useSelector(buyModalStore, (state) => state.context.paymentModalState);
210
+
211
+ export const useCheckoutModalState = () =>
212
+ useSelector(buyModalStore, (state) => state.context.checkoutModalState);
@@ -11,7 +11,7 @@ import {
11
11
  useBalanceOfCollectible,
12
12
  useCollectible,
13
13
  useCollection,
14
- useCurrencies,
14
+ useMarketCurrencies,
15
15
  } from '../../../hooks';
16
16
  import {
17
17
  ActionModal,
@@ -52,9 +52,7 @@ const Modal = observer(() => {
52
52
  shouldHideActionButton: shouldHideListButton,
53
53
  waasFeeOptionsShown,
54
54
  getActionLabel,
55
- isTestnet,
56
55
  } = useSelectWaasFeeOptions({
57
- chainId,
58
56
  isProcessing: listingIsBeingProcessed,
59
57
  feeOptionsVisible: selectWaasFeeOptions$.isVisible.get(),
60
58
  selectedFeeOption:
@@ -74,7 +72,7 @@ const Modal = observer(() => {
74
72
  data: currencies,
75
73
  isLoading: currenciesLoading,
76
74
  isError: currenciesIsError,
77
- } = useCurrencies({
75
+ } = useMarketCurrencies({
78
76
  chainId,
79
77
  collectionAddress,
80
78
  includeNativeCurrency: true,
@@ -154,7 +152,7 @@ const Modal = observer(() => {
154
152
  }
155
153
 
156
154
  await createListing({
157
- isTransactionExecuting: wallet?.isWaaS ? !isTestnet : false,
155
+ isTransactionExecuting: !!wallet?.isWaaS,
158
156
  });
159
157
  } catch (error) {
160
158
  console.error('Create listing failed:', error);
@@ -2,6 +2,8 @@
2
2
 
3
3
  import type { Observable } from '@legendapp/state';
4
4
  import { useEffect } from 'react';
5
+ import type { MarketCollection } from '../../../../../types/new-marketplace-types';
6
+ import { compareAddress } from '../../../../../utils';
5
7
  import {
6
8
  type ContractType,
7
9
  type CreateReq,
@@ -40,9 +42,9 @@ export const useCreateListing = ({
40
42
  const { data: marketplaceConfig, isLoading: marketplaceIsLoading } =
41
43
  useMarketplaceConfig();
42
44
 
43
- const collectionConfig = marketplaceConfig?.collections.find(
44
- (c) => c.address === collectionAddress,
45
- );
45
+ const collectionConfig = marketplaceConfig?.market.collections.find((c) =>
46
+ compareAddress(c.itemsAddress, collectionAddress),
47
+ ) as MarketCollection;
46
48
 
47
49
  orderbookKind =
48
50
  orderbookKind ??
@@ -31,7 +31,7 @@ export const useGetTokenApprovalData = (
31
31
  const config = useConfig();
32
32
  const { wallet } = useWallet();
33
33
  const { address } = useAccount();
34
- const marketplaceClient = getMarketplaceClient(params.chainId, config);
34
+ const marketplaceClient = getMarketplaceClient(config);
35
35
 
36
36
  const listing = {
37
37
  tokenId: params.tokenId,
@@ -52,6 +52,7 @@ export const useGetTokenApprovalData = (
52
52
  queryFn: isEnabled
53
53
  ? async () => {
54
54
  const args = {
55
+ chainId: String(params.chainId),
55
56
  collectionAddress: params.collectionAddress,
56
57
  owner: await wallet.address(),
57
58
  walletType: wallet.walletKind,
@@ -3,6 +3,7 @@ import { type Address, type Hex, formatUnits } from 'viem';
3
3
  import { OrderbookKind, type Price } from '../../../../../types';
4
4
  import { getSequenceMarketplaceRequestId } from '../../../../../utils/getSequenceMarketRequestId';
5
5
  import {
6
+ ExecuteType,
6
7
  type Step,
7
8
  StepType,
8
9
  type TransactionSteps,
@@ -20,8 +21,8 @@ import type {
20
21
  import { useWallet } from '../../../../_internal/wallet/useWallet';
21
22
  import {
22
23
  useConfig,
23
- useCurrencies,
24
24
  useGenerateListingTransaction,
25
+ useMarketCurrencies,
25
26
  } from '../../../../hooks';
26
27
  import { useTransactionStatusModal } from '../../_internal/components/transactionStatusModal';
27
28
  import type { ModalCallbacks } from '../../_internal/types';
@@ -45,17 +46,16 @@ export const useTransactionSteps = ({
45
46
  steps$,
46
47
  }: UseTransactionStepsArgs) => {
47
48
  const { wallet } = useWallet();
48
- const expiry = new Date(Number(listingInput.listing.expiry) * 1000);
49
49
  const { show: showTransactionStatusModal } = useTransactionStatusModal();
50
50
  const sdkConfig = useConfig();
51
- const { data: currencies } = useCurrencies({
51
+ const { data: currencies } = useMarketCurrencies({
52
52
  chainId,
53
53
  });
54
54
  const currency = currencies?.find(
55
55
  (currency) =>
56
56
  currency.contractAddress === listingInput.listing.currencyAddress,
57
57
  );
58
- const marketplaceClient = getMarketplaceClient(chainId, sdkConfig);
58
+ const marketplaceClient = getMarketplaceClient(sdkConfig);
59
59
  const analytics = useAnalytics();
60
60
  const { generateListingTransactionAsync, isPending: generatingSteps } =
61
61
  useGenerateListingTransaction({
@@ -79,7 +79,7 @@ export const useTransactionSteps = ({
79
79
  orderbook: orderbookKind,
80
80
  listing: {
81
81
  ...listingInput.listing,
82
- expiry,
82
+ expiry: new Date(Number(listingInput.listing.expiry) * 1000),
83
83
  },
84
84
  });
85
85
 
@@ -265,10 +265,12 @@ export const useTransactionSteps = ({
265
265
  );
266
266
 
267
267
  const result = await marketplaceClient.execute({
268
+ chainId: String(chainId),
268
269
  signature: signature as string,
269
270
  method: signatureStep.post?.method as string,
270
271
  endpoint: signatureStep.post?.endpoint as string,
271
272
  body: signatureStep.post?.body,
273
+ executeType: ExecuteType.order,
272
274
  });
273
275
 
274
276
  return result.orderId;
@@ -12,8 +12,8 @@ import { useWallet } from '../../../_internal/wallet/useWallet';
12
12
  import {
13
13
  useCollectible,
14
14
  useCollection,
15
- useCurrencies,
16
15
  useLowestListing,
16
+ useMarketCurrencies,
17
17
  } from '../../../hooks';
18
18
  import { useBuyModal } from '../BuyModal';
19
19
  import { ActionModal } from '../_internal/components/actionModal/ActionModal';
@@ -64,7 +64,6 @@ const Modal = observer(() => {
64
64
  waasFeeOptionsShown,
65
65
  getActionLabel,
66
66
  } = useSelectWaasFeeOptions({
67
- chainId,
68
67
  isProcessing,
69
68
  feeOptionsVisible: selectWaasFeeOptions$.isVisible.get(),
70
69
  selectedFeeOption:
@@ -83,7 +82,7 @@ const Modal = observer(() => {
83
82
  data: currencies,
84
83
  isLoading: currenciesLoading,
85
84
  isError: currenciesIsError,
86
- } = useCurrencies({
85
+ } = useMarketCurrencies({
87
86
  chainId,
88
87
  includeNativeCurrency: false,
89
88
  });
@@ -29,7 +29,7 @@ export const useGetTokenApprovalData = (
29
29
  ) => {
30
30
  const config = useConfig();
31
31
  const { wallet } = useWallet();
32
- const marketplaceClient = getMarketplaceClient(params.chainId, config);
32
+ const marketplaceClient = getMarketplaceClient(config);
33
33
 
34
34
  const offer = {
35
35
  tokenId: params.tokenId,
@@ -46,6 +46,7 @@ export const useGetTokenApprovalData = (
46
46
  queryFn: isEnabled
47
47
  ? async () => {
48
48
  const args = {
49
+ chainId: String(params.chainId),
49
50
  collectionAddress: params.collectionAddress,
50
51
  maker: await wallet.address(),
51
52
  walletType: wallet.walletKind,
@@ -3,6 +3,7 @@
3
3
  import type { Observable } from '@legendapp/state';
4
4
  import { useEffect } from 'react';
5
5
  import { OrderbookKind } from '../../../../../types';
6
+ import type { MarketCollection } from '../../../../../types/new-marketplace-types';
6
7
  import type { TransactionSteps } from '../../../../_internal';
7
8
  import type { OfferInput } from '../../../../_internal/types';
8
9
  import { useMarketplaceConfig } from '../../../../hooks';
@@ -32,9 +33,9 @@ export const useMakeOffer = ({
32
33
  const { data: marketplaceConfig, isLoading: marketplaceIsLoading } =
33
34
  useMarketplaceConfig();
34
35
 
35
- const collectionConfig = marketplaceConfig?.collections.find(
36
- (c) => c.address === collectionAddress,
37
- );
36
+ const collectionConfig = marketplaceConfig?.market.collections.find(
37
+ (c) => c.itemsAddress === collectionAddress,
38
+ ) as MarketCollection;
38
39
 
39
40
  orderbookKind =
40
41
  orderbookKind ??
@@ -3,6 +3,7 @@ import { type Address, type Hex, formatUnits } from 'viem';
3
3
  import { OrderbookKind, type Price } from '../../../../../types';
4
4
  import { getSequenceMarketplaceRequestId } from '../../../../../utils/getSequenceMarketRequestId';
5
5
  import {
6
+ ExecuteType,
6
7
  type Step,
7
8
  StepType,
8
9
  type TransactionSteps,
@@ -44,11 +45,10 @@ export const useTransactionSteps = ({
44
45
  steps$,
45
46
  }: UseTransactionStepsArgs) => {
46
47
  const { wallet } = useWallet();
47
- const expiry = new Date(Number(offerInput.offer.expiry) * 1000);
48
48
  const { show: showTransactionStatusModal } = useTransactionStatusModal();
49
49
  const sdkConfig = useConfig();
50
50
  const analytics = useAnalytics();
51
- const marketplaceClient = getMarketplaceClient(chainId, sdkConfig);
51
+ const marketplaceClient = getMarketplaceClient(sdkConfig);
52
52
  const { generateOfferTransactionAsync, isPending: generatingSteps } =
53
53
  useGenerateOfferTransaction({
54
54
  chainId,
@@ -75,7 +75,7 @@ export const useTransactionSteps = ({
75
75
  orderbook: orderbookKind,
76
76
  offer: {
77
77
  ...offerInput.offer,
78
- expiry,
78
+ expiry: new Date(Number(offerInput.offer.expiry) * 1000),
79
79
  },
80
80
  });
81
81
 
@@ -256,10 +256,12 @@ export const useTransactionSteps = ({
256
256
  );
257
257
 
258
258
  const result = await marketplaceClient.execute({
259
+ chainId: String(chainId),
259
260
  signature: signature as string,
260
261
  method: signatureStep.post?.method as string,
261
262
  endpoint: signatureStep.post?.endpoint as string,
262
263
  body: signatureStep.post?.body,
264
+ executeType: ExecuteType.order,
263
265
  });
264
266
 
265
267
  return result.orderId;
@@ -60,7 +60,6 @@ const Modal = observer(() => {
60
60
  const isWaaS = wallet?.isWaaS;
61
61
  const { shouldHideActionButton: shouldHideSellButton } =
62
62
  useSelectWaasFeeOptions({
63
- chainId,
64
63
  isProcessing,
65
64
  feeOptionsVisible: selectWaasFeeOptions$.isVisible.get(),
66
65
  selectedFeeOption:
@@ -8,7 +8,7 @@ import {
8
8
  } from '../../../../_internal';
9
9
  import { useWallet } from '../../../../_internal/wallet/useWallet';
10
10
  import { useConfig } from '../../../../hooks/useConfig';
11
- import { useFees } from '../../BuyModal/hooks/useFees';
11
+ import { useMarketPlatformFee } from '../../BuyModal/hooks/useMarketPlatformFee';
12
12
 
13
13
  export interface UseGetTokenApprovalDataArgs {
14
14
  chainId: number;
@@ -22,8 +22,8 @@ export const useGetTokenApprovalData = (
22
22
  ) => {
23
23
  const config = useConfig();
24
24
  const { wallet } = useWallet();
25
- const marketplaceClient = getMarketplaceClient(params.chainId, config);
26
- const { amount, receiver } = useFees({
25
+ const marketplaceClient = getMarketplaceClient(config);
26
+ const { amount, receiver } = useMarketPlatformFee({
27
27
  chainId: Number(params.chainId),
28
28
  collectionAddress: params.collectionAddress,
29
29
  });
@@ -34,6 +34,7 @@ export const useGetTokenApprovalData = (
34
34
  ? async () => {
35
35
  const address = await wallet.address();
36
36
  const args = {
37
+ chainId: String(params.chainId),
37
38
  collectionAddress: params.collectionAddress,
38
39
  walletType: wallet.walletKind,
39
40
  seller: address,
@@ -2,6 +2,7 @@ import type { Observable } from '@legendapp/state';
2
2
  import { formatUnits } from 'viem';
3
3
  import type { Address, Hex } from 'viem';
4
4
  import {
5
+ ExecuteType,
5
6
  type MarketplaceKind,
6
7
  type Step,
7
8
  StepType,
@@ -19,10 +20,10 @@ import type {
19
20
  import { useWallet } from '../../../../_internal/wallet/useWallet';
20
21
  import {
21
22
  useConfig,
22
- useCurrencies,
23
23
  useGenerateSellTransaction,
24
+ useMarketCurrencies,
24
25
  } from '../../../../hooks';
25
- import { useFees } from '../../BuyModal/hooks/useFees';
26
+ import { useMarketPlatformFee } from '../../BuyModal/hooks/useMarketPlatformFee';
26
27
  import { useTransactionStatusModal } from '../../_internal/components/transactionStatusModal';
27
28
  import type { ModalCallbacks } from '../../_internal/types';
28
29
  import type { SellOrder } from './useSell';
@@ -52,15 +53,15 @@ export const useTransactionSteps = ({
52
53
  const { wallet } = useWallet();
53
54
  const { show: showTransactionStatusModal } = useTransactionStatusModal();
54
55
  const sdkConfig = useConfig();
55
- const marketplaceClient = getMarketplaceClient(chainId, sdkConfig);
56
+ const marketplaceClient = getMarketplaceClient(sdkConfig);
56
57
  const analytics = useAnalytics();
57
58
 
58
- const { amount, receiver } = useFees({
59
+ const { amount, receiver } = useMarketPlatformFee({
59
60
  chainId,
60
61
  collectionAddress: collectionAddress,
61
62
  });
62
63
 
63
- const { data: currencies } = useCurrencies({
64
+ const { data: currencies } = useMarketCurrencies({
64
65
  chainId,
65
66
  });
66
67
  const { generateSellTransactionAsync, isPending: generatingSteps } =
@@ -248,10 +249,12 @@ export const useTransactionSteps = ({
248
249
  );
249
250
 
250
251
  const result = await marketplaceClient.execute({
252
+ chainId: String(chainId),
251
253
  signature: signature as string,
252
254
  method: signatureStep.post?.method as string,
253
255
  endpoint: signatureStep.post?.endpoint as string,
254
256
  body: signatureStep.post?.body,
257
+ executeType: ExecuteType.order,
255
258
  });
256
259
 
257
260
  return result.orderId;