@dcl/shop 0.1.0-28788415697.commit-92a0131 → 0.1.0-28849951791.commit-e0fa315

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 (201) hide show
  1. package/assets/Assets-uXzVK3Qk.js +1 -0
  2. package/assets/Cart-B_feHFWP.js +1 -0
  3. package/assets/{CircularProgress-B0lRHBCP.js → CircularProgress-MlGhFCHM.js} +1 -1
  4. package/assets/{Collection-DpUFjy6q.js → Collection-HISXJvQ9.js} +1 -1
  5. package/assets/{ConstantsUtil-D9t4gp4-.js → ConstantsUtil-DOBrEopM.js} +1 -1
  6. package/assets/{Creator-BIgvo89M.js → Creator-DckKaL-1.js} +1 -1
  7. package/assets/{ExchangeController-BxGELXaJ.js → ExchangeController-Baa0YVeA.js} +1 -1
  8. package/assets/GetCredits-DqKwryal.js +2 -0
  9. package/assets/{HelpersUtil-JEAWoPWy.js → HelpersUtil-BVXkvMyH.js} +1 -1
  10. package/assets/ImportListings-3PSkCxI9.js +1 -0
  11. package/assets/ItemDetail-Ck5cudTI.js +1 -0
  12. package/assets/{LoadMore-DB6TwvRe.js → LoadMore-Cae84rui.js} +1 -1
  13. package/assets/Market-r9wggpqR.js +1 -0
  14. package/assets/MenuItem-CTKZTFhj.js +82 -0
  15. package/assets/MyAssets-DbjlwVgI.js +1 -0
  16. package/assets/{MyFavorites-LznRvK5N.js → MyFavorites-CUJsTl4U.js} +1 -1
  17. package/assets/{MyPurchases-BM1Uxpk1.js → MyPurchases-D231IumZ.js} +1 -1
  18. package/assets/{NetworkUtil-CSluj-ND.js → NetworkUtil-aE1iGnVj.js} +1 -1
  19. package/assets/NotFound-MYCYhimC.js +1 -0
  20. package/assets/{RealCheckout-DbSQfCUZ.js → RealCheckout-_Z3g7ZbH.js} +1 -1
  21. package/assets/ShopFooterInner-gDzKrctg.js +24 -0
  22. package/assets/{SkeletonCards-yV2mi4oc.js → SkeletonCards-D9qg3FUs.js} +1 -1
  23. package/assets/{Success-CkhrWNlU.js → Success-vyQPaFjH.js} +1 -1
  24. package/assets/{SvgIcon-o9nhGFxM.js → SvgIcon-DHNKm7fg.js} +1 -1
  25. package/assets/{SwapController-C1nqmWnS.js → SwapController-C28NtHea.js} +1 -1
  26. package/assets/{TradeService-BOr6_BxE.js → TradeService-CV6tm-S-.js} +1 -1
  27. package/assets/{W3MFrameProviderSingleton-Drovl6ew.js → W3MFrameProviderSingleton-CPW2Gx43.js} +3 -3
  28. package/assets/{WebCryptoP256-C468KsvN.js → WebCryptoP256-CJ8gEFrP.js} +1 -1
  29. package/assets/{basic-CfT3tKSs.js → basic-Cp5xCH29.js} +1 -1
  30. package/assets/{biconomy-BRQR4sBp.js → biconomy-DE6VN2MK.js} +1 -1
  31. package/assets/{browser-tNtPL9tA.js → browser-Ch1J123w.js} +1 -1
  32. package/assets/{browser-ponyfill-DgNUJw98.js → browser-ponyfill-Be08WuKC.js} +1 -1
  33. package/assets/{buy-C-Rj-xp5.js → buy-DW_YPH6-.js} +1 -1
  34. package/assets/{buy-gasless-BmoACMRr.js → buy-gasless-C0vjtz9e.js} +1 -1
  35. package/assets/{ccip-c6S7TqyR.js → ccip-CO-J9tPJ.js} +1 -1
  36. package/assets/{ccip-0BllB1E2.js → ccip-Dw1-xWm0.js} +1 -1
  37. package/assets/{chains-L33YnVne.js → chains-BQfW7JAQ.js} +1 -1
  38. package/assets/{collection-WeXeyjAn.js → collection-gU9snfSG.js} +1 -1
  39. package/assets/colors-LINLm1ux.js +1 -0
  40. package/assets/{common-CKF0Kl8D.js → common-CcOIK3mx.js} +1 -1
  41. package/assets/{controller-dlBlTbYB.js → controller-Dp-L0bGU.js} +2 -2
  42. package/assets/{core-Bl_sLfyx.js → core-DOKNMejd.js} +4 -4
  43. package/assets/{custom-CNFVifWV.js → custom-DrZvVkR4.js} +1 -1
  44. package/assets/{data-capture-SDMekFnt.js → data-capture-CWmntLCH.js} +1 -1
  45. package/assets/{decimals-CSVlCZb3.js → decimals-BpJkRsKM.js} +1 -1
  46. package/assets/decimals-D1rmvFNT.js +1 -0
  47. package/assets/{detectExtension-CGFTREd-.js → detectExtension-BOrmaly3.js} +1 -1
  48. package/assets/{email-CYnr2jcE.js → email-DTaLpEKv.js} +1 -1
  49. package/assets/{embedded-wallet-W7SWJ6st.js → embedded-wallet-DVickMII.js} +1 -1
  50. package/assets/{engine-UOkAfyVN.js → engine-Cyf0wDMH.js} +1 -1
  51. package/assets/{estimate-l1-fee-D_bpSDla.js → estimate-l1-fee-Ci_3qNsd.js} +1 -1
  52. package/assets/eth_estimateGas-Bu7KbsjJ.js +1 -0
  53. package/assets/{eth_getStorageAt-D3dzlnBk.js → eth_getStorageAt-gEhkd3Dl.js} +1 -1
  54. package/assets/eth_getTransactionCount-CZrmDIpa.js +1 -0
  55. package/assets/{ethereum-BT-rALS5.js → ethereum-XjVKsXdf.js} +1 -1
  56. package/assets/{ethers-DbXGgxrh.js → ethers-CU3Ctw5k.js} +1 -1
  57. package/assets/{extractIPFS-DGHj61b1.js → extractIPFS-HSGbtFdH.js} +1 -1
  58. package/assets/{features-DENKVFit.js → features-CjtSZKbI.js} +1 -1
  59. package/assets/{fetchTokenMetadata-D85asFLD.js → fetchTokenMetadata-DcoAGAFy.js} +2 -2
  60. package/assets/{fortmatic-fqRJiMUL.js → fortmatic-86Dpmkig.js} +1 -1
  61. package/assets/{generateUtilityClasses-DXz6v4wN.js → generateUtilityClasses-DMMGtITh.js} +2 -2
  62. package/assets/get-ecosystem-wallet-info-GpWofI03.js +1 -0
  63. package/assets/{getBalance-D2EO4aBF.js → getBalance-IAhn1Sx7.js} +2 -2
  64. package/assets/{getInstalledModules-D4PNkmVO.js → getInstalledModules-Clea_yJr.js} +1 -1
  65. package/assets/{getNFT-BESsQ4oH.js → getNFT-BkaCCDU5.js} +1 -1
  66. package/assets/{getNFT-Ddh7bEJQ.js → getNFT-CbT_NWLy.js} +2 -2
  67. package/assets/{hashTypedData-C9QOz9pr.js → hashTypedData-DAd66wY6.js} +1 -1
  68. package/assets/{hashTypedData-Bx3nzvk8.js → hashTypedData-PYLB7hJl.js} +1 -1
  69. package/assets/import-dVEuzimB.js +1 -0
  70. package/assets/{in-app-wallet-calls-Df158hbr.js → in-app-wallet-calls-l67EA4DZ.js} +1 -1
  71. package/assets/{index-Dk9zDQwk.js → index-7rWaFD7f.js} +1 -1
  72. package/assets/{index-K4m_AYVk.js → index-B0--HMVL.js} +3 -3
  73. package/assets/{index-soJZoLvF.js → index-B1ZF46Ko.js} +1 -1
  74. package/assets/{index-p2GbBPES.js → index-B3P6BPci.js} +1 -1
  75. package/assets/{index-aTH_VwVx.js → index-B67hpoq5.js} +1 -1
  76. package/assets/{index-BkFksbUM.js → index-B6lLVyUf.js} +1 -1
  77. package/assets/{index-kV1vUp3Z.js → index-B94ghhpu.js} +1 -1
  78. package/assets/{index-BC7-fNQN.js → index-BKA2Kk9C.js} +1 -1
  79. package/assets/{index-DBg2eXPN.js → index-BVcNzXap.js} +1 -1
  80. package/assets/{index-3SuxDGIz.js → index-BWbKKFVK.js} +1 -1
  81. package/assets/{index-BGGbU05t.js → index-BYg62rD6.js} +1 -1
  82. package/assets/{index-DFJRGUDh.js → index-B_NuPdf0.js} +1 -1
  83. package/assets/{index-BEqhzSDF.js → index-BcZPRgUv.js} +1 -1
  84. package/assets/{index-VSv5weX8.js → index-Bd4x7TMP.js} +1 -1
  85. package/assets/{index-DoTsdAEj.js → index-BeUILvqM.js} +1 -1
  86. package/assets/{index-boWBUFDv.js → index-BjptEpaJ.js} +1 -1
  87. package/assets/{index-DYf2mXDi.js → index-Bl9N3aWR.js} +1 -1
  88. package/assets/{index-Cre0gJrZ.js → index-BrR0WZ0Y.js} +1 -1
  89. package/assets/{index-BqV4-5lu.js → index-BuedKT8D.js} +2 -2
  90. package/assets/{index-TLgW5WZT.js → index-Bv11rzVa.js} +1 -1
  91. package/assets/{index-CIxFIqFU.js → index-C6uhDE9h.js} +1 -1
  92. package/assets/{index-wj8CVNfJ.js → index-C7St4Q5o.js} +1 -1
  93. package/assets/{index-DFrHyvod.js → index-CAXOAo7E.js} +1 -1
  94. package/assets/index-CENUxZfv.js +4 -0
  95. package/assets/{index-WQHztqda.js → index-CbyAJw4-.js} +1 -1
  96. package/assets/{index-CfLoF7Qe.js → index-CcUfpaSP.js} +1 -1
  97. package/assets/{index-D6h-NdP-.js → index-CcsWoBJK.js} +1 -1
  98. package/assets/{index-LSdKGFoq.js → index-CdO-kfoS.js} +1 -1
  99. package/assets/{index-BQWuxKdW.js → index-CqnsV9lR.js} +1 -1
  100. package/assets/{index-m4zZXBld.js → index-CsVrdKM8.js} +1 -1
  101. package/assets/{index-B4P5FnkC.js → index-Ctj09Wx6.js} +1 -1
  102. package/assets/index-CuBAn4iR.js +1 -0
  103. package/assets/{index-75Ps2rGt.js → index-D1gEge8-.js} +3 -3
  104. package/assets/{index-B5lBgsVo.js → index-D3oE2u-n.js} +1 -1
  105. package/assets/{index-BpRV6pU7.js → index-D5JjqjjU.js} +1 -1
  106. package/assets/index-D9XZpwfV.js +95 -0
  107. package/assets/{index-CORb4fda.js → index-DHG_C-Ye.js} +1 -1
  108. package/assets/{index-u6DTe7Nz.js → index-DOLdge0g.js} +1 -1
  109. package/assets/{index-DUOCGq8U.js → index-DURh1PEo.js} +1 -1
  110. package/assets/{index-B3m29cNt.js → index-DVcL7J_t.js} +1 -1
  111. package/assets/{index-ykRzQjuZ.js → index-Df6GKZpc.js} +2 -2
  112. package/assets/{index-CvVHPcFb.js → index-DnQG3NAn.js} +1 -1
  113. package/assets/{index-C6ImpJyG.js → index-DqnX5uAR.js} +1 -1
  114. package/assets/{index-DaBA0yRd.js → index-Dv41StGm.js} +1 -1
  115. package/assets/index-DxWP3gak.js +7 -0
  116. package/assets/index-Pws_ODuR.css +1 -0
  117. package/assets/index-ZxkJeEpU.js +1 -0
  118. package/assets/{index-BwMgLDly.js → index-a4k6LaYK.js} +1 -1
  119. package/assets/{index-SBOBxQlc.js → index-bJ6HAtiK.js} +1 -1
  120. package/assets/{index-CBLO6USL.js → index-jCrNn234.js} +1 -1
  121. package/assets/{index-C631qzTG.js → index-o2j-czuk.js} +1 -1
  122. package/assets/{index-DdlK5WYO.js → index-o3xLbiUm.js} +1 -1
  123. package/assets/{index-kSZb6Dua.js → index-rk-RtPGh.js} +1 -1
  124. package/assets/{index-bwiQJCJg.js → index-u77btqjQ.js} +2 -2
  125. package/assets/{index-yPxvUW6S.js → index-u8nH4Rw0.js} +1 -1
  126. package/assets/{index-BUE1aXpM.js → index-uzc4dT8s.js} +1 -1
  127. package/assets/{index-63GX_n07.js → index-zVvLDKBh.js} +2 -2
  128. package/assets/{index-B4VK7VPX.js → index-zbujtMDB.js} +1 -1
  129. package/assets/{index.es-C0c_PfHy.js → index.es-CYMyZCD-.js} +1 -1
  130. package/assets/{index.es-BRKHDF5O.js → index.es-DJUkBdGr.js} +1 -1
  131. package/assets/{index.es-CO_XF63k.js → index.es-UvEfkSna.js} +4 -4
  132. package/assets/{localBatchGatewayRequest-Coptu8fQ.js → localBatchGatewayRequest-C9D88kZr.js} +1 -1
  133. package/assets/{mana-rate-RN1C71HA.js → mana-rate-Dx_lqKWQ.js} +1 -1
  134. package/assets/{native-BJmDxbqB.js → native-zogUBnfz.js} +1 -1
  135. package/assets/network-CCTP_tzM.js +1 -0
  136. package/assets/{networks-Dk1wsaJ8.js → networks-KbQXXD7P.js} +1 -1
  137. package/assets/{onramp-8Ursi6WH.js → onramp-iekcmGjJ.js} +1 -1
  138. package/assets/{openzeppelin-DoezFh1a.js → openzeppelin-41206uN_.js} +1 -1
  139. package/assets/{ownerOf-Be35NH6y.js → ownerOf-DH7SAQYs.js} +1 -1
  140. package/assets/{parseNft-B8RddWyu.js → parseNft-Dy8OsAtf.js} +2 -2
  141. package/assets/{parseSignature-BCXOdvDq.js → parseSignature-BiaWpR8i.js} +1 -1
  142. package/assets/{parseSignature-B9N92FV1.js → parseSignature-D9IuPuaA.js} +3 -3
  143. package/assets/{pay-with-exchange-CLsRdRnD.js → pay-with-exchange-D0U4VJXZ.js} +1 -1
  144. package/assets/{qr-overlay-CfKat5Nj.js → qr-overlay-35KmnL99.js} +3 -3
  145. package/assets/{react-E8ng6RF2.js → react-4iaCnQ6n.js} +1 -1
  146. package/assets/{receive-Bpba7exF.js → receive-D80uh9Rj.js} +1 -1
  147. package/assets/{resolveImplementation-COEuR_c6.js → resolveImplementation-BuxyNBBw.js} +1 -1
  148. package/assets/{rpc-CA14ywXy.js → rpc-CV4XQPwJ.js} +1 -1
  149. package/assets/{secp256k1-BYTveHSI.js → secp256k1-Bz9G1VTq.js} +1 -1
  150. package/assets/{secp256k1-BxNXIPx_.js → secp256k1-CZj9lLpY.js} +1 -1
  151. package/assets/{secp256k1-VCKU6ZbV.js → secp256k1-lf00rTSa.js} +1 -1
  152. package/assets/{send-CKEWBVZR.js → send-CZjs1yZc.js} +1 -1
  153. package/assets/{send-batch-transaction-kRaDbHFW.js → send-batch-transaction-uDBYU3an.js} +1 -1
  154. package/assets/{send-eip712-transaction-BdAsbdUC.js → send-eip712-transaction-DR18L-sh.js} +2 -2
  155. package/assets/{send-gasless-transaction-umbide8L.js → send-gasless-transaction-BfuwoIYy.js} +2 -2
  156. package/assets/{sendRawTransaction-9yflHgsx.js → sendRawTransaction-BUgSPkVd.js} +3 -3
  157. package/assets/{serializeTransaction-Cl_9QLOo.js → serializeTransaction-Dmi33xSK.js} +1 -1
  158. package/assets/{session-proposal-CAuTXnKi.js → session-proposal-BOa4yxBl.js} +1 -1
  159. package/assets/{session-request-CuMQl9E8.js → session-request-Bcaq75nd.js} +2 -2
  160. package/assets/{sha256-4KqSLEWF.js → sha256-zMI7s0-F.js} +1 -1
  161. package/assets/{signing-CHdT_Ot8.js → signing-Cvv8O8BI.js} +5 -5
  162. package/assets/{socials-9xnPXlWI.js → socials-C_Nw_-aT.js} +1 -1
  163. package/assets/{swaps-DJp-RCo5.js → swaps-DrEprVp5.js} +1 -1
  164. package/assets/{thirdweb-T9OwwIQ6.js → thirdweb-D3908hZR.js} +3 -3
  165. package/assets/{totalSupply-D_X-_ZDw.js → totalSupply-CpI009r1.js} +1 -1
  166. package/assets/{transactionReceipt-BTJ1sQrj.js → transactionReceipt-CRiBJ28i.js} +1 -1
  167. package/assets/{transactions-C6sC5BaM.js → transactions-63jnvtFL.js} +1 -1
  168. package/assets/{useInfiniteGrid-et3T-1IY.js → useInfiniteGrid-xOdKaR3H.js} +1 -1
  169. package/assets/{utils-BZTXwsyT.js → utils-kxirIM46.js} +1 -1
  170. package/assets/{verifyHash-CudNiAgH.js → verifyHash-BR9R1RG0.js} +1 -1
  171. package/assets/{w3m-modal-DIuoUtJk.js → w3m-modal-BlMrqGaw.js} +1 -1
  172. package/assets/{w3m-modal-BxYBckMB.js → w3m-modal-lZE_ZuOa.js} +1 -1
  173. package/assets/{wait-for-tx-receipt-CygP4VsC.js → wait-for-tx-receipt-Do82Sucy.js} +1 -1
  174. package/assets/{wallet-kind-BTWNHcc9.js → wallet-kind-WAQetlRX.js} +1 -1
  175. package/assets/{wallets-CsiIl2HG.js → wallets-CoP2jTeJ.js} +6 -6
  176. package/assets/{web-connector-BkMDTCh_.js → web-connector-uOzuTTW_.js} +3 -3
  177. package/assets/{writeContract-C8FPneHs.js → writeContract-D-hfmcKA.js} +1 -1
  178. package/assets/{zora-sepolia-BF9oR096.js → zora-sepolia-BMTSsYE9.js} +1 -1
  179. package/assets/{zoraTestnet-CQZ9NUll.js → zoraTestnet-BMgpy9AE.js} +1 -1
  180. package/index.html +8 -8
  181. package/package.json +2 -2
  182. package/assets/Assets-C0yakYaS.js +0 -1
  183. package/assets/Cart-CcietwVV.js +0 -1
  184. package/assets/GetCredits-BkyWsDk5.js +0 -2
  185. package/assets/ImportListings-_ZmYZr75.js +0 -1
  186. package/assets/ItemDetail-5H1R8AEJ.js +0 -1
  187. package/assets/Market-DjypWFj5.js +0 -1
  188. package/assets/MyAssets-CrobB3dP.js +0 -1
  189. package/assets/NotFound-DW9xW0V2.js +0 -1
  190. package/assets/decimals-DoXdKj3t.js +0 -1
  191. package/assets/eth_estimateGas-CtUEH79c.js +0 -1
  192. package/assets/eth_getTransactionCount-n2pPwlEw.js +0 -1
  193. package/assets/get-ecosystem-wallet-info-D5g78AMe.js +0 -1
  194. package/assets/import-CDNhzcDz.js +0 -1
  195. package/assets/index-C13awi5n.js +0 -74
  196. package/assets/index-CVEOS5BF.css +0 -1
  197. package/assets/index-ChPBLIHl.js +0 -1
  198. package/assets/index-D7_2_7YY.js +0 -85
  199. package/assets/index-DSxKsQSh.js +0 -1
  200. package/assets/index-z01aMwFk.js +0 -7
  201. package/assets/network-DRh88abw.js +0 -1
package/index.html CHANGED
@@ -16,10 +16,10 @@
16
16
  <link rel="canonical" href="https://shop.decentraland.zone/" />
17
17
 
18
18
  <!-- Favicon: the Decentraland mark (same as the marketplace). -->
19
- <link rel="icon" type="image/x-icon" href="https://cdn.decentraland.org/@dcl/shop/0.1.0-28788415697.commit-92a0131/favicon.ico" sizes="16x16 32x32 48x48" />
20
- <link rel="apple-touch-icon" sizes="180x180" href="https://cdn.decentraland.org/@dcl/shop/0.1.0-28788415697.commit-92a0131/apple-touch-icon.png" />
19
+ <link rel="icon" type="image/x-icon" href="https://cdn.decentraland.org/@dcl/shop/0.1.0-28849951791.commit-e0fa315/favicon.ico" sizes="16x16 32x32 48x48" />
20
+ <link rel="apple-touch-icon" sizes="180x180" href="https://cdn.decentraland.org/@dcl/shop/0.1.0-28849951791.commit-e0fa315/apple-touch-icon.png" />
21
21
  <meta name="apple-mobile-web-app-title" content="DCL Shop" />
22
- <link rel="manifest" href="https://cdn.decentraland.org/@dcl/shop/0.1.0-28788415697.commit-92a0131/site.webmanifest" />
22
+ <link rel="manifest" href="https://cdn.decentraland.org/@dcl/shop/0.1.0-28849951791.commit-e0fa315/site.webmanifest" />
23
23
 
24
24
  <!-- Open Graph -->
25
25
  <meta property="og:type" content="website" />
@@ -48,7 +48,7 @@
48
48
  <meta name="twitter:image:alt" content="Decentraland Shop — wearables and emotes for your avatar" />
49
49
 
50
50
  <!-- Sitemap -->
51
- <link rel="sitemap" type="application/xml" title="Sitemap" href="https://cdn.decentraland.org/@dcl/shop/0.1.0-28788415697.commit-92a0131/sitemap.xml" />
51
+ <link rel="sitemap" type="application/xml" title="Sitemap" href="https://cdn.decentraland.org/@dcl/shop/0.1.0-28849951791.commit-e0fa315/sitemap.xml" />
52
52
 
53
53
  <!-- Warm the 3D preview / fonts -->
54
54
  <link rel="preconnect" href="https://fonts.googleapis.com" />
@@ -60,10 +60,10 @@
60
60
  <link rel="preconnect" href="https://wearable-preview.decentraland.org" />
61
61
  <link rel="preconnect" href="https://peer.decentraland.zone" crossorigin />
62
62
  <link rel="preconnect" href="https://peer.decentraland.org" crossorigin />
63
- <script type="module" crossorigin src="https://cdn.decentraland.org/@dcl/shop/0.1.0-28788415697.commit-92a0131/assets/index-C13awi5n.js"></script>
64
- <link rel="modulepreload" crossorigin href="https://cdn.decentraland.org/@dcl/shop/0.1.0-28788415697.commit-92a0131/assets/react-E8ng6RF2.js">
65
- <link rel="modulepreload" crossorigin href="https://cdn.decentraland.org/@dcl/shop/0.1.0-28788415697.commit-92a0131/assets/ethers-DbXGgxrh.js">
66
- <link rel="stylesheet" crossorigin href="https://cdn.decentraland.org/@dcl/shop/0.1.0-28788415697.commit-92a0131/assets/index-CVEOS5BF.css">
63
+ <script type="module" crossorigin src="https://cdn.decentraland.org/@dcl/shop/0.1.0-28849951791.commit-e0fa315/assets/index-D9XZpwfV.js"></script>
64
+ <link rel="modulepreload" crossorigin href="https://cdn.decentraland.org/@dcl/shop/0.1.0-28849951791.commit-e0fa315/assets/react-4iaCnQ6n.js">
65
+ <link rel="modulepreload" crossorigin href="https://cdn.decentraland.org/@dcl/shop/0.1.0-28849951791.commit-e0fa315/assets/ethers-CU3Ctw5k.js">
66
+ <link rel="stylesheet" crossorigin href="https://cdn.decentraland.org/@dcl/shop/0.1.0-28849951791.commit-e0fa315/assets/index-Pws_ODuR.css">
67
67
  </head>
68
68
  <body>
69
69
  <div id="root"></div>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dcl/shop",
3
- "version": "0.1.0-28788415697.commit-92a0131",
3
+ "version": "0.1.0-28849951791.commit-e0fa315",
4
4
  "main": "index.js",
5
5
  "author": "Decentraland",
6
6
  "license": "Apache-2.0",
@@ -8,5 +8,5 @@
8
8
  "type": "git",
9
9
  "url": "git+https://github.com/decentraland/shop.git"
10
10
  },
11
- "commit": "92a0131b54964fc51fa9773af247ff257037b742"
11
+ "commit": "e0fa31592a62b6e76c72fdce739d5f9c51a5c47e"
12
12
  }
@@ -1 +0,0 @@
1
- import{u as K,r as i,j as e}from"./react-E8ng6RF2.js";import{t as M,C as Q,A as V,f as X}from"./index-C13awi5n.js";import{S as F}from"./SkeletonCards-yV2mi4oc.js";import{L as ee}from"./LoadMore-DB6TwvRe.js";import{u as se}from"./useInfiniteGrid-et3T-1IY.js";import"./ethers-DbXGgxrh.js";const re=48,k=[{key:"wearable",label:"Wearables",sub:["Head","Upper Body","Handwear","Lower Body","Feet","Accessories","Skins"]},{key:"emote",label:"Emotes",sub:[]},{key:"ens",label:"Names",sub:[]},{key:"parcel",label:"Lands",sub:[]}],ie={Head:["head","hat","hair","facial_hair","eyes","eyebrows","mouth","mask","helmet","tiara","top_head"],"Upper Body":["upper_body"],Handwear:["hands_wear"],"Lower Body":["lower_body"],Feet:["feet"],Accessories:["earring","eyewear"],Skins:["skin"]},te=["common","uncommon","rare","epic","legendary","mythic","unique","exotic"],f=[{key:"newest",label:"Newest",server:"newest"},{key:"price-asc",label:"Price: Low to High",server:"cheapest"},{key:"price-desc",label:"Price: High to Low",server:"most_expensive"},{key:"name",label:"Name (A–Z)",server:"name"}];function de(){const[B]=K(),l=(B.get("q")??"").trim().toLowerCase(),[n,C]=i.useState("wearable"),[r,x]=i.useState(null),[t,S]=i.useState([]),[m,w]=i.useState(""),[p,$]=i.useState(""),[u,H]=i.useState("newest"),[a,d]=i.useState(null),h=m&&!Number.isNaN(Number(m))?Number(m):void 0,b=p&&!Number.isNaN(Number(p))?Number(p):void 0,I=r?ie[r]:void 0,q=(f.find(s=>s.key===u)??f[0]).server,A={category:n,rarities:t.length?t:void 0,wearableCategories:I,minPriceCredits:h,maxPriceCredits:b,search:l||void 0,sortBy:q},{items:P,total:y,isLoading:c,error:L,hasNextPage:O,isFetchingNextPage:R,fetchNextPage:T}=se(["listings",A],s=>X({...A,first:re,skip:s})),N=y,E=i.useRef(null);i.useEffect(()=>{c||!l||E.current===l||(E.current=l,M("Shop Searched",{query:l,result_count:N}))},[l,c,N]);const g=i.useRef("__init__");i.useEffect(()=>{if(c)return;const s=JSON.stringify({category:n,subCategory:r,rarities:t,min:h,max:b,sort:u});if(g.current==="__init__"||g.current===s){g.current=s;return}g.current=s,M("Shop Applied Filter",{filters:{category:n,sub_category:r,rarities:t,min_price_credits:h??null,max_price_credits:b??null,sort:u},result_count:N})},[n,r,t,h,b,u,c,N]);function U(s){C(s),x(null)}function G(s){S(o=>o.includes(s)?o.filter(D=>D!==s):[...o,s])}function Z(){C("wearable"),x(null),S([]),w(""),$(""),d(null)}function j(s){d(o=>o===s?null:s)}const J=f.find(s=>s.key===u)??f[0],_=k.find(s=>s.key===n)??k[0],W=r?`${_.label} · ${r}`:_.label,v=!!(h||b),Y=v?`${m||"0"}–${p||"∞"}`:"Price",z=n!=="wearable"||!!r||t.length>0||v;return e.jsxs("div",{className:"browse",children:[a?e.jsx("div",{className:"filterbar__scrim",onClick:()=>d(null),"aria-hidden":!0}):null,e.jsxs("div",{className:"filterbar",children:[e.jsxs("div",{className:"filterbar__filters",children:[e.jsxs("div",{className:"filterbar__item",children:[e.jsxs("button",{className:`filterbar__trigger${a==="section"?" is-open":""}${r||n!=="wearable"?" is-active":""}`,onClick:()=>j("section"),children:[W," ",e.jsx("span",{className:"filterbar__chev","aria-hidden":!0,children:"▾"})]}),a==="section"?e.jsxs("div",{className:"filter-pop filter-pop--section",children:[e.jsx("ul",{className:"filter-pop__cats",children:k.map(s=>e.jsx("li",{children:e.jsx("button",{className:`filter-pop__cat${n===s.key?" is-active":""}`,onClick:()=>U(s.key),children:s.label})},s.key))}),_.sub.length?e.jsxs("ul",{className:"filter-pop__subs",children:[e.jsx("li",{children:e.jsxs("button",{className:`filter-pop__sub${r?"":" is-active"}`,onClick:()=>{x(null),d(null)},children:["All ",_.label]})}),_.sub.map(s=>e.jsx("li",{children:e.jsx("button",{className:`filter-pop__sub${r===s?" is-active":""}`,onClick:()=>{x(o=>o===s?null:s),d(null)},children:s})},s))]}):null]}):null]}),e.jsxs("div",{className:"filterbar__item",children:[e.jsxs("button",{className:`filterbar__trigger${a==="rarity"?" is-open":""}${t.length?" is-active":""}`,onClick:()=>j("rarity"),children:["Rarity ",t.length?e.jsx("span",{className:"filterbar__badge",children:t.length}):null," ",e.jsx("span",{className:"filterbar__chev","aria-hidden":!0,children:"▾"})]}),a==="rarity"?e.jsx("div",{className:"filter-pop filter-pop--rarity",children:te.map(s=>e.jsxs("label",{className:"filter-pop__check",children:[e.jsx("input",{type:"checkbox",checked:t.includes(s),onChange:()=>G(s)}),e.jsx("span",{children:s})]},s))}):null]}),e.jsxs("div",{className:"filterbar__item",children:[e.jsxs("button",{className:`filterbar__trigger${a==="price"?" is-open":""}${v?" is-active":""}`,onClick:()=>j("price"),children:[Y," ",e.jsx("span",{className:"filterbar__chev","aria-hidden":!0,children:"▾"})]}),a==="price"?e.jsxs("div",{className:"filter-pop filter-pop--price",children:[e.jsxs("div",{className:"filter-pop__price-row",children:[e.jsx("input",{type:"number",min:"0","aria-label":"Minimum price",placeholder:"Min",value:m,onChange:s=>w(s.target.value)}),e.jsx("span",{children:"–"}),e.jsx("input",{type:"number",min:"0","aria-label":"Maximum price",placeholder:"Max",value:p,onChange:s=>$(s.target.value)})]}),e.jsxs("p",{className:"filter-pop__hint",children:["Price in ",Q.name]})]}):null]}),z?e.jsx("button",{className:"filterbar__clear",onClick:Z,children:"Clear all"}):null]}),e.jsxs("div",{className:"filterbar__right",children:[e.jsxs("span",{className:"filterbar__count",children:[c?"…":`${y.toLocaleString()} item${y===1?"":"s"}`,l?` for “${l}”`:""]}),e.jsxs("div",{className:"filterbar__item",children:[e.jsxs("button",{className:`filterbar__sort${a==="sort"?" is-open":""}`,onClick:()=>j("sort"),children:["Sort by: ",J.label," ",e.jsx("span",{className:"filterbar__chev","aria-hidden":!0,children:"▾"})]}),a==="sort"?e.jsx("div",{className:"filter-pop filter-pop--sort",children:f.map(s=>e.jsx("button",{className:`filter-pop__sort${s.key===u?" is-active":""}`,onClick:()=>{H(s.key),d(null)},children:s.label},s.key))}):null]})]})]}),L?e.jsx("p",{className:"error",children:L.message}):null,e.jsx("div",{className:"grid",children:c?e.jsx(F,{count:15}):e.jsxs(e.Fragment,{children:[P.map(s=>e.jsx(V,{item:s},s.id)),R?e.jsx(F,{count:6}):null]})}),e.jsx(ee,{hasNextPage:O,isFetching:R,onLoadMore:()=>T()}),!c&&P.length===0?e.jsx("p",{className:"muted",children:"No items match your filters."}):null]})}export{de as Assets};
@@ -1 +0,0 @@
1
- import{b as W,r as g,j as e,L as T}from"./react-E8ng6RF2.js";import{k as _,c as $,e as A,l as K,m as O,a as M,g as j,C as Y,A as H,t as v,n as F,i as V,o as D,q as J,r as X,s as Z,v as I,w as P,x as ee,y as se,z as ae,f as te}from"./index-C13awi5n.js";import{f as q}from"./buy-C-Rj-xp5.js";import{g as re,b as ce,w as ie,G as ne}from"./buy-gasless-BmoACMRr.js";import"./ethers-DbXGgxrh.js";import"./index-kV1vUp3Z.js";function le(a){const o=a,i=(o.message??"").toLowerCase();return o.code===4001||i.includes("reject")||i.includes("denied")||i.includes("cancel")?"You cancelled the request.":i.includes("insufficient")?`You don't have enough ${Y.name} — get more first.`:i.includes("no active listing")||i.includes("your own listing")?o.message:"Couldn't complete checkout — please try again."}function oe(a){return ae(a.received[0].amount)}function ye(){const a=_(s=>s.items),o=_(s=>s.remove),i=_(s=>s.clear),z=_(s=>s.setFittingOpen),{session:t}=$(),R=a.some(s=>s.category!=="emote"),{data:y}=A({queryKey:["upsell-listings"],queryFn:()=>te({first:40}),staleTime:6e4}),{data:l}=K(t),N=O(),U=W(),[b,m]=g.useState(null),[C,f]=g.useState(null),[h,w]=g.useState(!1),d=a.reduce((s,u)=>s+u.priceCredits,0),G=new Set(a.map(s=>s.id)),k=((y==null?void 0:y.items)??[]).filter(s=>!G.has(s.id)).slice(0,6);async function B(){if(!t){f("Sign in to check out.");return}f(null),w(!0),v("Shop Started Checkout",{cart_size:a.length,cart_value_credits:d,cart_value_usd:F(d),has_sufficient_credits:((l==null?void 0:l.credits)??0)>=d});const s=a.slice(),u=[];let x="authorize",S=!1;try{m("Preparing your order…");const c=[];for(const r of a){const p=r.tradeId?await V(r.tradeId):await D(r.contractAddress,r.itemId??"");if(!p)throw new Error(`No active listing for ${r.name}.`);if(J(p,t.address))throw new Error(`You can't buy your own listing: ${r.name}.`);const L=oe(p),{credit:E,maxCreditedValue:Q}=await X(t.identity,L,r.tradeId);u.push(E.id),c.push({trade:p,credits:[E],maxCreditedValue:Q})}m("Confirming your purchase…"),x="submit";let n=[];if(re())try{n=await ce({purchases:c,buyer:t.address,signer:t.signer}),await Promise.all(n.map(r=>ie(r))),S=!0}catch(r){if(!(r instanceof ne))throw r;n=await q({purchases:c,buyer:t.address,signer:t.signer})}else n=await q({purchases:c,buyer:t.address,signer:t.signer});i(),m("Purchased! 🎉"),v("Shop Completed Purchase",{...Z(s),payment_type:"credits",no_crypto_step:S,transaction_hash:n[0]??null}),N.invalidateQueries({queryKey:["usd-balance"]}),U("/success",{state:{items:s,txHash:n[0]}})}catch(c){if(I(c)||P(c,{flow:"cart_checkout",step:x,cart_size:a.length}),v(I(c)?"Shop Purchase Cancelled":"Shop Purchase Failed",{step:x,error_code:ee(c),value_usd:F(d),cart_size:a.length}),u.length){try{await se(t.identity,u)}catch(n){P(n,{flow:"cart_checkout",step:"release"})}N.invalidateQueries({queryKey:["usd-balance"]})}f(le(c)),m(null)}finally{w(!1)}}return a.length===0?e.jsxs("div",{className:"cart cart--empty",children:[e.jsx("span",{className:"ico ico-cart cart-empty__ico","aria-hidden":!0}),e.jsx("p",{className:"cart-empty__title",children:"Your cart is empty"}),e.jsx("p",{className:"muted",children:"Find something you love and it’ll show up here."}),e.jsx(T,{className:"btn btn--purple",to:"/assets",children:"Browse Collectibles"})]}):e.jsxs("div",{className:"cart",children:[e.jsxs("h1",{children:["Cart (",a.length,")"]}),e.jsx("div",{className:"cart__list",children:a.map(s=>e.jsxs("div",{className:"cart__row",children:[e.jsx("div",{className:"cart__thumb",children:s.thumbnail?e.jsx("img",{src:s.thumbnail,alt:s.name}):null}),e.jsxs("div",{className:"cart__info",children:[e.jsx("div",{className:"cart__name",children:s.name}),s.creator?e.jsx(M,{address:s.creator,className:"cart__creator",linkToProfile:!0}):null]}),e.jsxs("div",{className:"cart__price",children:[e.jsx(j,{className:"ccy-mark"})," ",s.priceCredits]}),e.jsx("button",{className:"cart__remove",onClick:()=>o(s.id),disabled:h,"aria-label":`Remove ${s.name}`,title:"Remove",children:e.jsx("span",{className:"ico ico-trash","aria-hidden":!0})})]},s.id))}),e.jsxs("div",{className:"cart__foot",children:[e.jsxs("div",{className:"cart__total",children:[e.jsxs("div",{className:"cart__total-line",children:["Total ",e.jsxs("strong",{children:[e.jsx(j,{className:"ccy-mark"})," ",d]})]}),t?e.jsxs("div",{className:"muted cart__balance",children:["Your balance: ",e.jsx(j,{className:"ccy-mark"})," ",(l==null?void 0:l.credits)??0]}):null]}),e.jsxs("div",{className:"cart__actions",children:[R?e.jsx("button",{className:"btn btn--ghost",onClick:()=>z(!0),disabled:h,children:"Try on outfit"}):null,e.jsxs(T,{className:"btn btn--ghost",to:"/credits",children:["Get ",Y.name]}),e.jsx("button",{className:"btn btn--purple cart__checkout",onClick:B,disabled:h,children:"Checkout"})]})]}),e.jsxs("div",{className:"cart__utils",children:[e.jsx("button",{className:"link",onClick:i,disabled:h,children:"Clear cart"}),null]}),b?e.jsx("p",{className:"muted",style:{marginTop:12},children:b}):null,C?e.jsx("p",{className:"error",style:{marginTop:12},children:C}):null,k.length>0?e.jsxs("section",{className:"row cart-upsell",children:[e.jsx("div",{className:"row__head",children:e.jsx("h2",{className:"row__title",children:"You might also like"})}),e.jsx("div",{className:"row__track",children:k.map(s=>e.jsx(H,{item:s},s.id))})]}):null]})}export{ye as Cart};
@@ -1,2 +0,0 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/RealCheckout-DbSQfCUZ.js","assets/react-E8ng6RF2.js","assets/index-C13awi5n.js","assets/ethers-DbXGgxrh.js","assets/index-CVEOS5BF.css"])))=>i.map(i=>d[i]);
2
- import{P,j as y,R as O,c as V,m as F,t as _,w as v,x as S,C as u,g as N,J as $,_ as Y}from"./index-C13awi5n.js";import{b as z,r as l,j as e}from"./react-E8ng6RF2.js";import{C}from"./CircularProgress-B0lRHBCP.js";import"./ethers-DbXGgxrh.js";import"./generateUtilityClasses-DXz6v4wN.js";function R(){return y.shopServerUrl||y.creditsServerUrl}async function K(s,t){const r=await P(`${R()}/credits/checkout`,{method:"POST",identity:t,metadata:{},headers:{"Content-Type":"application/json"},body:JSON.stringify({packId:s})});if(!r.ok)throw new Error(`checkout ${r.status}: ${await r.text()}`);const{orderId:a,clientSecret:n}=await r.json();return{orderId:a,clientSecret:n,mock:!1}}async function L(s,t,r={}){const{intervalMs:a=1500,timeoutMs:n=6e4,signal:i}=r,c=Date.now()+n;for(;;){if(i!=null&&i.aborted)throw new DOMException("Aborted","AbortError");const m=await q(s,t,i);if(m.status!=="processing")return m;if(Date.now()>c)return{status:"failed",error:"Timed out waiting for your credits."};await J(a,i)}}async function q(s,t,r){const a=await P(`${R()}/credits/orders/${s}`,{method:"GET",identity:t,metadata:{},signal:r});if(!a.ok)throw new Error(`order status ${a.status}`);return a.json()}function J(s,t){return new Promise((r,a)=>{const n=setTimeout(r,s);t==null||t.addEventListener("abort",()=>{clearTimeout(n),a(new DOMException("Aborted","AbortError"))})})}const Q=.1,G=[{id:"pack_5",usd:5,credits:f(5)},{id:"pack_10",usd:10,credits:f(10)},{id:"pack_25",usd:25,credits:f(25),bestValue:!0},{id:"pack_50",usd:50,credits:f(50)}];function f(s){return Math.round(s/Q)}function T(s){return G.find(t=>t.id===s)}const x="mock_cs_";function M(){return!y.stripePublishableKey||!y.shopServerUrl}async function W(s,t){const r=T(s);if(!r)throw new Error("Unknown pack");if(M())return H(r);if(!(t!=null&&t.identity))throw new Error("Sign in to get credits.");return K(s,t.identity)}async function X(s,t={}){const{intervalMs:r,timeoutMs:a,signal:n,identity:i}=t;if(s.startsWith(x)||M())return Z(s,t);if(!i)throw new Error("Sign in to get credits.");return L(s,i,{intervalMs:r,timeoutMs:a,signal:n})}function H(s){const t=`${x}${s.id}_${Date.now()}`;return D(400).then(()=>({orderId:t,clientSecret:`${x}${s.id}`,mock:!0}))}async function Z(s,t={}){await D(t.intervalMs??900);const r=s.replace(x,"").replace(/_\d+$/,""),a=T(r),n=(a==null?void 0:a.credits)??0;if(t.address&&a)try{const i=await O(t.address,Math.round(a.usd*100));return{status:"credited",creditsGranted:n,newBalance:i.credits}}catch(i){return{status:"failed",error:i.message}}return{status:"credited",creditsGranted:n,newBalance:n}}function D(s,t){return new Promise((r,a)=>{setTimeout(r,s)})}const b=y.shopServerUrl?"stripe":"mock",ee=l.lazy(()=>Y(()=>import("./RealCheckout-DbSQfCUZ.js"),__vite__mapDeps([0,1,2,3,4])));function E(s){const t=s;if((t==null?void 0:t.name)==="AbortError")return"You cancelled the request.";const r=((t==null?void 0:t.message)??"").toLowerCase();return r.includes("sign in")?`Sign in to get ${u.name}.`:r.includes("timed out")?`This is taking longer than usual — your ${u.name} will appear shortly.`:"Couldn't complete your purchase — please try again."}function de(){const s=z(),{session:t,signIn:r}=V(),a=F(),[n,i]=l.useState("select"),[c,m]=l.useState(null),[p,k]=l.useState(null),[I,w]=l.useState(null),[A,h]=l.useState(null),j=l.useRef(null);l.useEffect(()=>()=>{var o;return(o=j.current)==null?void 0:o.abort()},[]);const B=l.useCallback(async o=>{if(!t){r();return}h(null),m(o),i("paying"),_("Shop Started Buy Credits",{pack_usd:o.usd,credits:o.credits,provider:b});try{const d=await W(o.id,{address:t.address,identity:t.identity});k(d)}catch(d){v(d,{flow:"get_credits",step:"checkout",provider:b}),_("Shop Buy Credits Failed",{step:"checkout",error_code:S(d),pack_usd:o.usd}),h(E(d)),i("error")}},[t,r]),U=l.useCallback(async()=>{if(!p)return;i("processing");const o=new AbortController;j.current=o;try{const d=await X(p.orderId,{signal:o.signal,address:t==null?void 0:t.address,identity:t==null?void 0:t.identity});d.status==="credited"?(w(d.creditsGranted??(c==null?void 0:c.credits)??0),i("success"),_("Shop Completed Buy Credits",{order_id:p.orderId,pack_usd:(c==null?void 0:c.usd)??null,credits:d.creditsGranted??(c==null?void 0:c.credits)??0,provider:b}),a.invalidateQueries({queryKey:["usd-balance"]})):(_("Shop Buy Credits Failed",{step:"grant",error_code:"grant_failed",pack_usd:(c==null?void 0:c.usd)??null}),h(d.error??`Couldn't add your ${u.name} — please try again.`),i("error"))}catch(d){v(d,{flow:"get_credits",step:"grant",order_id:p.orderId}),_("Shop Buy Credits Failed",{step:"grant",error_code:S(d),pack_usd:(c==null?void 0:c.usd)??null}),h(E(d)),i("error")}},[p,c,t,a]);function g(){var o;(o=j.current)==null||o.abort(),i("select"),m(null),k(null),w(null),h(null)}return e.jsxs("div",{className:"getcredits",children:[e.jsxs("header",{className:"getcredits__head",children:[e.jsxs("h1",{className:"getcredits__title",children:["Get ",u.name]}),e.jsxs("p",{className:"muted",children:["Add ",u.name," to your account to shop. Pay with any card."]})]}),n==="select"&&e.jsx(te,{onSelect:B}),n==="paying"&&c&&e.jsx(se,{pack:c,checkout:p,onPaid:U,onCancel:g}),n==="processing"&&e.jsxs("div",{className:"getcredits__status",role:"status","aria-live":"polite",children:[e.jsx(C,{size:40}),e.jsxs("p",{className:"getcredits__status-title",children:["Adding your ",u.name,"…"]}),e.jsx("p",{className:"muted",children:"Payment received. Just a moment while we top up your balance."})]}),n==="success"&&e.jsxs("div",{className:"getcredits__status getcredits__status--ok",role:"status","aria-live":"polite",children:[e.jsx("div",{className:"getcredits__confetti","aria-hidden":!0,children:"🎉"}),e.jsx("p",{className:"getcredits__status-title",children:"You’re all set!"}),e.jsxs("p",{className:"muted",children:[e.jsxs("strong",{children:[e.jsx(N,{className:"ccy-mark"})," ",I]})," ",u.name," added to your account."]}),e.jsxs("div",{className:"getcredits__status-actions",children:[e.jsx("button",{className:"btn",onClick:()=>s("/cart"),children:"Back to cart"}),e.jsxs("button",{className:"btn btn--ghost",onClick:g,children:["Get more ",u.name]})]})]}),n==="error"&&e.jsxs("div",{className:"getcredits__status getcredits__status--err",role:"alert",children:[e.jsx("p",{className:"getcredits__status-title",children:"Something went wrong"}),e.jsx("p",{className:"error",children:A}),e.jsx("div",{className:"getcredits__status-actions",children:e.jsx("button",{className:"btn",onClick:g,children:"Try again"})})]})]})}function te({onSelect:s}){return e.jsx("div",{className:"packs",children:G.map(t=>e.jsxs("button",{type:"button",className:`pack${t.bestValue?" pack--best":""}`,onClick:()=>s(t),"aria-label":`Get ${$(t.credits)} for $${t.usd}`,children:[t.bestValue&&e.jsx("span",{className:"pack__ribbon",children:"Best value"}),e.jsxs("span",{className:"pack__credits",children:[e.jsx(N,{className:"pack__credits-ico"}),t.credits]}),e.jsx("span",{className:"pack__label",children:u.name}),e.jsxs("span",{className:"pack__price",children:["$",t.usd]}),e.jsxs("span",{className:"pack__cta",children:["Get ",u.name]})]},t.id))})}function se({pack:s,checkout:t,onPaid:r,onCancel:a}){return e.jsxs("div",{className:"pay",children:[e.jsxs("div",{className:"pay__summary",children:[e.jsx("button",{className:"link",onClick:a,children:"← Choose a different pack"}),e.jsxs("div",{className:"pay__summary-row",children:[e.jsx("span",{children:"You’ll get"}),e.jsxs("strong",{children:[e.jsx(N,{className:"ccy-mark"})," ",$(s.credits)]})]}),e.jsxs("div",{className:"pay__summary-row pay__summary-row--total",children:[e.jsx("span",{children:"You pay"}),e.jsxs("strong",{children:["$",s.usd]})]})]}),e.jsx("div",{className:"pay__form",children:t?t.mock?e.jsx(re,{onPaid:r,amountUsd:s.usd}):e.jsx(l.Suspense,{fallback:e.jsxs("div",{className:"getcredits__status",role:"status","aria-live":"polite",children:[e.jsx(C,{size:32}),e.jsx("p",{className:"muted",children:"Getting the payment form ready…"})]}),children:e.jsx(ee,{clientSecret:t.clientSecret,onComplete:r})}):e.jsxs("div",{className:"getcredits__status",role:"status","aria-live":"polite",children:[e.jsx(C,{size:32}),e.jsx("p",{className:"muted",children:"Getting the payment form ready…"})]})})]})}function re({onPaid:s,amountUsd:t}){const[r,a]=l.useState("4242 4242 4242 4242"),[n,i]=l.useState(!1);function c(){i(!0),setTimeout(()=>s(),700)}return e.jsxs("div",{className:"card-form","aria-label":"Payment details",children:[e.jsx("p",{className:"muted small card-form__note",children:"Demo mode — no real charge is made."}),e.jsxs("label",{className:"field",children:[e.jsx("span",{children:"Card number"}),e.jsx("input",{value:r,onChange:m=>a(m.target.value),disabled:n,inputMode:"numeric"})]}),e.jsxs("div",{className:"card-form__row",children:[e.jsxs("label",{className:"field",children:[e.jsx("span",{children:"Expiry"}),e.jsx("input",{defaultValue:"12 / 34",disabled:n})]}),e.jsxs("label",{className:"field",children:[e.jsx("span",{children:"CVC"}),e.jsx("input",{defaultValue:"123",disabled:n,inputMode:"numeric"})]})]}),e.jsx("button",{className:"btn btn--purple card-form__pay",onClick:c,disabled:n,children:n?"Processing…":`Pay $${t}`})]})}export{de as GetCredits,de as default};
@@ -1 +0,0 @@
1
- import{b as E,r as d,j as e,L as M}from"./react-E8ng6RF2.js";import{t as Q,w as A,C,g as v,c as K,m as F,e as P,H as R}from"./index-C13awi5n.js";import{i as Y,f as W}from"./import-CDNhzcDz.js";import{s as O}from"./wallet-kind-BTWNHcc9.js";import"./ethers-DbXGgxrh.js";import"./buy-C-Rj-xp5.js";import"./index-kV1vUp3Z.js";import"./mana-rate-RN1C71HA.js";function B({queue:n,session:k,onClose:j,onDone:u}){const N=E(),l=O(k.providerType),[c,f]=d.useState(()=>n.map(()=>"pending")),[y,w]=d.useState("running"),I=d.useRef(!1);d.useEffect(()=>{if(I.current)return;I.current=!0;let a=!1;return(async()=>{for(let i=0;i<n.length;i++){if(a)return;f(m=>m.map((p,h)=>h===i?"active":p));try{await Y(n[i].item,n[i].priceCredits,k),Q("Shop Migrated Listing",{item_id:n[i].item.itemId??n[i].item.oldTradeId??null,contract_address:n[i].item.contractAddress,new_price_credits:n[i].priceCredits,new_price_usd:n[i].priceCredits/10}),a||f(m=>m.map((p,h)=>h===i?"done":p))}catch(m){const p=m,h=p.code===4001||/reject|denied|cancel/i.test(p.message??"");h||A(m,{flow:"import_listing",itemId:n[i].item.itemId??n[i].item.oldTradeId}),a||f(S=>S.map((T,t)=>t===i?h?"skipped":"failed":T))}}a||w("finished")})(),()=>{a=!0}},[]);const o=c.filter(a=>a==="done").length,g=c.findIndex(a=>a==="active"),_=Math.round(c.filter(a=>a!=="pending"&&a!=="active").length/n.length*100);function x(){u(),j()}if(y==="finished"){const a=c.filter(i=>i==="skipped"||i==="failed").length;return e.jsx("div",{className:"modal-backdrop",role:"presentation",children:e.jsxs("div",{className:"modal modal--success",role:"dialog","aria-modal":"true",children:[e.jsx("div",{className:"modal-success__check","aria-hidden":!0,children:"✓"}),e.jsx("h2",{className:"modal__title",children:o>0?"You're in the Shop! 🎉":"Nothing listed"}),e.jsxs("p",{className:"muted",style:{margin:0},children:[o>0?`${o} ${o===1?"item is":"items are"} now for sale with ${C.name}.`:"No items were listed.",a>0?` ${a} skipped — you can try those again anytime.`:""]}),e.jsxs("div",{className:"modal__actions",children:[e.jsx("button",{className:"btn btn--ghost",onClick:x,children:"Done"}),o>0?e.jsx("button",{className:"btn btn--purple",onClick:()=>{u(),j(),N("/assets")},children:"View in Shop"}):null]})]})})}return e.jsx("div",{className:"modal-backdrop",role:"presentation",children:e.jsxs("div",{className:"modal migrate",role:"dialog","aria-modal":"true","aria-live":"polite",children:[e.jsx("h2",{className:"modal__title",children:"Listing your items"}),e.jsxs("p",{className:"muted small",style:{margin:"0 0 4px"},children:[l?"Confirm each item to add it to the Shop.":"Adding your items to the Shop."," ",g>=0?`${g+1} of ${n.length}`:""]}),e.jsx("div",{className:"migrate__progress",children:e.jsx("div",{className:"migrate__bar",style:{width:`${_}%`}})}),e.jsx("ul",{className:"migrate__list",children:n.map((a,i)=>e.jsxs("li",{className:`migrate__row migrate__row--${c[i]}`,children:[e.jsx("span",{className:"migrate__thumb",children:a.item.thumbnail?e.jsx("img",{src:a.item.thumbnail,alt:""}):null}),e.jsx("span",{className:"migrate__name",title:a.item.name,children:a.item.name||"Item"}),e.jsxs("span",{className:"migrate__price",children:[e.jsx(v,{className:"ccy-mark"})," ",a.priceCredits.toLocaleString()]}),e.jsx("span",{className:"migrate__status",children:c[i]==="active"?e.jsxs(e.Fragment,{children:[e.jsx("span",{className:"spinner migrate__spin","aria-hidden":!0})," ",l?"Confirm…":"Adding…"]}):c[i]==="done"?e.jsx("span",{className:"migrate__tick",children:"✓"}):c[i]==="skipped"?e.jsx("span",{className:"migrate__skip",children:"Skipped"}):c[i]==="failed"?e.jsx("span",{className:"migrate__skip",children:"Failed"}):e.jsx("span",{className:"migrate__wait",children:"Waiting"})})]},a.item.oldTradeId))}),e.jsx("p",{className:"muted small migrate__hint",children:l?"A quick confirmation pops up for each item. Keep this open.":"This only takes a moment — keep this open."})]})})}const D=[{key:"creations",title:"Your creations",sub:"Items you made. Put them on sale in the Shop."},{key:"owned",title:"Items you own",sub:"Things you've bought elsewhere — resell them in the Shop."}];function q(){const{session:n,signIn:k,restore:j}=K(),u=F(),N=n==null?void 0:n.address;d.useEffect(()=>{j()},[j]);const{data:l,isLoading:c}=P({queryKey:["importable",N],queryFn:()=>W(N),enabled:!!N}),[f,y]=d.useState({}),[w,I]=d.useState(new Set),[o,g]=d.useState(null),_=d.useMemo(()=>[...(l==null?void 0:l.creations)??[],...(l==null?void 0:l.owned)??[]],[l]);d.useEffect(()=>{_.length&&y(t=>{const r={...t};for(const s of _)r[s.oldTradeId]==null&&(r[s.oldTradeId]=s.suggestedCredits);return r})},[_]);const x=t=>!w.has(t),a=t=>f[t.oldTradeId]??t.suggestedCredits,i=_.filter(t=>x(t.oldTradeId)),m=i.reduce((t,r)=>t+a(r),0);function p(t,r){const s=r.replace(/[^\d]/g,"");y(b=>({...b,[t]:s===""?0:parseInt(s,10)}))}function h(t){I(r=>{const s=new Set(r);return s.has(t)?s.delete(t):s.add(t),s})}function S(t){return t.map(r=>({item:r,priceCredits:Math.max(1,a(r))}))}function T(){u.invalidateQueries({queryKey:["importable"]}),u.invalidateQueries({queryKey:["listings"]}),u.invalidateQueries({queryKey:["my-assets"]}),u.invalidateQueries({queryKey:["collection-sale-state"]}),R.success("Your Shop is updated.")}return n?!c&&_.length===0?e.jsxs("div",{className:"imp-empty",children:[e.jsx("span",{className:"imp-empty__ico","aria-hidden":!0,children:"✨"}),e.jsx("h1",{className:"imp-empty__title",children:"You're all caught up"}),e.jsx("p",{className:"muted",children:"Everything you sell is already in the Shop — nothing to import."}),e.jsx(M,{className:"btn btn--purple",to:"/my-assets",children:"Go to My Assets"})]}):e.jsxs("div",{className:"imp",children:[e.jsxs("header",{className:"imp__head",children:[e.jsx("span",{className:"imp__eyebrow",children:"Import to the Shop"}),e.jsxs("h1",{className:"imp__title",children:["Bring your listings ",e.jsx("span",{className:"imp__grad",children:"into the Shop"})]}),e.jsxs("p",{className:"imp__lede",children:["These items are already for sale elsewhere. We suggested a price in ",C.name," for each — matched to today's rate and rounded up. Adjust anything, then list them."]})]}),e.jsxs("div",{className:"imp__ratebar",children:[e.jsx(v,{className:"ccy-mark imp__diamond"})," 1 ",C.nameSingular," = $0.10 · prices rounded up"]}),c?e.jsx("div",{className:"imp__list",children:Array.from({length:4}).map((t,r)=>e.jsx("div",{className:"imp-row imp-row--skeleton"},r))}):D.map(t=>{const r=(l==null?void 0:l[t.key])??[];return r.length===0?null:e.jsxs("section",{className:"imp__section",children:[e.jsxs("div",{className:"imp__section-head",children:[e.jsx("h2",{className:"imp__section-title",children:t.title}),e.jsx("span",{className:"imp__section-sub",children:t.sub})]}),e.jsx("div",{className:"imp__list",children:r.map(s=>{const b=a(s),L=b!==s.suggestedCredits;return e.jsxs("article",{className:`imp-row${x(s.oldTradeId)?"":" is-off"}`,children:[e.jsx("input",{type:"checkbox",className:"imp-check",checked:x(s.oldTradeId),onChange:()=>h(s.oldTradeId),"aria-label":`Include ${s.name}`}),e.jsx("div",{className:"imp-thumb",children:s.thumbnail?e.jsx("img",{src:s.thumbnail,alt:""}):null}),e.jsxs("div",{className:"imp-meta",children:[e.jsx("div",{className:"imp-name",title:s.name,children:s.name||"Item"}),e.jsx("span",{className:"imp-chip",children:s.rarity})]}),e.jsxs("div",{className:"imp-price",children:[e.jsxs("div",{className:"imp-price__field",children:[e.jsx(v,{className:"ccy-mark imp-price__diamond"}),e.jsx("input",{className:"imp-price__input",inputMode:"numeric",value:b.toLocaleString(),onChange:$=>p(s.oldTradeId,$.target.value),"aria-label":`Price in ${C.name} for ${s.name}`})]}),e.jsxs("div",{className:"imp-price__sub",children:[e.jsxs("span",{children:["$",(b*.1).toFixed(2)]}),L?e.jsxs("button",{className:"imp-price__reset",onClick:()=>y($=>({...$,[s.oldTradeId]:s.suggestedCredits})),children:["Reset to ",e.jsx(v,{className:"ccy-mark"}),s.suggestedCredits.toLocaleString()]}):null]})]}),e.jsx("div",{className:"imp-action",children:e.jsx("button",{className:"btn btn--sm imp-row__list",disabled:!x(s.oldTradeId),onClick:()=>g(S([s])),children:"List"})})]},s.oldTradeId)})})]},t.key)}),e.jsx("div",{className:"imp-dock",children:e.jsxs("div",{className:"imp-dock__inner",children:[e.jsxs("div",{className:"imp-dock__summary",children:[e.jsxs("div",{className:"imp-dock__total",children:[e.jsx(v,{className:"ccy-mark imp__diamond"})," ",m.toLocaleString()]}),e.jsxs("div",{className:"imp-dock__sub",children:[i.length," item",i.length===1?"":"s"," selected · $",(m*.1).toFixed(2)]})]}),e.jsx("span",{className:"imp-dock__spacer"}),e.jsxs("button",{className:"btn btn--purple imp-dock__cta",disabled:i.length===0,onClick:()=>g(S(i)),children:["List all (",i.length,")"]})]})}),o&&n?e.jsx(B,{queue:o,session:n,onClose:()=>g(null),onDone:T}):null]}):e.jsxs("div",{className:"imp-empty",children:[e.jsx("span",{className:"imp-empty__ico","aria-hidden":!0,children:"📦"}),e.jsx("h1",{className:"imp-empty__title",children:"Import your listings"}),e.jsx("p",{className:"muted",children:"Sign in to bring the items you already sell into the Shop."}),e.jsx("button",{className:"btn btn--purple",onClick:()=>k(),children:"Sign in"})]})}export{q as ImportListings};
@@ -1 +0,0 @@
1
- import{j as e,r as u,a as me,d as he,b as _e,L as fe}from"./react-E8ng6RF2.js";import{c as H,S as pe,W as xe,B as T,j as Z,k as L,g as S,H as je,u as Y,l as ve,e as q,t as M,T as Ne,U as be,V as ye,X as Ie,a as ge,Y as z,Z as Ce,i as we,q as Ae,z as ke,r as Ee,s as Se,v as D,w as Te,y as Le,n as $e,x as Fe,C as Pe,b as Re,$ as Be,o as qe}from"./index-C13awi5n.js";import{h as K}from"./buy-C-Rj-xp5.js";import{g as Me,a as Ue,w as Ve,G as We}from"./buy-gasless-BmoACMRr.js";import"./ethers-DbXGgxrh.js";import"./index-kV1vUp3Z.js";function Ge({item:i}){const c=H(v=>{var N;return(N=v.session)==null?void 0:N.address}),{data:r}=pe(c),m=c&&r?c:"default",f=i.category==="emote";return e.jsx(xe,{id:"shop-item-preview",contractAddress:i.contractAddress,tokenId:i.tokenId??void 0,itemId:i.tokenId?void 0:i.itemId??void 0,profile:m,type:f?void 0:T.PreviewType.AVATAR,emote:f?void 0:T.PreviewEmote.FASHION,disableBackground:!0,wheelZoom:f?1.5:void 0,wheelStart:f?100:void 0,dev:Z.chainId===80002,disableFadeEffect:!0},i.id)}function Oe(i){return i==="male"?"♂":i==="female"?"♀":i==="unisex"?"⚥":""}function Ye({title:i,items:c,activeId:r,onSelect:m,onViewAll:f}){const v=u.useRef(null),N=L(a=>a.add),l=L(a=>a.items.map(d=>d.id));if(c.length===0)return null;function g(a){N(a,"carousel"),je.success(`“${a.name}” added to your cart.`)}function s(a){const d=v.current;d&&d.scrollBy({left:a*Math.round(d.clientWidth*.8),behavior:"smooth"})}return e.jsxs("section",{className:"collection-carousel",children:[e.jsxs("div",{className:"collection-carousel__head",children:[e.jsx("h2",{className:"collection-carousel__title",children:i}),e.jsxs("div",{className:"collection-carousel__head-right",children:[f?e.jsx("button",{className:"collection-carousel__viewall",onClick:f,children:"View all"}):null,e.jsxs("div",{className:"collection-carousel__arrows",children:[e.jsx("button",{className:"collection-carousel__arrow",onClick:()=>s(-1),"aria-label":"Scroll left",children:"‹"}),e.jsx("button",{className:"collection-carousel__arrow",onClick:()=>s(1),"aria-label":"Scroll right",children:"›"})]})]})]}),e.jsx("div",{className:"collection-carousel__track",ref:v,children:c.map(a=>{const d=Oe(a.gender),b=a.id===r,C=a.priceCredits>0,h=l.includes(a.id);return e.jsxs("article",{className:`collection-carousel__card${b?" is-active":""}`,onClick:()=>m(a),role:"button",tabIndex:0,"aria-current":b||void 0,onKeyDown:x=>{(x.key==="Enter"||x.key===" ")&&(x.preventDefault(),m(a))},children:[e.jsxs("div",{className:"collection-carousel__media",children:[a.thumbnail?e.jsx("img",{className:"collection-carousel__img",src:a.thumbnail,alt:a.name,loading:"lazy"}):null,C?e.jsx("button",{className:"collection-carousel__add",disabled:h,"aria-label":h?"In cart":`Add ${a.name} to cart`,title:h?"In cart":"Add to cart",onClick:x=>{x.stopPropagation(),h||g(a)},children:e.jsx("span",{className:`ico ${h?"ico-cart-solid":"ico-cart"}`,"aria-hidden":!0})}):null]}),e.jsxs("div",{className:"collection-carousel__body",children:[e.jsx("div",{className:"collection-carousel__name",title:a.name,children:a.name}),e.jsxs("div",{className:"collection-carousel__meta",children:[C?e.jsxs("span",{className:"collection-carousel__price",children:[e.jsx(S,{className:"collection-carousel__diamond"}),a.priceCredits]}):e.jsx("span",{className:"collection-carousel__price collection-carousel__na",children:"Not listed"}),e.jsxs("span",{className:"collection-carousel__chips",children:[e.jsx("span",{className:"chip chip--rarity",children:a.rarity}),d?e.jsx("span",{className:"chip chip--icon",children:d}):null]})]})]})]},a.id)})})]})}function ze(i){return Object.values(T.Rarity).includes(i)}function De(i){return i==="male"?"Male":i==="female"?"Female":i==="unisex"?"Unisex":null}function Ke(i){const c=i,r=(c.message??"").toLowerCase();return c.code===4001||r.includes("reject")||r.includes("denied")||r.includes("cancel")?"You cancelled the request.":r.includes("insufficient")?`You don't have enough ${Pe.name} — get more first.`:r.includes("no active listing")||r.includes("not for sale")?"This item is not for sale right now.":"Couldn't complete checkout — please try again."}function ss(){const{contractAddress:i,tokenId:c}=me(),{state:r}=he(),m=_e(),f=L(t=>t.add),v=L(t=>t.items),N=Y(t=>t.toggle),{session:l}=H(),{data:g}=ve(l),[s,a]=u.useState(()=>r!=null&&r.item?{...r.item,tradeId:r.tradeId??r.item.tradeId}:{id:`${i}-${c}`,name:"",creator:"",contractAddress:i??"",itemId:null,category:"wearable",rarity:"common",network:"MATIC",chainId:Z.chainId,thumbnail:"",priceCredits:0,gender:null,tokenId:c??void 0,tradeId:r==null?void 0:r.tradeId}),[d,b]=u.useState(!1),[C,h]=u.useState(null),[x,w]=u.useState(null),{data:y=[],isFetched:Q}=q({queryKey:["collection-items",s.contractAddress],enabled:!!s.contractAddress,queryFn:()=>Re(s.contractAddress,{first:20}).then(t=>t.items)}),{data:$,isLoading:X}=q({queryKey:["shop-item",s.contractAddress,c],enabled:!(r!=null&&r.item)&&!!s.contractAddress&&!!c,queryFn:()=>Be(s.contractAddress,c)});u.useEffect(()=>{$&&a(t=>t.tradeId?t:{...$})},[$]),u.useEffect(()=>{if(s.name||y.length===0)return;const t=c&&y.find(n=>n.tokenId===c||n.itemId===c)||y.find(n=>n.contractAddress===s.contractAddress);t&&a(n=>({...t,tradeId:n.tradeId??t.tradeId}))},[y]);const J=u.useMemo(()=>{const t=new Set,n=[];for(const o of y){if(o.id===s.id||s.itemId&&o.itemId===s.itemId||s.tokenId&&o.tokenId===s.tokenId)continue;const E=`${o.contractAddress}-${o.itemId??o.tokenId??o.id}`;t.has(E)||(t.add(E),n.push(o))}return n},[y,s.id,s.itemId,s.tokenId]),{data:ee,isLoading:A}=q({queryKey:["detail-trade",s.id,s.tradeId,s.contractAddress,s.itemId],enabled:!!s.contractAddress,queryFn:async()=>{if(s.tradeId)return s.tradeId;if(s.itemId){const t=await qe(s.contractAddress,s.itemId);return(t==null?void 0:t.id)??null}return null}}),j=s.tradeId??ee??void 0,p=!!j,k=u.useMemo(()=>({...s,tradeId:j,id:j??s.id}),[s,j]),F=v.some(t=>t.id===k.id),P=Y(t=>!!t.items[s.id]);u.useEffect(()=>{h(null),w(null)},[s.id]);const U=u.useRef(null);u.useEffect(()=>{!s.name||A||U.current===s.id||(U.current=s.id,M("Shop Viewed Item",{...Ne(s),for_sale:p}),be(s))},[s.id,s.name,A,p]);function se(t){a(t);const n=t.tokenId??t.itemId;t.contractAddress&&n&&m(`/item/${t.contractAddress}/${n}`,{replace:!0,state:{item:t}}),typeof window<"u"&&window.scrollTo({top:0,behavior:"smooth"})}function te(){!p||F||W||f(k,"item_detail")}async function ae(){var E;if(!p||!j)return;if(!l){w("Sign in to check out.");return}w(null),b(!0);let t,n="authorize",o=!1;try{h(`Buying ${s.name||"item"}…`);const _=await we(j);if(!_)throw new Error("not for sale");if(Ae(_,l.address)){w("You can't buy your own listing."),h(null),b(!1);return}const R=(E=_.received)==null?void 0:E[0],oe=ke(R==null?void 0:R.amount),{credit:G,maxCreditedValue:ue}=await Ee(l.identity,oe,j);t=G.id,n="submit";const B={trade:_,buyer:l.address,signer:l.signer,credits:[G],maxCreditedValue:ue};let I;if(Me())try{I=await Ue(B),await Ve(I),o=!0}catch(O){if(!(O instanceof We))throw O;I=await K(B)}else I=await K(B);t=void 0,M("Shop Completed Purchase",{...Se([k]),payment_type:"credits",no_crypto_step:o,transaction_hash:I??null}),m("/success",{state:{items:[k],txHash:I}})}catch(_){D(_)||Te(_,{flow:"buy",step:n,gasless:o}),t&&Le(l.identity,[t]).catch(()=>{}),M(D(_)?"Shop Purchase Cancelled":"Shop Purchase Failed",{step:n,error_code:Fe(_),value_usd:$e(k.priceCredits)}),w(Ke(_)),h(null)}finally{b(!1)}}const ie=ze(s.rarity)?s.rarity:T.Rarity.COMMON,[re]=T.Rarity.getGradient(ie),V=De(s.gender),ce=p&&ye({priceCredits:s.priceCredits,compareAtCredits:s.compareAtCredits,saleEndsAt:s.saleEndsAt}),ne="More from this collection",W=Ie(s,l==null?void 0:l.address),le=p?F?"In cart":A?"Checking…":"Add to cart":"Not for sale",de=X||!!s.contractAddress&&!Q;return!s.name&&!de?e.jsxs("div",{className:"item-detail item-detail--notfound",children:[e.jsx("span",{className:"ico ico-cart item-detail__notfound-ico","aria-hidden":!0}),e.jsx("h1",{className:"item-detail__notfound-title",children:"This item isn’t available"}),e.jsx("p",{className:"muted",children:"It may have been delisted or moved. Browse Collectibles for something else."}),e.jsx("button",{className:"btn btn--purple",onClick:()=>m("/assets"),children:"Browse Collectibles"})]}):e.jsxs("div",{className:"item-detail",children:[e.jsxs("nav",{className:"item-detail__crumbs","aria-label":"Breadcrumb",children:[e.jsx("button",{className:"item-detail__crumb-link",onClick:()=>m("/assets"),children:"Collectibles"}),e.jsx("span",{className:"item-detail__crumb-sep",children:"/"}),e.jsx("span",{className:"item-detail__crumb-current",children:s.name||"Item"})]}),e.jsxs("div",{className:"item-detail__main",children:[e.jsx("div",{className:"item-detail__preview",style:{background:`radial-gradient(circle at 50% 38%, ${re}33 0%, var(--media) 68%)`},children:e.jsx(Ge,{item:s})}),e.jsxs("div",{className:"item-detail__info",children:[e.jsxs("div",{className:"item-detail__info-head",children:[e.jsx("h1",{className:"item-detail__title",children:s.name||"Loading…"}),e.jsx("button",{className:`item-detail__fav${P?" is-on":""}`,onClick:()=>N(s),"aria-pressed":P,"aria-label":P?"Remove from favorites":"Add to favorites",children:e.jsx("span",{className:"ico ico-heart","aria-hidden":!0})})]}),s.creator?e.jsx(ge,{address:s.creator,className:"item-detail__creator",linkToProfile:!0}):null,e.jsxs("div",{className:"item-detail__chips",children:[e.jsx("span",{className:"chip chip--rarity",children:s.rarity}),e.jsx("span",{className:"chip",children:s.category==="emote"?"Emote":"Wearable"}),V?e.jsx("span",{className:"chip",children:V}):null]}),e.jsxs("div",{className:"item-detail__card",children:[e.jsxs("div",{className:"item-detail__price-block",children:[e.jsx("div",{className:"item-detail__price-label",children:"Price"}),p?ce?e.jsxs("div",{className:"item-detail__price item-detail__price--sale",children:[e.jsxs("span",{className:"item-detail__price",children:[e.jsx(S,{className:"item-detail__diamond"}),e.jsx("span",{className:"item-detail__price-value",children:s.priceCredits})]}),e.jsxs("span",{className:"item-detail__price-was",children:[e.jsx(S,{className:"item-detail__diamond item-detail__diamond--was"}),s.compareAtCredits]}),z(s.compareAtCredits,s.priceCredits)>0?e.jsxs("span",{className:"item-detail__sale-badge",children:["SALE -",z(s.compareAtCredits,s.priceCredits),"%"]}):null,e.jsx(Ce,{endsAt:s.saleEndsAt,className:"item-detail__countdown"})]}):e.jsxs("div",{className:"item-detail__price",children:[e.jsx(S,{className:"item-detail__diamond"}),e.jsx("span",{className:"item-detail__price-value",children:s.priceCredits})]}):e.jsx("div",{className:"item-detail__price item-detail__price--none",children:"Not for sale"}),l?e.jsxs("div",{className:"item-detail__balance muted",children:["Your balance: ",e.jsx(S,{className:"ccy-mark"})," ",(g==null?void 0:g.credits)??0]}):null]}),e.jsx("div",{className:"item-detail__ctas",children:W?e.jsxs("p",{className:"item-detail__own-note muted",children:["This is your item — manage it in ",e.jsx(fe,{to:"/my-assets",children:"My Assets"}),"."]}):e.jsxs(e.Fragment,{children:[p?e.jsx("button",{className:"btn btn--purple item-detail__cta",onClick:ae,disabled:d||A,children:d?"Buying…":"Buy now"}):null,e.jsxs("button",{className:"item-detail__addcart",onClick:te,disabled:!p||F||A||d,children:[e.jsx("span",{className:"ico ico-cart-solid item-detail__addcart-ico","aria-hidden":!0}),le]})]})}),C?e.jsx("p",{className:"muted item-detail__status",children:C}):null,x?e.jsx("p",{className:"error item-detail__status",children:x}):null]})]})]}),e.jsx(Ye,{title:ne,items:J,activeId:s.id,onSelect:se,onViewAll:s.contractAddress?()=>m(`/collection/${s.contractAddress}`):void 0})]})}export{ss as ItemDetail,ss as default};
@@ -1 +0,0 @@
1
- import{b as te,r as o,j as e,u as ie}from"./react-E8ng6RF2.js";import{e as ne,j as G,c as le,l as ce,m as V,i as oe,q as de,r as ue,y as I,t as M,x as H,v as Y,g as T,J as K,C as W,A as me,K as he}from"./index-C13awi5n.js";import{r as pe,a as B,m as ye}from"./mana-rate-RN1C71HA.js";import{S as O}from"./SkeletonCards-yV2mi4oc.js";import{L as fe}from"./LoadMore-DB6TwvRe.js";import{h as Q}from"./buy-C-Rj-xp5.js";import{g as _e,a as be,w as ke,G as xe}from"./buy-gasless-BmoACMRr.js";import{u as ge}from"./useInfiniteGrid-et3T-1IY.js";import"./ethers-DbXGgxrh.js";import"./index-kV1vUp3Z.js";function ve(){return ne({queryKey:["mana-rate",G.chainId],queryFn:()=>pe(G.chainId),staleTime:6e4,refetchInterval:6e4,retry:1})}function z(r){const u=r,c=(u.message??"").toLowerCase();return u.code===4001||c.includes("reject")||c.includes("denied")||c.includes("cancel")?"You cancelled the request.":c.includes("insufficient")?`Not enough ${W.name} — get more first.`:c.includes("not found")||c.includes("no active listing")||c.includes("404")?"This item was just sold or removed. Refreshing the market…":c.includes("your own listing")?"You can't buy your own listing.":"Couldn't complete checkout — please try again."}function je(r){return{id:r.tradeId,tradeId:r.tradeId,name:r.name,creator:r.creator,contractAddress:r.contractAddress,itemId:r.itemId,category:r.category,wearableCategory:r.wearableCategory??void 0,rarity:r.rarity,network:r.network,chainId:r.chainId,thumbnail:r.thumbnail,priceCredits:0,gender:null}}function Ce({listing:r,rate:u,onClose:c,onSold:k}){const{session:i}=le(),{data:n}=ce(i),x=V(),m=te(),[N,_]=o.useState("confirm"),[w,h]=o.useState("Locking today’s price…"),[f,g]=o.useState(null),[s,$]=o.useState(null),p=o.useRef(null),A=Math.ceil(B(r.manaWei,u)/10);o.useEffect(()=>{let b=!1;if(!i){_("error"),g("Sign in to check out.");return}return(async()=>{try{const t=await oe(r.tradeId);if(!t)throw new Error("not found");if(de(t,i.address))throw new Error("You can't buy your own listing.");const l=B(r.manaWei,u);if(!Number.isFinite(l)||l<=0)throw new Error("price unavailable");const{credit:d,maxCreditedValue:R,usdCents:P}=await ue(i.identity,l,r.tradeId);if(b){I(i.identity,[d.id]).catch(()=>{});return}p.current=d.id,$({trade:t,credit:d,maxCreditedValue:R,usdCents:P,credits:Math.ceil(P/10)}),h("")}catch(t){if(b)return;console.error("[market] authorize failed",t),M(Y(t)?"Shop Purchase Cancelled":"Shop Purchase Failed",{step:"authorize",error_code:H(t),value_usd:Math.round(B(r.manaWei,u))/100}),_("error"),g(z(t))}})(),()=>{b=!0,p.current&&i&&(I(i.identity,[p.current]).catch(()=>{}),p.current=null)}},[]);const v=!!s&&((n==null?void 0:n.credits)??0)<s.credits;async function L(){if(!i||!s)return;if(v){I(i.identity,[s.credit.id]).catch(()=>{}),p.current=null,m("/credits");return}_("working"),g(null);let b=!1;try{h("Confirming your purchase…");const t={trade:s.trade,buyer:i.address,signer:i.signer,credits:[s.credit],maxCreditedValue:s.maxCreditedValue};let l;if(_e())try{l=await be(t),await ke(l),b=!0}catch(d){if(!(d instanceof xe))throw d;l=await Q(t)}else l=await Q(t);p.current=null,M("Shop Completed Purchase",{items:[{item_id:r.itemId??null,contract_address:r.contractAddress,token_id:null,price_usd:s.usdCents/100}],value_credits:s.credits,value_usd:s.usdCents/100,purchase_type:"item",is_primary:!0,payment_type:"credits",no_crypto_step:b,transaction_hash:l??null}),x.invalidateQueries({queryKey:["usd-balance"]}),m("/success",{state:{items:[je(r)],txHash:l}})}catch(t){console.error("[market] buy now failed",t),I(i.identity,[s.credit.id]).catch(()=>{}),p.current=null,M(Y(t)?"Shop Purchase Cancelled":"Shop Purchase Failed",{step:"submit",error_code:H(t),value_usd:s.usdCents/100}),x.invalidateQueries({queryKey:["usd-balance"]});const l=z(t);g(l),_("error"),/sold or removed/i.test(l)&&k()}}function C(){i&&s&&I(i.identity,[s.credit.id]).catch(()=>{}),p.current=null,c()}const j=N==="working";return e.jsxs("div",{className:"mkt-modal",role:"dialog","aria-modal":"true","aria-label":`Buy ${r.name}`,children:[e.jsx("div",{className:"mkt-modal__scrim",onClick:j?void 0:C,"aria-hidden":!0}),e.jsxs("div",{className:"mkt-modal__card",children:[e.jsxs("div",{className:"mkt-modal__head",children:[e.jsx("div",{className:"mkt-modal__thumb",children:r.thumbnail?e.jsx("img",{src:r.thumbnail,alt:""}):null}),e.jsxs("div",{children:[e.jsx("div",{className:"mkt-modal__name",title:r.name,children:r.name||"Item"}),e.jsx("span",{className:"chip chip--rarity",children:r.rarity})]})]}),e.jsx("div",{className:"mkt-modal__price",children:s?e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"mkt-modal__price-label",children:"Final price"}),e.jsxs("div",{className:"mkt-modal__price-value",children:[e.jsx(T,{className:"mkt-modal__diamond"}),K(s.credits)]}),e.jsxs("div",{className:"mkt-modal__price-sub muted",children:["Locked for this purchase · $",(s.usdCents/100).toFixed(2)]})]}):e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"mkt-modal__price-label",children:"Today’s price"}),e.jsxs("div",{className:"mkt-modal__price-value mkt-modal__price-value--approx",children:[e.jsx("span",{className:"mkt-modal__approx","aria-hidden":!0,children:"≈"}),e.jsx(T,{className:"mkt-modal__diamond"}),K(A)]}),e.jsx("div",{className:"mkt-modal__price-sub muted",children:w||"Locking today’s price…"})]})}),i?e.jsxs("div",{className:"mkt-modal__balance muted",children:["Your balance: ",e.jsx(T,{className:"ccy-mark"})," ",(n==null?void 0:n.credits)??0]}):null,v?e.jsxs("p",{className:"muted mkt-modal__note",children:["You’ll need a few more ",W.name," to buy this."]}):null,w&&N==="working"?e.jsx("p",{className:"muted mkt-modal__note",children:w}):null,f?e.jsx("p",{className:"error mkt-modal__note",children:f}):null,e.jsxs("div",{className:"mkt-modal__actions",children:[e.jsx("button",{className:"btn btn--ghost",onClick:C,disabled:j,children:"Cancel"}),e.jsx("button",{className:"btn btn--purple",onClick:L,disabled:j||!s,children:j?"Buying…":v?`Get ${W.name}`:"Confirm purchase"})]})]})]})}const Ne=48,U=[{key:"wearable",label:"Wearables",sub:["Head","Upper Body","Handwear","Lower Body","Feet","Accessories","Skins"]},{key:"emote",label:"Emotes",sub:[]}],we={Head:["head","hat","hair","facial_hair","eyes","eyebrows","mouth","mask","helmet","tiara","top_head"],"Upper Body":["upper_body"],Handwear:["hands_wear"],"Lower Body":["lower_body"],Feet:["feet"],Accessories:["earring","eyewear"],Skins:["skin"]},Se=["common","uncommon","rare","epic","legendary","mythic","unique","exotic"],E=[{key:"newest",label:"Newest",server:"newest"},{key:"price-asc",label:"Price: Low to High",server:"cheapest"},{key:"price-desc",label:"Price: High to Low",server:"most_expensive"},{key:"name",label:"Name (A–Z)",server:"name"}];function Ie(r){return{id:r.tradeId,tradeId:r.tradeId,name:r.name,creator:r.creator,contractAddress:r.contractAddress,itemId:r.itemId,category:r.category,wearableCategory:r.wearableCategory??void 0,rarity:r.rarity,network:r.network,chainId:r.chainId,thumbnail:r.thumbnail,priceCredits:0,gender:null}}function Be(){const[r]=ie(),u=(r.get("q")??"").trim().toLowerCase(),c=V(),[k,i]=o.useState("wearable"),[n,x]=o.useState(null),[m,N]=o.useState([]),[_,w]=o.useState("newest"),[h,f]=o.useState(null),[g,s]=o.useState(null),$=n?we[n]:void 0,p=(E.find(a=>a.key===_)??E[0]).server,A={category:k,rarities:m.length?m:void 0,wearableCategories:$,search:u||void 0,sortBy:p},{items:v,total:L,isLoading:C,error:j,hasNextPage:b,isFetchingNextPage:t,fetchNextPage:l}=ge(["legacy-listings",A],a=>he({...A,first:Ne,skip:a})),{data:d,isError:R}=ve(),P=a=>d?ye(a.manaWei,d):null;function Z(a){i(a),x(null)}function J(a){N(y=>y.includes(a)?y.filter(q=>q!==a):[...y,a])}function D(){i("wearable"),x(null),N([]),f(null)}function F(a){f(y=>y===a?null:a)}function X(a){const y=v.find(q=>q.tradeId===a.tradeId);y&&s(y)}function ee(){c.invalidateQueries({queryKey:["legacy-listings"]})}const ae=E.find(a=>a.key===_)??E[0],S=U.find(a=>a.key===k)??U[0],re=n?`${S.label} · ${n}`:S.label,se=k!=="wearable"||!!n||m.length>0;return e.jsxs("div",{className:"browse",children:[e.jsxs("div",{className:"market-banner",children:[e.jsx("span",{className:"market-banner__ico","aria-hidden":!0,children:"✨"}),e.jsx("span",{children:"Prices here follow the live market and may shift slightly at checkout."})]}),R?e.jsx("p",{className:"market-banner market-banner--warn",children:"The market price is temporarily unavailable — buying is paused for a moment. Please try again shortly."}):null,h?e.jsx("div",{className:"filterbar__scrim",onClick:()=>f(null),"aria-hidden":!0}):null,e.jsxs("div",{className:"filterbar",children:[e.jsxs("div",{className:"filterbar__filters",children:[e.jsxs("div",{className:"filterbar__item",children:[e.jsxs("button",{className:`filterbar__trigger${h==="section"?" is-open":""}${n||k!=="wearable"?" is-active":""}`,onClick:()=>F("section"),children:[re," ",e.jsx("span",{className:"filterbar__chev","aria-hidden":!0,children:"▾"})]}),h==="section"?e.jsxs("div",{className:"filter-pop filter-pop--section",children:[e.jsx("ul",{className:"filter-pop__cats",children:U.map(a=>e.jsx("li",{children:e.jsx("button",{className:`filter-pop__cat${k===a.key?" is-active":""}`,onClick:()=>Z(a.key),children:a.label})},a.key))}),S.sub.length?e.jsxs("ul",{className:"filter-pop__subs",children:[e.jsx("li",{children:e.jsxs("button",{className:`filter-pop__sub${n?"":" is-active"}`,onClick:()=>{x(null),f(null)},children:["All ",S.label]})}),S.sub.map(a=>e.jsx("li",{children:e.jsx("button",{className:`filter-pop__sub${n===a?" is-active":""}`,onClick:()=>{x(y=>y===a?null:a),f(null)},children:a})},a))]}):null]}):null]}),e.jsxs("div",{className:"filterbar__item",children:[e.jsxs("button",{className:`filterbar__trigger${h==="rarity"?" is-open":""}${m.length?" is-active":""}`,onClick:()=>F("rarity"),children:["Rarity ",m.length?e.jsx("span",{className:"filterbar__badge",children:m.length}):null," ",e.jsx("span",{className:"filterbar__chev","aria-hidden":!0,children:"▾"})]}),h==="rarity"?e.jsx("div",{className:"filter-pop filter-pop--rarity",children:Se.map(a=>e.jsxs("label",{className:"filter-pop__check",children:[e.jsx("input",{type:"checkbox",checked:m.includes(a),onChange:()=>J(a)}),e.jsx("span",{children:a})]},a))}):null]}),se?e.jsx("button",{className:"filterbar__clear",onClick:D,children:"Clear all"}):null]}),e.jsxs("div",{className:"filterbar__right",children:[e.jsxs("span",{className:"filterbar__count",children:[C?"…":`${L.toLocaleString()} item${L===1?"":"s"}`,u?` for “${u}”`:""]}),e.jsxs("div",{className:"filterbar__item",children:[e.jsxs("button",{className:`filterbar__sort${h==="sort"?" is-open":""}`,onClick:()=>F("sort"),children:["Sort by: ",ae.label," ",e.jsx("span",{className:"filterbar__chev","aria-hidden":!0,children:"▾"})]}),h==="sort"?e.jsx("div",{className:"filter-pop filter-pop--sort",children:E.map(a=>e.jsx("button",{className:`filter-pop__sort${a.key===_?" is-active":""}`,onClick:()=>{w(a.key),f(null)},children:a.label},a.key))}):null]})]})]}),j?e.jsx("p",{className:"error",children:j.message}):null,e.jsx("div",{className:"grid",children:C?e.jsx(O,{count:15}):e.jsxs(e.Fragment,{children:[v.map(a=>e.jsx(me,{item:Ie(a),mode:"market",marketPriceCredits:P(a),onBuyNow:X},a.tradeId)),t?e.jsx(O,{count:6}):null]})}),e.jsx(fe,{hasNextPage:b,isFetching:t,onLoadMore:()=>l()}),!C&&v.length===0?e.jsx("p",{className:"muted",children:"No items match your filters."}):null,g&&d?e.jsx(Ce,{listing:g,rate:d,onClose:()=>s(null),onSold:()=>{s(null),ee()}}):null]})}export{Be as Market,Be as default};
@@ -1 +0,0 @@
1
- import{b as B,r as m,j as s,L as le}from"./react-E8ng6RF2.js";import{B as ee,j as G,P as ce,m as W,g as T,C,p as se,t as P,H,w as V,x as ne,c as oe,e as U,a0 as de,i as me,a1 as ue}from"./index-C13awi5n.js";import{f as he}from"./import-CDNhzcDz.js";import{a as pe,b as ge,i as be,e as ye,c as xe,d as fe}from"./buy-C-Rj-xp5.js";import{s as je}from"./wallet-kind-BTWNHcc9.js";import{L as _e}from"./LoadMore-DB6TwvRe.js";import{u as Ne}from"./useInfiniteGrid-et3T-1IY.js";import"./ethers-DbXGgxrh.js";import"./mana-rate-RN1C71HA.js";import"./index-kV1vUp3Z.js";const D=()=>`${G.builderServerUrl}/v1`;function ae(e){return Array.isArray(e)?e:"results"in e&&Array.isArray(e.results)?e.results:"data"in e&&Array.isArray(e.data)?e.data:[]}async function te(e,i){const a=await ce(e,{method:"GET",identity:i,metadata:{}});if(!a.ok)throw new Error(`builder-server ${a.status}: ${await a.text()}`);const o=await a.json();return o.data??o}function Ie(e,i){const a=i-e;return a>0?a:0}function ke(e){var i,a,o,l,c;return((a=(i=e.data)==null?void 0:i.wearable)==null?void 0:a.category)??((l=(o=e.data)==null?void 0:o.emote)==null?void 0:l.category)??((c=e.data)==null?void 0:c.category)??e.type??"wearable"}function Z(e){return`${D()}/storage/contents/${e}`}function $(e,i){if(!e)return"";if(/^https?:\/\//.test(e))return e;const a=i==null?void 0:i[e];return a?Z(a):/^(ba|Qm)/.test(e)?Z(e):""}async function ve(e,i){try{const a=await fetch(`${D()}/items/${e}/${i}/contents`);if(!a.ok)return{};const o=await a.json();return o.data??o}catch{return{}}}async function we(e,i,a){const o=$(e.thumbnail,e.contents)||$("thumbnail.png",e.contents);if(o)return o;if(i&&a){const l=await ve(i,a);return $(e.thumbnail,l)||$("thumbnail.png",l)||$("image.png",l)}return""}async function Ce(e,i){const a=`${D()}/${e.toLowerCase()}/collections?is_published=true`,o=await te(a,i);return ae(o).filter(l=>l.is_published&&!!l.contract_address).map(l=>({id:l.id,name:l.name,contractAddress:l.contract_address.toLowerCase(),isPublished:l.is_published,isApproved:l.is_approved,minters:(l.minters??[]).map(c=>c.toLowerCase())}))}async function Se(e,i){const a=`${D()}/collections/${e.id}/items`,o=await te(a,i);return(await Promise.all(ae(o).map(async c=>{const k=c.rarity??"common",_=Number(c.total_supply??0)||0;let u=0;try{u=ee.Rarity.getMaxSupply(k)}catch{u=0}const N=(c.contract_address??e.contractAddress).toLowerCase(),p=c.blockchain_item_id??"";return{id:c.id,collectionId:e.id,collectionName:e.name,contractAddress:N,blockchainItemId:p,name:c.name,category:ke(c),rarity:k,thumbnail:await we(c,N,p),type:c.type??"wearable",isPublished:c.is_published??e.isPublished,isApproved:c.is_approved??e.isApproved,totalSupply:_,maxSupply:u,remainingSupply:Ie(_,u),minters:e.minters}}))).filter(Ae)}function Ae(e){return e.isPublished&&e.isApproved&&e.blockchainItemId!==""&&e.blockchainItemId!=null&&e.remainingSupply>0}async function Pe(e,i){const a=await Ce(e,i);return(await Promise.all(a.map(async l=>{try{return await Se(l,i)}catch{return[]}}))).flat()}const $e=1e3*60*60*24*182;function Le(e){const i=e,a=(i.message??"").toLowerCase();return i.code===4001||a.includes("reject")||a.includes("denied")||a.includes("cancel")?"You cancelled the request.":"Couldn't list your item — please try again."}function Ee({asset:e,session:i,onClose:a}){const o=W(),l=B(),[c,k]=m.useState("10"),[_,u]=m.useState(null),[N,p]=m.useState(null),[g,v]=m.useState(!1),[f,j]=m.useState(null);async function S(){p(null);const d=Number(c);if(!Number.isInteger(d)||d<=0){p("Enter a whole number of credits");return}v(!0);try{u("Getting your item ready…"),await pe({signer:i.signer,contractAddress:e.contractAddress,chainId:e.chainId}),u("Listing your item…");const I=await ge({signer:i.signer,nft:{contractAddress:e.contractAddress,tokenId:e.tokenId,network:e.network,chainId:e.chainId},usdPrice:d/10,expiresAtMs:Date.now()+$e});u("Publishing…"),await se(I,i.identity),u(null),j(d),P("Shop Listed Item",{item_id:e.itemId??e.tokenId??null,contract_address:e.contractAddress,price_credits:d,price_usd:d/10,listing_type:"secondary",is_primary:!1}),H.success(`“${e.name}” is now on sale!`),o.invalidateQueries({queryKey:["my-assets",i.address]})}catch(I){V(I,{flow:"list_secondary"}),P("Shop Listing Failed",{listing_type:"secondary",error_code:ne(I)}),p(Le(I)),u(null)}finally{v(!1)}}function x(){a(),l(`/item/${e.contractAddress}/${e.tokenId}`)}return f!==null?s.jsx("div",{className:"modal-backdrop",onClick:a,role:"presentation",children:s.jsxs("div",{className:"modal modal--success",onClick:d=>d.stopPropagation(),role:"dialog","aria-modal":"true",children:[s.jsx("div",{className:"modal-success__check","aria-hidden":!0,children:"✓"}),s.jsx("h2",{className:"modal__title",children:"It’s on sale! 🎉"}),e.image?s.jsx("img",{className:"modal__img",src:e.image,alt:e.name}):null,s.jsx("p",{className:"modal-success__name",children:e.name}),s.jsxs("p",{className:"muted small",children:["Listed for ",s.jsxs("strong",{children:[s.jsx(T,{className:"ccy-mark"})," ",f]})]}),s.jsxs("div",{className:"modal__actions",children:[s.jsx("button",{className:"btn btn--ghost",onClick:a,children:"Done"}),s.jsx("button",{className:"btn btn--purple",onClick:x,children:"View in Shop"})]})]})}):s.jsx("div",{className:"modal-backdrop",onClick:a,role:"presentation",children:s.jsxs("div",{className:"modal",onClick:d=>d.stopPropagation(),role:"dialog","aria-modal":"true",children:[s.jsxs("h2",{className:"modal__title",children:["List “",e.name,"”"]}),e.image?s.jsx("img",{className:"modal__img",src:e.image,alt:e.name}):null,s.jsxs("label",{className:"field",children:[s.jsxs("span",{children:["Price (",C.name,")"]}),s.jsx("input",{type:"number",min:"1",step:"1",value:c,onChange:d=>k(d.target.value),disabled:g})]}),s.jsxs("p",{className:"muted small",children:["Priced in whole ",C.name," (1 ",C.nameSingular," = $0.10)."]}),_?s.jsx("p",{className:"muted",children:_}):null,N?s.jsx("p",{className:"error",children:N}):null,s.jsxs("div",{className:"modal__actions",children:[s.jsx("button",{className:"btn btn--ghost",onClick:a,disabled:g,children:"Cancel"}),s.jsx("button",{className:"btn",onClick:S,disabled:g,children:g?"Listing…":"Put on sale"})]})]})})}const Me=1e3*60*60*24*182;function qe(e){const i=e,a=(i.message??"").toLowerCase();return i.code===4001||a.includes("reject")||a.includes("denied")||a.includes("cancel")?"You cancelled the request.":"Couldn't publish your item — please try again."}function Fe({item:e,session:i,onClose:a}){const o=W(),l=B(),[c,k]=m.useState("10"),[_,u]=m.useState(null),[N,p]=m.useState(null),[g,v]=m.useState(!1),[f,j]=m.useState(null),[S,x]=m.useState(null),d=G.chainId,I=je(i.providerType);m.useEffect(()=>{let h=!1;return(async()=>{try{const b=await be({contractAddress:e.contractAddress,chainId:d});h||j(b)}catch{h||j(!1)}})(),()=>{h=!0}},[e.contractAddress,d]);async function L(){p(null);const h=Number(c);if(!Number.isInteger(h)||h<=0){p("Enter a whole number of credits");return}v(!0);try{f||(u("Enabling sales for this collection…"),await ye({signer:i.signer,contractAddress:e.contractAddress,chainId:d}),j(!0)),u("Publishing your item…");const b=await xe({signer:i.signer,item:{contractAddress:e.contractAddress,itemId:e.blockchainItemId,network:ee.Network.MATIC,chainId:d},usdPrice:h/10,uses:e.remainingSupply,expiresAtMs:Date.now()+Me});u("Finishing up…"),await se(b,i.identity),u(null),x(h),P("Shop Listed Item",{item_id:e.blockchainItemId,contract_address:e.contractAddress,price_credits:h,price_usd:h/10,listing_type:"primary",is_primary:!0}),H.success(`“${e.name}” is now on sale!`),o.invalidateQueries({queryKey:["publishable-items"]}),o.invalidateQueries({queryKey:["collection-sale-state"]})}catch(b){V(b,{flow:"list_primary"}),P("Shop Listing Failed",{listing_type:"primary",error_code:ne(b)}),p(qe(b)),u(null)}finally{v(!1)}}function K(){a(),l(`/item/${e.contractAddress}/${e.blockchainItemId}`)}const E=g?"Listing…":f===!1?"Enable & put on sale":"Put on sale";return S!==null?s.jsx("div",{className:"modal-backdrop",onClick:a,role:"presentation",children:s.jsxs("div",{className:"modal modal--success",onClick:h=>h.stopPropagation(),role:"dialog","aria-modal":"true",children:[s.jsx("div",{className:"modal-success__check","aria-hidden":!0,children:"✓"}),s.jsx("h2",{className:"modal__title",children:"It’s on sale! 🎉"}),e.thumbnail?s.jsx("img",{className:"modal__img",src:e.thumbnail,alt:e.name}):null,s.jsx("p",{className:"modal-success__name",children:e.name}),s.jsxs("p",{className:"muted small",children:["Listed for ",s.jsxs("strong",{children:[s.jsx(T,{className:"ccy-mark"})," ",S]})," · ",e.remainingSupply.toLocaleString()," available"]}),s.jsxs("div",{className:"modal__actions",children:[s.jsx("button",{className:"btn btn--ghost",onClick:a,children:"Done"}),s.jsx("button",{className:"btn btn--purple",onClick:K,children:"View in Shop"})]})]})}):s.jsx("div",{className:"modal-backdrop",onClick:a,role:"presentation",children:s.jsxs("div",{className:"modal",onClick:h=>h.stopPropagation(),role:"dialog","aria-modal":"true",children:[s.jsxs("h2",{className:"modal__title",children:["Publish “",e.name,"”"]}),e.thumbnail?s.jsx("img",{className:"modal__img",src:e.thumbnail,alt:e.name}):null,s.jsxs("p",{className:"muted small",children:["From your collection “",e.collectionName,"” · ",e.remainingSupply.toLocaleString()," available"]}),s.jsxs("label",{className:"field",children:[s.jsxs("span",{children:["Price (",C.name,")"]}),s.jsx("input",{type:"number",min:"1",step:"1",value:c,onChange:h=>k(h.target.value),disabled:g})]}),s.jsxs("p",{className:"muted small",children:["Priced in whole ",C.name," (1 ",C.nameSingular," = $0.10)."]}),f===!1&&!g?I?s.jsxs("p",{className:"muted small primary-note",children:["First time selling from “",e.collectionName,"”? It needs a one-time approval, then you’ll confirm the listing — two quick confirmations. After this, listing more items from this collection is a single step."]}):s.jsxs("p",{className:"muted small primary-note",children:["First time selling from “",e.collectionName,"”? Setting it up takes a moment — after that, listing more items from this collection is instant."]}):f===!0&&!g?I?s.jsx("p",{className:"muted small primary-note",children:"This collection is ready — publishing is a single confirmation."}):s.jsx("p",{className:"muted small primary-note",children:"This collection is ready — publishing is instant."}):null,_?s.jsx("p",{className:"muted",children:_}):null,N?s.jsx("p",{className:"error",children:N}):null,s.jsxs("div",{className:"modal__actions",children:[s.jsx("button",{className:"btn btn--ghost",onClick:a,disabled:g,children:"Cancel"}),s.jsx("button",{className:"btn",onClick:L,disabled:g||f===null,children:f===null?"Checking…":E})]})]})})}const Te=48;function z(e){return{id:e.id,name:e.name,creator:"",contractAddress:e.contractAddress,itemId:e.itemId,category:e.category,rarity:e.rarity??"common",network:e.network,chainId:e.chainId,thumbnail:e.image,priceCredits:e.listingPrice??0,gender:null,tokenId:e.tokenId}}function F(e){return{id:`${e.contractAddress}-${e.blockchainItemId}`,name:e.name,creator:"",contractAddress:e.contractAddress,itemId:e.blockchainItemId,category:e.category,rarity:e.rarity,network:"MATIC",chainId:G.chainId,thumbnail:e.thumbnail,priceCredits:0,gender:null}}function He(){const{session:e,error:i,signIn:a,restore:o}=oe(),l=B(),c=W(),[k,_]=m.useState(null),[u,N]=m.useState(null),[p,g]=m.useState(null),[v,f]=m.useState(null);function j(n){const t=n.tokenId??n.itemId??"";!n.contractAddress||!t||l(`/item/${n.contractAddress}/${t}`,{state:{item:n}})}async function S(n,t,r){if(e){f(null),g(r);try{const y=await me(n);await fe({trade:y,signer:e.signer}),H.success(`“${t}” is no longer for sale.`),await c.invalidateQueries({queryKey:["my-assets",e.address]}),await c.invalidateQueries({queryKey:["collection-sale-state"]})}catch(y){const M=y,q=(M.message??"").toLowerCase(),J=M.code===4001||q.includes("reject")||q.includes("denied");J||V(y,{flow:"remove-listing",tradeId:n}),f(J?"You cancelled the request.":"Couldn't remove the listing — please try again.")}finally{g(null)}}}m.useEffect(()=>{o()},[o]);const x=e==null?void 0:e.address,{items:d,isLoading:I,error:L,hasNextPage:K,isFetchingNextPage:E,fetchNextPage:h}=Ne(["my-assets",x],n=>de(x,{first:Te,skip:n}).then(t=>({items:t.assets,total:t.total})),{enabled:!!x}),{data:b}=U({queryKey:["importable",x],queryFn:()=>he(x),enabled:!!x}),O=((b==null?void 0:b.creations.length)??0)+((b==null?void 0:b.owned.length)??0),{data:A,isLoading:ie,isError:re}=U({queryKey:["publishable-items",x],queryFn:()=>Pe(x,e.identity),enabled:!!e,retry:!1}),R=m.useMemo(()=>[...new Set((A??[]).map(n=>n.contractAddress))],[A]),{data:w}=U({queryKey:["collection-sale-state",x,R],enabled:R.length>0,queryFn:async()=>{const n=await Promise.all(R.map(async r=>[r,await ue(r)])),t={};for(const[r,y]of n)for(const[M,q]of Object.entries(y))t[`${r}-${M}`]=q;return t}}),Q=n=>w==null?void 0:w[`${n.contractAddress}-${n.blockchainItemId}`],Y=m.useMemo(()=>(A??[]).filter(n=>{var t;return(t=Q(n))==null?void 0:t.isOnSale}),[A,w]),X=m.useMemo(()=>{var t;const n=new Map;for(const r of A??[]){if((t=w==null?void 0:w[`${r.contractAddress}-${r.blockchainItemId}`])!=null&&t.isOnSale)continue;const y=n.get(r.collectionId)??{id:r.collectionId,name:r.collectionName,items:[]};y.items.push(r),n.set(r.collectionId,y)}return[...n.values()]},[A,w]);return e?s.jsxs("section",{className:"myassets",children:[s.jsx("h1",{children:"My Assets"}),O>0?s.jsxs(le,{className:"import-banner",to:"/import",children:[s.jsx("span",{className:"import-banner__ico","aria-hidden":!0,children:"📦"}),s.jsxs("span",{className:"import-banner__text",children:[s.jsx("strong",{children:"Import your listings"}),s.jsxs("span",{className:"import-banner__sub",children:["You have ",O," item",O===1?"":"s"," for sale elsewhere — bring them into the Shop."]})]}),s.jsx("span",{className:"import-banner__cta",children:"Import"})]}):null,s.jsxs("div",{className:"myassets__section",children:[s.jsxs("div",{className:"myassets__section-head",children:[s.jsx("h2",{className:"myassets__section-title",children:"Items you own"}),s.jsx("p",{className:"myassets__section-sub",children:"Wearables & emotes you’ve bought — resell them in the Shop."})]}),L?s.jsx("p",{className:"error",children:L.message}):null,v?s.jsx("p",{className:"error",children:v}):null,s.jsxs("div",{className:"asset-grid",children:[I?Array.from({length:8}).map((n,t)=>s.jsx("div",{className:"asset-card asset-card--skeleton"},`sk-${t}`)):d.map(n=>s.jsxs("article",{className:"asset-card asset-card--link",onClick:()=>j(z(n)),role:"link",tabIndex:0,onKeyDown:t=>{(t.key==="Enter"||t.key===" ")&&(t.preventDefault(),j(z(n)))},children:[s.jsx("div",{className:"asset-card__img",children:n.image?s.jsx("img",{src:n.image,alt:n.name}):null}),s.jsx("div",{className:"asset-card__name",title:n.name,children:n.name}),n.isOnSale?s.jsxs(s.Fragment,{children:[s.jsxs("div",{className:"asset-card__listed",children:[s.jsxs("span",{className:"asset-card__price",children:[s.jsx(T,{className:"ccy-mark"})," ",n.listingPrice]}),s.jsx("span",{className:"badge",children:"On sale"})]}),s.jsx("button",{className:"btn btn--sm btn--ghost asset-card__remove",disabled:p===n.id||!n.tradeId,onClick:t=>{t.stopPropagation(),n.tradeId&&S(n.tradeId,n.name,n.id)},children:p===n.id?"Removing…":"Remove listing"})]}):s.jsx("button",{className:"btn btn--sm",onClick:t=>{t.stopPropagation(),P("Shop Started Listing",{listing_type:"secondary",item_id:n.itemId??n.tokenId??null}),_(n)},children:"Put on sale"})]},n.id)),E?Array.from({length:4}).map((n,t)=>s.jsx("div",{className:"asset-card asset-card--skeleton"},`msk-${t}`)):null]}),s.jsx(_e,{hasNextPage:K,isFetching:E,onLoadMore:()=>h()}),!I&&d.length===0?s.jsx("p",{className:"muted",children:"No items in your wardrobe yet."}):null]}),s.jsxs("div",{className:"myassets__section",children:[s.jsxs("div",{className:"myassets__section-head",children:[s.jsx("h2",{className:"myassets__section-title",children:"Your creations"}),s.jsxs("p",{className:"myassets__section-sub",children:["Items you made. Put them on sale in the Shop — set a price in ",C.name," and buyers pay with ",C.name,"."]})]}),ie?s.jsx("div",{className:"publish-grid",children:Array.from({length:4}).map((n,t)=>s.jsx("div",{className:"asset-card asset-card--skeleton"},`pub-sk-${t}`))}):re?s.jsx("p",{className:"publish-empty",children:"We couldn’t load your collections right now. Please try again in a moment."}):Y.length===0&&X.length===0?s.jsx("p",{className:"publish-empty",children:"You don’t have any items to publish yet."}):s.jsxs(s.Fragment,{children:[Y.length>0?s.jsxs("div",{className:"creations-collection",children:[s.jsx("h3",{className:"creations-collection__name",children:"On sale"}),s.jsx("div",{className:"publish-grid",children:Y.map(n=>{var t;return s.jsxs("article",{className:"publish-card publish-card--link",onClick:()=>j(F(n)),role:"link",tabIndex:0,onKeyDown:r=>{(r.key==="Enter"||r.key===" ")&&(r.preventDefault(),j(F(n)))},children:[s.jsx("div",{className:"publish-card__img",children:n.thumbnail?s.jsx("img",{src:n.thumbnail,alt:n.name}):null}),s.jsx("div",{className:"publish-card__name",title:n.name,children:n.name}),s.jsxs("div",{className:"publish-card__listed",children:[s.jsxs("span",{className:"publish-card__price",children:[s.jsx(T,{className:"ccy-mark"})," ",((t=Q(n))==null?void 0:t.priceCredits)??0]}),s.jsx("span",{className:"badge",children:"On sale"})]}),s.jsx("button",{className:"btn btn--sm btn--ghost publish-card__cta",disabled:p===n.id,onClick:r=>{r.stopPropagation();const y=Q(n);y!=null&&y.tradeId&&S(y.tradeId,n.name,n.id)},children:p===n.id?"Removing…":"Remove listing"})]},`${n.contractAddress}-${n.blockchainItemId}`)})})]}):null,X.map(n=>s.jsxs("div",{className:"creations-collection",children:[s.jsx("h3",{className:"creations-collection__name",children:n.name}),s.jsx("div",{className:"publish-grid",children:n.items.map(t=>s.jsxs("article",{className:"publish-card publish-card--link",onClick:()=>j(F(t)),role:"link",tabIndex:0,onKeyDown:r=>{(r.key==="Enter"||r.key===" ")&&(r.preventDefault(),j(F(t)))},children:[s.jsx("div",{className:"publish-card__img",children:t.thumbnail?s.jsx("img",{src:t.thumbnail,alt:t.name}):null}),s.jsx("div",{className:"publish-card__name",title:t.name,children:t.name}),s.jsxs("div",{className:"publish-card__meta",children:[s.jsx("span",{className:"publish-chip publish-chip--rarity",children:t.rarity}),s.jsxs("span",{className:"publish-card__supply",children:[t.remainingSupply.toLocaleString()," available"]})]}),s.jsx("button",{className:"btn btn--sm btn--purple publish-card__cta",onClick:r=>{r.stopPropagation(),P("Shop Started Listing",{listing_type:"primary",item_id:t.blockchainItemId}),N(t)},children:"Put on sale"})]},`${t.contractAddress}-${t.blockchainItemId}`))})]},n.id))]})]}),k?s.jsx(Ee,{asset:k,session:e,onClose:()=>_(null)}):null,u?s.jsx(Fe,{item:u,session:e,onClose:()=>N(null)}):null]}):s.jsxs("section",{className:"myassets",children:[s.jsx("h1",{children:"My Assets"}),s.jsx("p",{className:"muted",children:"Sign in to sell your items."}),s.jsx("div",{className:"connect-row",children:s.jsx("button",{className:"btn btn--purple",onClick:()=>a(),children:"Sign in"})}),i?s.jsx("p",{className:"error",children:i}):null]})}export{He as MyAssets};
@@ -1 +0,0 @@
1
- import{j as e,L as s}from"./react-E8ng6RF2.js";function t(){return e.jsxs("div",{className:"notfound",children:[e.jsx("span",{className:"ico ico-cart notfound__ico","aria-hidden":!0}),e.jsx("h1",{className:"notfound__title",children:"Page not found"}),e.jsx("p",{className:"muted",children:"The page you’re looking for isn’t here. Let’s get you back to the shop."}),e.jsx(s,{className:"btn btn--purple",to:"/assets",children:"Browse Collectibles"})]})}export{t as NotFound,t as default};
@@ -1 +0,0 @@
1
- import{w as r}from"./utils-BZTXwsyT.js";import{d as a}from"./decimals-CSVlCZb3.js";import"./ethers-DbXGgxrh.js";import"./react-E8ng6RF2.js";import"./signing-CHdT_Ot8.js";import"./index-C13awi5n.js";async function s(c){return r(()=>a(c),{cacheKey:`${c.contract.chain.id}:${c.contract.address}:decimals`,cacheTime:Number.POSITIVE_INFINITY})}export{s as decimals};
@@ -1 +0,0 @@
1
- import{h as i}from"./signing-CHdT_Ot8.js";import"./utils-BZTXwsyT.js";import"./ethers-DbXGgxrh.js";import"./react-E8ng6RF2.js";import"./index-C13awi5n.js";async function n(t,e){const a=await t({method:"eth_estimateGas",params:[e]});return i(a)}export{n as eth_estimateGas};
@@ -1 +0,0 @@
1
- import{n as e,a as r}from"./signing-CHdT_Ot8.js";import"./utils-BZTXwsyT.js";import"./ethers-DbXGgxrh.js";import"./react-E8ng6RF2.js";import"./index-C13awi5n.js";async function b(t,o){const n=await t({method:"eth_getTransactionCount",params:[o.address,o.blockNumber?e(o.blockNumber):o.blockTag||"pending"]});return r(n)}export{b as eth_getTransactionCount};
@@ -1 +0,0 @@
1
- import{g as n}from"./wallets-CsiIl2HG.js";import"./signing-CHdT_Ot8.js";import"./utils-BZTXwsyT.js";import"./ethers-DbXGgxrh.js";import"./react-E8ng6RF2.js";import"./index-C13awi5n.js";import"./store-CraP4F4Y.js";import"./hashTypedData-C9QOz9pr.js";import"./index-63GX_n07.js";import"./index-3SuxDGIz.js";import"./index-aTH_VwVx.js";import"./index-nibyPLVP.js";import"./index-CJdot1dH.js";import"./index-DoTsdAEj.js";import"./ethereum-BT-rALS5.js";async function w(o){const l=await n(o);return{app:{android:null,browser:null,chrome:null,edge:null,firefox:null,ios:null,linux:null,mac:null,opera:null,safari:null,windows:null},desktop:{native:null,universal:null},homepage:l.homepage||"",id:o,image_id:l.imageUrl||"",mobile:{native:null,universal:null},name:l.name,rdns:null}}export{w as getEcosystemWalletInfo};
@@ -1 +0,0 @@
1
- import{p as d,i as l,j as o}from"./index-C13awi5n.js";import{e as p,c as w,a as f,b as I,d as h}from"./buy-C-Rj-xp5.js";import{r as m,m as u}from"./mana-rate-RN1C71HA.js";const g=1e3*60*60*24*182;async function k(t){const n=await fetch(`${o.marketplaceServerUrl}/v3/catalog/importable?seller=${t.toLowerCase()}`);if(!n.ok)throw new Error(`fetchImportable ${n.status}`);const{data:e}=await n.json(),s=e??[];if(s.length===0)return{creations:[],owned:[]};const c=s[0].chainId||o.chainId,r=await m(c),i=s.map(a=>({...a,suggestedCredits:u(a.manaWei,r)??1}));return{creations:i.filter(a=>a.listingType==="primary"),owned:i.filter(a=>a.listingType==="secondary")}}async function M(t,n,e,s={}){const c=n/10,r=t.chainId,i=t.network;if(t.listingType==="primary"){await p({signer:e.signer,contractAddress:t.contractAddress,chainId:r});const a=await w({signer:e.signer,item:{contractAddress:t.contractAddress,itemId:t.itemId??"",network:i,chainId:r},usdPrice:c,uses:t.available,expiresAtMs:Date.now()+g});await d(a,e.identity)}else{await f({signer:e.signer,contractAddress:t.contractAddress,chainId:r});const a=await I({signer:e.signer,nft:{contractAddress:t.contractAddress,tokenId:t.tokenId??"",network:i,chainId:r},usdPrice:c,expiresAtMs:Date.now()+g});await d(a,e.identity)}if(s.cancelOld){const a=await l(t.oldTradeId).catch(()=>null);a&&await h({trade:a,signer:e.signer})}}export{k as f,M as i};