@dcl/shop 0.1.0-29842935035.commit-a65be40 → 0.1.0-29843281528.commit-80ee4fe

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 (181) hide show
  1. package/assets/{AnimatedBackground-CnAO4k7S.js → AnimatedBackground-DuljJ5eE.js} +3 -3
  2. package/assets/{Assets-B1FxBJPM.js → Assets-C_Pb_gKM.js} +1 -1
  3. package/assets/Cart-DgfiEY34.js +3 -0
  4. package/assets/Cart-Ep_4Wxpy.css +1 -0
  5. package/assets/{CircularProgress-ApNcnq7N.js → CircularProgress-CFOLSY9J.js} +1 -1
  6. package/assets/{Collection-DuTrg3E-.js → Collection-Br_6eVW2.js} +1 -1
  7. package/assets/{CollectionCarousel-BRpR9AB4.css → CollectionCarousel-BbM25ExM.css} +1 -1
  8. package/assets/{CollectionCarousel-C5GeFa_Y.js → CollectionCarousel-DijkJOGi.js} +1 -1
  9. package/assets/{Creator-f3wTway-.js → Creator-CXMSNUos.js} +1 -1
  10. package/assets/{CssVarsProvider-D2zNKsxj.js → CssVarsProvider-B-9OhdaT.js} +1 -1
  11. package/assets/{ExchangeController-DWwsC0kg.js → ExchangeController-DZeSfQ3O.js} +1 -1
  12. package/assets/GetCredits-Dc4MRaep.js +1 -0
  13. package/assets/{HelpersUtil-DXarOia5.js → HelpersUtil-CIxak-Dl.js} +1 -1
  14. package/assets/{ImportListings-CdLYYVRk.js → ImportListings-BupAm--j.js} +1 -1
  15. package/assets/ItemDetail-CGF_X4b-.js +48 -0
  16. package/assets/{LoadMore-BMDjLVnk.js → LoadMore-DdNzWoKw.js} +1 -1
  17. package/assets/{MarketCheckout-CI0IRHEV.js → MarketCheckout-Cec3x9i9.js} +1 -1
  18. package/assets/{MyAssets-Bvn9R5Vx.js → MyAssets-Bob-0Xll.js} +1 -1
  19. package/assets/{MyFavorites-CnUUhrsk.js → MyFavorites-DIQniaKO.js} +1 -1
  20. package/assets/{MyPurchases-BLpXWFws.js → MyPurchases-Ds2kIXc6.js} +1 -1
  21. package/assets/{NotFound-9S6G5mG4.js → NotFound-CTFVq52Q.js} +1 -1
  22. package/assets/{PrimaryListModal-BFbTQMIs.js → PrimaryListModal-Ca5_30gC.js} +1 -1
  23. package/assets/{StoreSettings-YvF4h8EI.js → StoreSettings-CcLPXhlS.js} +5 -5
  24. package/assets/{Success-C1LGYw7c.js → Success-CKgJamne.js} +2 -2
  25. package/assets/{SwapController-DzlqZKEu.js → SwapController-BvaLktQP.js} +1 -1
  26. package/assets/{TradeService-BIXNDi8_.js → TradeService-BkvXSNTO.js} +1 -1
  27. package/assets/{W3MFrameProviderSingleton-7ZlGHyOT.js → W3MFrameProviderSingleton-CVKTirvY.js} +3 -3
  28. package/assets/{WebCryptoP256-BsFuSRMZ.js → WebCryptoP256-DqHDVOgM.js} +1 -1
  29. package/assets/{basic-Bas_eU9V.js → basic-CPzfNN7q.js} +1 -1
  30. package/assets/{biconomy-DxGC86Xq.js → biconomy-Dv0xaKml.js} +1 -1
  31. package/assets/buy-C-p0vOlr.js +1 -0
  32. package/assets/buy-error-22UunaPC.png +0 -0
  33. package/assets/buy-gasless-80rsxFwS.js +1 -0
  34. package/assets/{cart-checkout-BsPe3vsb.js → cart-checkout-C8WkR2Mv.js} +1 -1
  35. package/assets/{categories-CgoVNI3r.js → categories-DMvvNpsP.js} +1 -1
  36. package/assets/{ccip-CLolljPY.js → ccip-BwGwocPa.js} +1 -1
  37. package/assets/{ccip-BZ5t4M98.js → ccip-BwOwAXNb.js} +1 -1
  38. package/assets/collection-DPrYZX6W.js +1 -0
  39. package/assets/{controller-Dmiz4V9v.js → controller-CgqGHx7D.js} +2 -2
  40. package/assets/{core-CClsAKFe.js → core-B2nfA4sd.js} +4 -4
  41. package/assets/{custom-8DiMBmid.js → custom-CdZQaelR.js} +1 -1
  42. package/assets/{data-capture-DMdQZHt4.js → data-capture-DMW4pF-p.js} +1 -1
  43. package/assets/{decimals-BMkgPUUI.js → decimals-D67NJCrH.js} +1 -1
  44. package/assets/{decimals-jsc6T1pS.js → decimals-rp_QRWgQ.js} +1 -1
  45. package/assets/{detectExtension-_uzJMxml.js → detectExtension-CdyBy88S.js} +1 -1
  46. package/assets/{email-rauE2gwy.js → email-DbiwTCeu.js} +1 -1
  47. package/assets/{embedded-wallet-DcPnMzKJ.js → embedded-wallet-BsM4YZGP.js} +1 -1
  48. package/assets/{emotion-styled.browser.esm-Cj9DOOij.js → emotion-styled.browser.esm-exjoQmBi.js} +1 -1
  49. package/assets/{engine-8fIJfqfj.js → engine-BIaee4cN.js} +1 -1
  50. package/assets/{errors-p2bFnwUF.js → errors-Cy2OMz1f.js} +1 -1
  51. package/assets/{estimate-l1-fee-XBWG77Ow.js → estimate-l1-fee-gJM_qs-2.js} +1 -1
  52. package/assets/{eth_estimateGas-r87LpjqX.js → eth_estimateGas-D2ajTk6Z.js} +1 -1
  53. package/assets/{eth_getStorageAt-qm5qDkl9.js → eth_getStorageAt-BvK-sxlh.js} +1 -1
  54. package/assets/{eth_getTransactionCount-BAARL3ae.js → eth_getTransactionCount-YDPYaO31.js} +1 -1
  55. package/assets/{extractIPFS-nkX8AeoZ.js → extractIPFS-jmhJ6PDc.js} +1 -1
  56. package/assets/{features-C_BSHMtq.js → features-DliQhpqn.js} +1 -1
  57. package/assets/{fetchTokenMetadata-DFl0aYrb.js → fetchTokenMetadata-e-tnU9jP.js} +2 -2
  58. package/assets/{get-ecosystem-wallet-info-BHQDfsn-.js → get-ecosystem-wallet-info-CZC3jXDk.js} +1 -1
  59. package/assets/{getBalance-BfswuTLE.js → getBalance-DW56jwnz.js} +1 -1
  60. package/assets/{getInstalledModules-DCDW2oYW.js → getInstalledModules-DnVuL5FL.js} +1 -1
  61. package/assets/{getNFT-IEcrtkPh.js → getNFT-BrnrnPkZ.js} +1 -1
  62. package/assets/{getNFT-d_1IA_yV.js → getNFT-DS4NW5JT.js} +2 -2
  63. package/assets/{getOverlayAlpha-yAmCaiXy.js → getOverlayAlpha-BYOq19Nw.js} +1 -1
  64. package/assets/{hashTypedData-DtoFYwPK.js → hashTypedData-CwfOunhR.js} +1 -1
  65. package/assets/{hashTypedData-C8lb7A30.js → hashTypedData-y5e_N0pF.js} +1 -1
  66. package/assets/{import-YJkTWfno.js → import-DGp843-7.js} +1 -1
  67. package/assets/{in-app-wallet-calls-BnNBT5Mt.js → in-app-wallet-calls-ByxidTQ9.js} +1 -1
  68. package/assets/{index--j54mUQU.js → index-1HD-ZiOz.js} +1 -1
  69. package/assets/{index-DibWgfYu.js → index-5c0GQ1Nl.js} +1 -1
  70. package/assets/{index-DMcwCitM.js → index-B0v1VfMr.js} +1 -1
  71. package/assets/{index-PleUZn46.js → index-B2az3PiP.js} +3 -3
  72. package/assets/{index-Cc_DM0iK.js → index-BCJ8zpyP.js} +1 -1
  73. package/assets/{index-BbKMnNcs.js → index-BJMmq_1b.js} +1 -1
  74. package/assets/{index-CCGHENcO.js → index-BJi9mWLa.js} +1 -1
  75. package/assets/{index-_cQYPRhD.js → index-BLFpf7VZ.js} +1 -1
  76. package/assets/{index-QpE7O6o7.js → index-BOxK6fGr.js} +2 -2
  77. package/assets/{index-XbUjhNHl.js → index-BR727Jzt.js} +1 -1
  78. package/assets/{index-aUi4MQGL.js → index-BRDfjRE7.js} +1 -1
  79. package/assets/{index-DXm5dWgZ.js → index-BT3aLy2n.js} +1 -1
  80. package/assets/{index-7IQPQlmq.js → index-BVLvW024.js} +1 -1
  81. package/assets/{index-B2ys_PW2.js → index-BVNelofo.js} +1 -1
  82. package/assets/{index-FDBQ0uaQ.js → index-BWP2Fumx.js} +1 -1
  83. package/assets/{index-CbWEoIuL.js → index-BX4FwzVP.js} +1 -1
  84. package/assets/{index-DII6Tqu_.js → index-BhjB6g3C.js} +1 -1
  85. package/assets/{index-BNnVKxqC.js → index-BoOFl8c5.js} +1 -1
  86. package/assets/{index-B0GbG2PP.js → index-BqZuhkNd.js} +1 -1
  87. package/assets/index-BqifAYYN.css +1 -0
  88. package/assets/{index-CgY1C4yg.js → index-Bu8ostX3.js} +1 -1
  89. package/assets/{index-DWGTPbVn.js → index-CAlaPEFD.js} +1 -1
  90. package/assets/{index-DTW5h3EC.js → index-CEE7Cn_g.js} +1 -1
  91. package/assets/{index-w6PsRxrI.js → index-CRwyTQtp.js} +1 -1
  92. package/assets/{index-B_msdDpn.js → index-CXBJ9EIH.js} +1 -1
  93. package/assets/{index-CAx92XfP.js → index-CczWbtzB.js} +1 -1
  94. package/assets/{index-Db2SQ7UZ.js → index-ChULorg8.js} +1 -1
  95. package/assets/{index-CBiJc7wf.js → index-CnR9-WYz.js} +1 -1
  96. package/assets/{index-z4NyCW59.js → index-CqSBxYu9.js} +1 -1
  97. package/assets/{index-DVF8Krqj.js → index-CqiRo3Zn.js} +1 -1
  98. package/assets/{index-DmCYLxGR.js → index-CthUHORI.js} +1 -1
  99. package/assets/{index-C7g3x2a5.js → index-D51Jnqov.js} +1 -1
  100. package/assets/{index-CDtEmRi2.js → index-DHR1PStF.js} +3 -3
  101. package/assets/{index-B0KyEyZW.js → index-DI8CjH9V.js} +2 -2
  102. package/assets/{index-G6xf-Q3K.js → index-DJ4kGSWA.js} +1 -1
  103. package/assets/{index-BlgZoMqa.js → index-DJoRdzge.js} +1 -1
  104. package/assets/{index-hPqe-mn5.js → index-DM2l6nmY.js} +1 -1
  105. package/assets/{index-BSZAIF-P.js → index-DNGMKwFA.js} +1 -1
  106. package/assets/{index-BQyF5ApH.js → index-DsA36hey.js} +1 -1
  107. package/assets/{index-CyKa-S56.js → index-Dt2sCUK8.js} +1 -1
  108. package/assets/{index-ibDi_M3N.js → index-E8b-gnkf.js} +1 -1
  109. package/assets/{index-BUqo3Tj9.js → index-Hi72v_of.js} +1 -1
  110. package/assets/{index-KNJzOfGC.js → index-MuXuv7Gk.js} +2 -2
  111. package/assets/{index-CnOiYeAk.js → index-T-zasmbE.js} +10 -10
  112. package/assets/{index-BtEbPAKt.js → index-WmhNuNqi.js} +1 -1
  113. package/assets/{index-D1YQ5vIT.js → index-g4vOnab2.js} +1 -1
  114. package/assets/{index-D_Xsd3Vt.js → index-kB2cGSV_.js} +1 -1
  115. package/assets/{index-2lvvWbBd.js → index-m29akl6f.js} +1 -1
  116. package/assets/{index-BdfJq1z-.js → index-nLudmUJ4.js} +1 -1
  117. package/assets/{index-Bcoz1tgv.js → index-rvOCdvOD.js} +1 -1
  118. package/assets/{index-CT03O-jT.js → index-td4pFZfG.js} +1 -1
  119. package/assets/{index-BEXITBRH.js → index-ygPPQNgl.js} +1 -1
  120. package/assets/{index.es-Cj4qvOPU.js → index.es-Bvwb44-d.js} +1 -1
  121. package/assets/{index.es-DTVjAbnO.js → index.es-C7AZp5D9.js} +1 -1
  122. package/assets/{index.es-B8p45Gxw.js → index.es-F7YT6EP3.js} +4 -4
  123. package/assets/loader-logo-sfRgTXGv.js +1 -0
  124. package/assets/{localBatchGatewayRequest-qe0AcPei.js → localBatchGatewayRequest-zR7Ha1uQ.js} +1 -1
  125. package/assets/{mana-rate-C9OeZ3I-.js → mana-rate-B9PgPeC4.js} +1 -1
  126. package/assets/{networks-CpT7rAv_.js → networks-dXDx9gAD.js} +1 -1
  127. package/assets/{onramp-DILJkR23.js → onramp-fNtRJPac.js} +1 -1
  128. package/assets/{openzeppelin-I_v5U0zJ.js → openzeppelin-sYEux5UU.js} +1 -1
  129. package/assets/{ownerOf-swrVNY-9.js → ownerOf-CnmeWudT.js} +1 -1
  130. package/assets/{parseNft-CooUo9vw.js → parseNft-T29OsJ6m.js} +2 -2
  131. package/assets/{parseSignature-DK4ozIkj.js → parseSignature-C6Ri9jBZ.js} +1 -1
  132. package/assets/{parseSignature-CIOeOtiN.js → parseSignature-D06Xu3Gf.js} +3 -3
  133. package/assets/{pay-with-exchange-BUUCcSJH.js → pay-with-exchange-BoMmA1Tj.js} +1 -1
  134. package/assets/{qr-overlay-C9GK8MHy.js → qr-overlay-beGwyXqx.js} +1 -1
  135. package/assets/{receive-DSXgD8l5.js → receive-D4ql0UiI.js} +1 -1
  136. package/assets/{resolveImplementation-Bbq7vp1O.js → resolveImplementation-DQuU7tt4.js} +1 -1
  137. package/assets/{rpc-DLfN54Vu.js → rpc-dvg5kHBi.js} +1 -1
  138. package/assets/{secp256k1-D7jgbcwp.js → secp256k1-BRQHdiKx.js} +1 -1
  139. package/assets/{secp256k1-JPjPXkQA.js → secp256k1-BiBpjJ-Y.js} +1 -1
  140. package/assets/{secp256k1-vft3wPq6.js → secp256k1-DzCAsKA4.js} +1 -1
  141. package/assets/{send-C7bIAjWP.js → send-DsvtMOwS.js} +1 -1
  142. package/assets/{send-batch-transaction-DCaMbGgk.js → send-batch-transaction-BI7PszNe.js} +1 -1
  143. package/assets/{send-eip712-transaction-B0EfagOx.js → send-eip712-transaction-DkDZjHS-.js} +2 -2
  144. package/assets/{send-gasless-transaction-DADJYiOb.js → send-gasless-transaction-BWiIvBJH.js} +2 -2
  145. package/assets/{sendRawTransaction-B0JjP1WZ.js → sendRawTransaction-CJYjLdky.js} +3 -3
  146. package/assets/{serializeTransaction-DqLhlNY8.js → serializeTransaction-DsE3bqzt.js} +1 -1
  147. package/assets/{session-proposal-B-aCZN30.js → session-proposal-C87UteoU.js} +1 -1
  148. package/assets/{session-request-BD7-zSM_.js → session-request-Dp0rC7zH.js} +2 -2
  149. package/assets/{sha256-CKNPKKPX.js → sha256-D0Lh0Apw.js} +1 -1
  150. package/assets/{signing-BPqQRusg.js → signing-BPU6VB4U.js} +4 -4
  151. package/assets/{socials-C1dbbHYL.js → socials-DS6Oy5zA.js} +1 -1
  152. package/assets/{swaps-DkWNTomv.js → swaps-D1v4d6OG.js} +1 -1
  153. package/assets/{thirdweb-D0HOfogA.js → thirdweb-C4HaRY0z.js} +3 -3
  154. package/assets/{totalSupply-CpvOP_C5.js → totalSupply-BeKwmSJ8.js} +1 -1
  155. package/assets/{trade-encoding-Bkk79sDB.js → trade-encoding-DWEKE2_D.js} +1 -1
  156. package/assets/{transactionReceipt-CHeWdSHX.js → transactionReceipt-hL0wb2x7.js} +1 -1
  157. package/assets/{transactions-59I5qjgt.js → transactions-D8hLtdUl.js} +1 -1
  158. package/assets/{useInfiniteGrid-DNbOhMyq.js → useInfiniteGrid-DtqZsW6Q.js} +1 -1
  159. package/assets/{useStore-BxLN3UHd.js → useStore-JJzXYl67.js} +1 -1
  160. package/assets/{useTheme-DLmJNPU6.js → useTheme-B1XbAz3A.js} +1 -1
  161. package/assets/useTheme-Cke4HwaD.js +1 -0
  162. package/assets/{verifyHash-BHrLI5gL.js → verifyHash-8JWQpVAA.js} +1 -1
  163. package/assets/{w3m-modal-f6BMPOJv.js → w3m-modal-BsLEDK_w.js} +1 -1
  164. package/assets/{w3m-modal-3Wn89MEZ.js → w3m-modal-C6EBRfim.js} +1 -1
  165. package/assets/{wait-for-tx-receipt-CkGwzcag.js → wait-for-tx-receipt-Dwtf8AK-.js} +1 -1
  166. package/assets/{wallets-Kk_yC_Zf.js → wallets-gXvJ-4C5.js} +6 -6
  167. package/assets/{web-connector-BQJIB5KD.js → web-connector-DF_01FjF.js} +3 -3
  168. package/assets/{writeContract-C8YjcPqM.js → writeContract-w2MHfkK2.js} +1 -1
  169. package/assets/{zoraTestnet-BUaTQysG.js → zoraTestnet-B_HTvQOr.js} +1 -1
  170. package/index.html +11 -11
  171. package/package.json +2 -2
  172. package/assets/Cart-BxDJekyS.js +0 -3
  173. package/assets/Cart-DXZzP7Af.css +0 -1
  174. package/assets/GetCredits-B-V0lmX1.js +0 -1
  175. package/assets/ItemDetail-CnDcWx8Z.js +0 -48
  176. package/assets/buy-BlwZzU_E.js +0 -1
  177. package/assets/buy-gasless-B1VlH3HF.js +0 -1
  178. package/assets/collection-Qcgn_TR_.js +0 -1
  179. package/assets/index-eE-_qVda.css +0 -1
  180. package/assets/useCreditPacks-Q7ub-ShV.js +0 -1
  181. package/assets/useTheme-3SpHG4Qk.js +0 -1
package/index.html CHANGED
@@ -16,10 +16,10 @@
16
16
  <link rel="canonical" href="https://shop.decentraland.org/" />
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-29842935035.commit-a65be40/favicon.ico" sizes="16x16 32x32 48x48" />
20
- <link rel="apple-touch-icon" sizes="180x180" href="https://cdn.decentraland.org/@dcl/shop/0.1.0-29842935035.commit-a65be40/apple-touch-icon.png" />
19
+ <link rel="icon" type="image/x-icon" href="https://cdn.decentraland.org/@dcl/shop/0.1.0-29843281528.commit-80ee4fe/favicon.ico" sizes="16x16 32x32 48x48" />
20
+ <link rel="apple-touch-icon" sizes="180x180" href="https://cdn.decentraland.org/@dcl/shop/0.1.0-29843281528.commit-80ee4fe/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-29842935035.commit-a65be40/site.webmanifest" />
22
+ <link rel="manifest" href="https://cdn.decentraland.org/@dcl/shop/0.1.0-29843281528.commit-80ee4fe/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-29842935035.commit-a65be40/sitemap.xml" />
51
+ <link rel="sitemap" type="application/xml" title="Sitemap" href="https://cdn.decentraland.org/@dcl/shop/0.1.0-29843281528.commit-80ee4fe/sitemap.xml" />
52
52
 
53
53
  <!-- Warm the 3D preview / fonts -->
54
54
  <link rel="preconnect" href="https://fonts.googleapis.com" />
@@ -60,13 +60,13 @@
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-29842935035.commit-a65be40/assets/index-CnOiYeAk.js"></script>
64
- <link rel="modulepreload" crossorigin href="https://cdn.decentraland.org/@dcl/shop/0.1.0-29842935035.commit-a65be40/assets/react-C51i12iP.js">
65
- <link rel="modulepreload" crossorigin href="https://cdn.decentraland.org/@dcl/shop/0.1.0-29842935035.commit-a65be40/assets/dcl-schemas-BICTSpB5.js">
66
- <link rel="modulepreload" crossorigin href="https://cdn.decentraland.org/@dcl/shop/0.1.0-29842935035.commit-a65be40/assets/sentry-DKBoGDXH.js">
67
- <link rel="modulepreload" crossorigin href="https://cdn.decentraland.org/@dcl/shop/0.1.0-29842935035.commit-a65be40/assets/ethers-BeFqf2KO.js">
68
- <link rel="modulepreload" crossorigin href="https://cdn.decentraland.org/@dcl/shop/0.1.0-29842935035.commit-a65be40/assets/intl-CBcMB1D2.js">
69
- <link rel="stylesheet" crossorigin href="https://cdn.decentraland.org/@dcl/shop/0.1.0-29842935035.commit-a65be40/assets/index-eE-_qVda.css">
63
+ <script type="module" crossorigin src="https://cdn.decentraland.org/@dcl/shop/0.1.0-29843281528.commit-80ee4fe/assets/index-T-zasmbE.js"></script>
64
+ <link rel="modulepreload" crossorigin href="https://cdn.decentraland.org/@dcl/shop/0.1.0-29843281528.commit-80ee4fe/assets/react-C51i12iP.js">
65
+ <link rel="modulepreload" crossorigin href="https://cdn.decentraland.org/@dcl/shop/0.1.0-29843281528.commit-80ee4fe/assets/dcl-schemas-BICTSpB5.js">
66
+ <link rel="modulepreload" crossorigin href="https://cdn.decentraland.org/@dcl/shop/0.1.0-29843281528.commit-80ee4fe/assets/sentry-DKBoGDXH.js">
67
+ <link rel="modulepreload" crossorigin href="https://cdn.decentraland.org/@dcl/shop/0.1.0-29843281528.commit-80ee4fe/assets/ethers-BeFqf2KO.js">
68
+ <link rel="modulepreload" crossorigin href="https://cdn.decentraland.org/@dcl/shop/0.1.0-29843281528.commit-80ee4fe/assets/intl-CBcMB1D2.js">
69
+ <link rel="stylesheet" crossorigin href="https://cdn.decentraland.org/@dcl/shop/0.1.0-29843281528.commit-80ee4fe/assets/index-BqifAYYN.css">
70
70
  </head>
71
71
  <body>
72
72
  <div id="root"></div>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dcl/shop",
3
- "version": "0.1.0-29842935035.commit-a65be40",
3
+ "version": "0.1.0-29843281528.commit-80ee4fe",
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": "a65be405d14f061d2ccaa50a3bec6eac8b7324e0"
11
+ "commit": "80ee4feb9edf1a6eb3152de21bf147ddfb78c899"
12
12
  }
@@ -1,3 +0,0 @@
1
- import{j as e,r as j,u as Se,a as Ie,L as X}from"./react-C51i12iP.js";import{t as a,C as S,a8 as R,u as Le,a9 as N,a as le,b as qe,c as Pe,l as Ee,m as Te,I as q,aa as Be,v as O,ab as ie,ac as Fe,z as A,s as Ae,B as Re,g as We,h as Ue,r as ze,n as de,ad as Qe,x as ue,w as $e,ae as Ke}from"./index-CnOiYeAk.js";import{a as he}from"./buy-BlwZzU_E.js";import{g as Oe,a as Ge,w as Je,S as De,G as Ve}from"./buy-gasless-B1VlH3HF.js";import{R as G,r as Ye}from"./cart-checkout-BsPe3vsb.js";import{u as He,c as Xe}from"./useCreditPacks-Q7ub-ShV.js";import{E as ye}from"./ErrorNotice-C7soUjRV.js";import{i as Ze,a as es}from"./errors-p2bFnwUF.js";import{C as ss}from"./CollectionCarousel-C5GeFa_Y.js";import"./dcl-schemas-BICTSpB5.js";import"./sentry-DKBoGDXH.js";import"./ethers-BeFqf2KO.js";import"./intl-CBcMB1D2.js";import"./trade-encoding-Bkk79sDB.js";import"./index-HN6Rk25C.js";function as(t){const{phase:r,balanceCredits:p,onClose:l}=t,k=r==="processing",P=r!=="complete",E=r==="nofunds"?a("cartCheckout.titleNoFunds"):a("cartCheckout.titleBuy"),f=r==="processing";return e.jsxs("div",{className:"buy-modal",role:"dialog","aria-modal":"true","aria-label":a("cartCheckout.dialogAria"),children:[e.jsx("div",{className:"buy-modal__scrim",onClick:k?void 0:l,"aria-hidden":!0}),e.jsxs("div",{className:`buy-modal__card${f?" buy-modal__card--tall":""}`,children:[P&&e.jsxs("div",{className:"buy-modal__head",children:[e.jsxs("div",{className:"buy-modal__head-row",children:[e.jsx("h2",{className:"buy-modal__title",children:E}),!k&&e.jsx("button",{className:"buy-modal__x",onClick:l,"aria-label":a("buyModal.close"),children:e.jsx("svg",{viewBox:"0 0 18 18",width:"18",height:"18","aria-hidden":!0,children:e.jsx("path",{d:"M4 4l10 10M14 4L4 14",stroke:"#161518",strokeWidth:"1.8",strokeLinecap:"round"})})})]}),e.jsxs("div",{className:"buy-modal__balance",children:[e.jsx("span",{className:"buy-modal__balance-label",children:r==="nofunds"?a("buyModal.dclBalance"):a("buyModal.myCreditsBalance")}),e.jsx(S,{className:"buy-modal__balance-ico"}),e.jsx("span",{className:"buy-modal__balance-value",children:R(p)})]})]}),r==="processing"&&e.jsx(ts,{step:t.step??1,total:t.total??1}),r==="nofunds"&&e.jsx(cs,{lines:t.lines??[],shortfallCredits:t.shortfallCredits??0,packs:t.packs??[],selectedPack:t.selectedPack??"",onSelectPack:t.onSelectPack??(()=>{}),onBuyPacks:t.onBuyPacks??(()=>{}),onCancel:l}),r==="complete"&&e.jsx(rs,{purchased:t.purchased??[],onMyAssets:t.onMyAssets??l,onTryInWorld:t.onTryInWorld??l}),r==="error"&&e.jsxs("div",{className:"buy-modal__body",children:[e.jsx(ye,{message:t.message}),e.jsx("div",{className:"buy-modal__ctas",children:e.jsx("button",{className:"buy-modal__btn buy-modal__btn--gradient",onClick:l,children:a("buyModal.close")})})]})]})]})}function ts({step:t,total:r}){return e.jsxs("div",{className:"buy-modal__body buy-modal__processing",children:[e.jsx("img",{className:"buy-modal__logo",src:"/icon-192.png",alt:"",width:61,height:61}),e.jsx("div",{className:"buy-modal__processing-text",children:a("buyModal.completingTransaction")}),e.jsxs("div",{className:"cart-checkout__progress-row",children:[e.jsx("div",{className:"buy-modal__progress","aria-hidden":!0,children:e.jsx("span",{className:"buy-modal__progress-fill"})}),e.jsxs("span",{className:"cart-checkout__step",children:[t,"/",r]})]})]})}function cs({lines:t,shortfallCredits:r,packs:p,selectedPack:l,onSelectPack:k,onBuyPacks:P,onCancel:E}){const f=p.find(c=>c.id===l),J=t.reduce((c,_)=>c+(_.quantity??1),0);return e.jsxs("div",{className:"buy-modal__body",children:[e.jsxs("div",{className:"buy-modal__warning",children:[e.jsxs("svg",{viewBox:"0 0 24 24",width:"24",height:"24","aria-hidden":!0,className:"buy-modal__warning-ico",children:[e.jsx("path",{d:"M12 3L2 20h20L12 3z",fill:"none",stroke:"#691fa9",strokeWidth:"1.8",strokeLinejoin:"round"}),e.jsx("path",{d:"M12 9v5",stroke:"#691fa9",strokeWidth:"1.8",strokeLinecap:"round"}),e.jsx("circle",{cx:"12",cy:"17",r:"1.1",fill:"#691fa9"})]}),e.jsxs("p",{className:"buy-modal__warning-text",children:[e.jsx("b",{children:a("buyModal.insufficientFunds")})," ",a("buyModal.warningNeedToBuy")," ",e.jsx("b",{children:a("buyModal.warningCreditsAmount",{count:Math.max(0,r)})})," ",a("buyModal.warningToPurchase",{count:J})]})]}),e.jsx("div",{className:"cart-checkout__scroll",children:t.map(c=>{const _=c.quantity??1;return e.jsxs("div",{className:"buy-modal__asset",children:[e.jsx("div",{className:"buy-modal__asset-thumb",children:c.item.thumbnail?e.jsx("img",{src:c.item.thumbnail,alt:""}):null}),e.jsxs("div",{className:"buy-modal__asset-info",children:[e.jsxs("div",{children:[e.jsxs("div",{className:"buy-modal__asset-name",title:c.item.name,children:[c.item.name||a("buyModal.itemFallback"),_>1?e.jsx("span",{className:"cart-checkout__qty-tag",children:a("cartCheckout.qty",{count:_})}):null]}),c.item.creator?e.jsx("div",{className:"buy-modal__asset-creator",children:a("search.byCreator",{name:c.item.creator})}):null]}),e.jsxs("div",{className:"buy-modal__asset-price",children:[e.jsx(S,{className:"buy-modal__asset-price-ico"}),e.jsx("span",{children:R(c.priceCredits*_)})]})]})]},c.item.id)})}),e.jsx("div",{className:"buy-modal__packs",children:p.map(c=>{const _=c.id===l;return e.jsxs("button",{className:`buy-modal__pack${_?" buy-modal__pack--on":""}`,onClick:()=>k(c.id),children:[e.jsx(S,{className:"buy-modal__pack-ico"}),e.jsx("span",{className:"buy-modal__pack-amount",children:R(c.credits)}),e.jsxs("span",{className:"buy-modal__pack-usd",children:["($",c.usd.toFixed(2),")"]})]},c.id)})}),e.jsxs("div",{className:"buy-modal__total",children:[e.jsxs("div",{className:"buy-modal__total-credits",children:[e.jsx(S,{className:"buy-modal__total-ico"}),e.jsx("span",{children:R((f==null?void 0:f.credits)??0)})]}),e.jsxs("span",{className:"buy-modal__total-usd",children:["$",((f==null?void 0:f.usd)??0).toFixed(2)]})]}),e.jsxs("div",{className:"buy-modal__ctas",children:[e.jsx("button",{className:"buy-modal__btn buy-modal__btn--outline",onClick:E,children:a("buyModal.cancel")}),e.jsx("button",{className:"buy-modal__btn buy-modal__btn--gradient",onClick:P,children:a("buyModal.buy")})]})]})}function rs({purchased:t,onMyAssets:r,onTryInWorld:p}){return e.jsxs("div",{className:"buy-modal__body cart-checkout__done-body",children:[e.jsxs("div",{className:"buy-modal__success",children:[e.jsxs("svg",{viewBox:"0 0 64 64",width:"60",height:"60","aria-hidden":!0,children:[e.jsx("circle",{cx:"32",cy:"32",r:"32",fill:"#34ce77"}),e.jsx("path",{d:"M20 33l8 8 16-18",fill:"none",stroke:"#fff",strokeWidth:"5",strokeLinecap:"round",strokeLinejoin:"round"})]}),e.jsxs("p",{className:"buy-modal__success-text",children:[e.jsx("b",{children:a("getCredits.successTitle")})," ",a("buyModal.successBody")]})]}),e.jsx("div",{className:"cart-checkout__done",children:e.jsx("div",{className:"cart-checkout__done-scroll",children:t.map(l=>{const k=l.quantity??1;return e.jsxs("div",{className:"cart-checkout__done-row",children:[e.jsxs("div",{className:"cart-checkout__done-thumb",children:[l.thumbnail?e.jsx("img",{src:l.thumbnail,alt:""}):null,e.jsx("span",{className:"cart-checkout__done-check","aria-hidden":!0,children:e.jsx("svg",{viewBox:"0 0 18 18",width:"12",height:"12",children:e.jsx("path",{d:"M4 9l3.5 3.5L14 5",fill:"none",stroke:"#fff",strokeWidth:"2.2",strokeLinecap:"round",strokeLinejoin:"round"})})})]}),e.jsxs("div",{className:"cart-checkout__done-info",children:[e.jsxs("div",{className:"cart-checkout__done-name",title:l.name,children:[l.name||a("buyModal.itemFallback"),k>1?e.jsx("span",{className:"cart-checkout__qty-tag",children:a("cartCheckout.qty",{count:k})}):null]}),l.creator?e.jsx("div",{className:"cart-checkout__done-creator",children:a("search.byCreator",{name:l.creator})}):null]}),e.jsxs("div",{className:"cart-checkout__done-price",children:[e.jsx(S,{className:"cart-checkout__done-price-ico"}),e.jsx("span",{children:R(l.priceCredits*k)})]})]},l.id)})})}),e.jsxs("div",{className:"buy-modal__ctas",children:[e.jsx("button",{className:"buy-modal__btn buy-modal__btn--outline",onClick:r,children:a("buyModal.myAssets")}),e.jsxs("button",{className:"buy-modal__btn buy-modal__btn--ruby",onClick:p,children:[a("buyModal.tryInWorld"),e.jsx("svg",{viewBox:"0 0 24 24",width:"20",height:"20","aria-hidden":!0,children:e.jsx("path",{d:"M5 12h12M13 7l5 5-5 5",fill:"none",stroke:"#fcfcfc",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})]})]})]})}const ns=Ae(Re)`
2
- margin-top: 12px;
3
- `;function me(t){if(Ze(t))return a("errors.rejected");const r=(t.message??"").toLowerCase();return r.includes("insufficient")?a("cart.error.insufficient",{currency:Ue.name}):r.includes("no active listing")||r.includes("your own listing")?a("cart.error.listingChanged"):a("marketCheckout.error.generic")}const os=12e4,ls=We.chainId===80002?"https://decentraland.zone/jump":"https://decentraland.org/jump";function is(t){const r=[];return t.unavailable.length&&r.push(a("cart.drop.unavailable",{count:t.unavailable.length})),t.own.length&&r.push(a("cart.drop.own",{count:t.own.length})),a("cart.drop.removed",{items:r.join(` ${a("cart.drop.and")} `)})}const _e=t=>t.reduce((r,p)=>r+p.priceCredits*p.quantity,0),ds=t=>t.flatMap(r=>Array.from({length:r.quantity},()=>({...r,quantity:1})));function ws(){Le({title:a("nav.cart"),noindex:!0});const t=N(s=>s.items),r=N(s=>s.remove),p=N(s=>s.increment),l=N(s=>s.decrement),k=N(s=>s.clear),P=N(s=>s.restore),E=N(s=>s.setFittingOpen),f=le(s=>s.items),J=le(s=>s.toggle),{session:c}=qe(),_=He().packs.slice(0,3);j.useEffect(()=>(document.body.classList.add("shop-cart-bg"),()=>document.body.classList.remove("shop-cart-bg")),[]);const be=t.some(s=>s.category!=="emote"),{data:D}=Pe({queryKey:["upsell-listings"],queryFn:()=>Ke({first:40}),staleTime:6e4}),{data:T}=Ee(c),W=Te(),U=Se(),{state:I}=Ie(),[Z,B]=j.useState(null),[pe,C]=j.useState(null),[ee,z]=j.useState(null),[xe,L]=j.useState(!1),[g,F]=j.useState(null),se=j.useRef(0),[d,w]=j.useState(null),[V,ae]=j.useState(""),je=t.reduce((s,n)=>s+n.priceCredits*n.quantity,0),te=t.reduce((s,n)=>s+n.quantity,0),ke=g?g.liveTotalCredits:je,fe=new Set(t.map(s=>s.id)),ce=((D==null?void 0:D.items)??[]).filter(s=>!fe.has(s.id)).slice(0,12),ge=new Map(g==null?void 0:g.buyable.map(s=>[s.item.id,s])),Q=(T==null?void 0:T.credits)??0,ve=Fe;function $(s){s(),F(null),z(null),C(null)}function Ne(){w(null),L(!1)}function re(s){const n=_e(s),o=Math.max(0,n-Q),x=_.find(u=>u.credits>=o)??_[_.length-1];ae(x.id),O("Shop Buy Credits Prompted",{from:"cart_checkout",credits_needed:n,credits_balance:Q,shortfall:o}),w({phase:"nofunds",lines:s.map(u=>({item:u.item,priceCredits:u.priceCredits,quantity:u.quantity})),shortfall:o}),L(!1)}async function Ce(s){if(!c||s.length===0)return;const n=ds(s),o=n.map(i=>({...i.item,priceCredits:i.priceCredits})),x=s.map(i=>({...i.item,priceCredits:i.priceCredits,quantity:i.quantity})),u=[];let v="authorize",K=!1;w({phase:"processing",step:1,total:n.length});try{const i=[];for(let h=0;h<n.length;h++){const y=n[h];w({phase:"processing",step:h+1,total:n.length});try{const{credit:b,maxCreditedValue:H}=await ze(c.identity,y.usdCents,y.trade.id);u.push(b.id),i.push({trade:y.trade,credits:[b],maxCreditedValue:H})}catch(b){if(es(b)){if(u.length){try{await de(c.identity,u)}catch(H){A(H,{flow:"cart_checkout",step:"release"})}W.invalidateQueries({queryKey:["usd-balance"]})}re(s);return}throw b}}v="submit";let m=[];if(Oe())try{m=await Ge({purchases:i,buyer:c.address,signer:c.signer});const y=(await Promise.allSettled(m.map(b=>Je(b)))).flatMap(b=>b.status==="rejected"?[b.reason]:[]);if(y.length&&!y.some(b=>b instanceof De))throw y[0];K=!0}catch(h){if(!(h instanceof Ve))throw h;m=await he({purchases:i,buyer:c.address,signer:c.signer})}else m=await he({purchases:i,buyer:c.address,signer:c.signer});s.forEach(h=>r(h.item.id)),F(null),O("Shop Completed Purchase",{...Qe(o),payment_type:"credits",no_crypto_step:K,transaction_hash:m[0]??null}),W.invalidateQueries({queryKey:["usd-balance"]}),w({phase:"complete",purchased:x})}catch(i){if(ue(i)||A(i,{flow:"cart_checkout",step:v,cart_size:s.length}),O(ue(i)?"Shop Purchase Cancelled":"Shop Purchase Failed",{step:v,error_code:$e(i),value_usd:ie(o.reduce((m,h)=>m+h.priceCredits,0)),cart_size:n.length}),u.length){try{await de(c.identity,u)}catch(m){A(m,{flow:"cart_checkout",step:"release"})}W.invalidateQueries({queryKey:["usd-balance"]})}w({phase:"error",message:me(i)})}}function ne(s){const n=_e(s);if(T!=null&&T.credits<n){re(s);return}Ce(s)}async function Y(){if(!c){C(a("buyModal.signInToCheckout"));return}const s=N.getState().items;if(s.length===0)return;C(null),z(null),L(!0);const n=s.reduce((o,x)=>o+x.priceCredits*x.quantity,0);O("Shop Started Checkout",{cart_size:s.length,cart_value_credits:n,cart_value_usd:ie(n),has_sufficient_credits:Q>=n});try{B(a("cart.status.reviewing"));const o=await Ye(s,c.address,ve),x=[...o.unavailable,...o.own];if(x.length&&(x.forEach(u=>r(u.id)),z(is(o))),o.buyable.length===0){C(a("cart.error.noneAvailable")),F(null),B(null);return}if(o.orderChanged){F(o),se.current=Date.now(),B(null);return}B(null),ne(o.buyable)}catch(o){A(o,{flow:"cart_checkout",step:"review",cart_size:s.length}),C(me(o)),B(null)}finally{L(!1)}}async function we(){if(g){if(!c){C(a("buyModal.signInToCheckout"));return}if(Date.now()-se.current>os){F(null),z(null),await Y();return}C(null),ne(g.buyable)}}async function Me(){if(V){try{sessionStorage.setItem(G,JSON.stringify(N.getState().items))}catch{}L(!0);try{const s=await Xe(V,c?{address:c.address,identity:c.identity}:void 0);if(s.url){window.location.href=s.url;return}U("/credits")}catch(s){try{sessionStorage.removeItem(G)}catch{}A(s,{flow:"cart_buy_credits"}),w({phase:"error",message:a("buyModal.error.creditsCheckout")})}finally{L(!1)}}}const oe=j.useRef(!1);j.useEffect(()=>{if(!(I!=null&&I.resumeCheckout)||oe.current)return;oe.current=!0;try{const n=sessionStorage.getItem(G);if(n){sessionStorage.removeItem(G);const o=JSON.parse(n);Array.isArray(o)&&o.length&&P(o)}}catch{}W.invalidateQueries({queryKey:["usd-balance"]});const s=setTimeout(()=>void Y(),0);return()=>clearTimeout(s)},[I==null?void 0:I.resumeCheckout]);const M=xe||(d==null?void 0:d.phase)==="processing";return t.length===0&&!d?e.jsxs("div",{className:"cart cart--empty",children:[e.jsx(q,{name:"cart",size:44,color:"var(--muted-2)"}),e.jsx("p",{className:"cart-empty__title",children:a("cart.empty.title")}),e.jsx("p",{className:"muted",children:a("cart.empty.body")}),e.jsx(ns,{as:X,to:"/assets",variant:"purple",children:a("cart.empty.cta")})]}):e.jsxs("div",{className:"checkout",children:[e.jsxs("button",{className:"checkout__back",onClick:()=>U(-1),type:"button",children:[e.jsx(q,{name:"arrow-left"}),a("nav.cart")]}),e.jsxs("div",{className:"checkout__body",children:[e.jsxs("section",{className:"checkout__panel",children:[e.jsxs("div",{className:"checkout__panel-head",children:[e.jsx("button",{className:"checkout__panel-back",onClick:()=>U(-1),type:"button","aria-label":a("cart.goBack"),children:e.jsx(q,{name:"arrow-left"})}),e.jsx("h1",{className:"checkout__panel-title",children:a("cart.panelTitle",{count:te})}),be?e.jsxs("button",{className:"checkout__fitting",onClick:()=>E(!0),disabled:M,children:[e.jsx(q,{name:"fitting-room"}),a("cart.fittingRoom")]}):null]}),e.jsx("div",{className:"checkout__list",children:t.map(s=>{const n=ge.get(s.id),o=n?n.priceCredits:s.priceCredits,x=!!n&&n.priceCredits!==s.priceCredits,u=!s.tokenId,v=s.quantity,K=typeof s.available=="number"&&v>=s.available,i=o*v,m=!!f[s.id],h=s.tokenId??s.itemId,y=s.contractAddress&&h?`/item/${s.contractAddress}/${h}`:null;return e.jsxs("div",{className:"checkout__card",children:[e.jsxs("div",{className:"checkout__thumb",children:[y?e.jsx(X,{className:"checkout__thumb-link",to:y,state:{item:s,tradeId:s.tradeId},"aria-label":s.name,children:s.thumbnail?e.jsx("img",{src:s.thumbnail,alt:s.name}):null}):s.thumbnail?e.jsx("img",{src:s.thumbnail,alt:s.name}):null,e.jsx("span",{className:"checkout__thumb-check","aria-hidden":!0,children:e.jsx("svg",{viewBox:"0 0 20 20",width:"12",height:"12",children:e.jsx("path",{d:"M5 10.5l3 3 7-7.5",fill:"none",stroke:"#fff",strokeWidth:"2.4",strokeLinecap:"round",strokeLinejoin:"round"})})})]}),e.jsxs("div",{className:"checkout__info",children:[e.jsxs("div",{className:"checkout__desc",children:[y?e.jsx(X,{className:"checkout__name",to:y,state:{item:s,tradeId:s.tradeId},title:s.name,children:s.name}):e.jsx("div",{className:"checkout__name",title:s.name,children:s.name}),s.creator?e.jsx(Be,{address:s.creator,className:"checkout__creator",linkToProfile:!0}):null]}),e.jsxs("div",{className:"checkout__foot",children:[u?e.jsxs("div",{className:"checkout__stepper",children:[e.jsx("button",{className:"checkout__step",onClick:()=>$(()=>l(s.id)),disabled:M||v<=1,"aria-label":a("cart.decreaseQuantity",{name:s.name}),children:e.jsx("svg",{viewBox:"0 0 16 16",fill:"none","aria-hidden":!0,focusable:"false",children:e.jsx("path",{d:"M3.5 8h9",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round"})})}),e.jsx("span",{className:"checkout__qty",children:v}),e.jsx("button",{className:"checkout__step",onClick:()=>$(()=>p(s.id)),disabled:M||K,"aria-label":a("cart.increaseQuantity"),children:e.jsx("svg",{viewBox:"0 0 16 16",fill:"none","aria-hidden":!0,focusable:"false",children:e.jsx("path",{d:"M8 3.5v9M3.5 8h9",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round"})})})]}):null,e.jsxs("div",{className:"checkout__price",children:[e.jsx(S,{className:"checkout__price-ico"})," ",i,x?e.jsx("span",{className:"checkout__price-was",children:s.priceCredits*v}):null]})]})]}),e.jsxs("div",{className:"checkout__actions",children:[e.jsx("button",{className:`checkout__fav${m?" is-on":""}`,onClick:()=>J(s),"aria-label":m?a("cart.removeFromFavorites",{name:s.name}):a("cart.addToFavorites",{name:s.name}),title:m?a("assetCard.removeFromFavorites"):a("assetCard.addToFavorites"),children:e.jsx(q,{name:m?"heart-solid":"heart"})}),e.jsx("button",{className:"checkout__remove",onClick:()=>$(()=>r(s.id)),disabled:M,"aria-label":a("cart.remove",{name:s.name}),title:a("cart.removeTitle"),children:e.jsx(q,{name:"trash",size:24})})]})]},s.id)})}),e.jsxs("div",{className:"checkout__utils",children:[e.jsx("button",{className:"link",onClick:()=>$(k),disabled:M,children:a("cart.clearCart")}),null]})]}),e.jsxs("aside",{className:"checkout__summary",children:[e.jsx("h2",{className:"checkout__summary-title",children:a("cart.purchaseSummary")}),e.jsxs("div",{className:"checkout__summary-body",children:[e.jsxs("div",{className:"checkout__total-line",children:[e.jsx("span",{className:"checkout__total-label",children:a("cart.totalItems",{count:te})}),e.jsxs("span",{className:"checkout__total-value",children:[e.jsx(S,{className:"checkout__total-ico"})," ",ke]})]}),e.jsx("button",{className:"checkout__cta",onClick:()=>void(g?we():Y()),disabled:M,children:M?a("cart.working"):g?a("marketCheckout.confirmPurchase"):a("assetCard.buyNow")}),g?e.jsx("p",{className:"muted checkout__msg",children:a("cart.priceChanged")}):null,ee?e.jsx("p",{className:"muted checkout__msg",children:ee}):null,Z?e.jsx("p",{className:"muted checkout__msg",children:Z}):null,e.jsx(ye,{message:pe,className:"checkout__msg"})]})]})]}),ce.length>0?e.jsx("div",{className:"cart-upsell",children:e.jsx(ss,{title:a("cart.youMightAlsoLike"),items:ce})}):null,d?e.jsx(as,{phase:d.phase,balanceCredits:Q,onClose:Ne,step:d.phase==="processing"?d.step:void 0,total:d.phase==="processing"?d.total:void 0,lines:d.phase==="nofunds"?d.lines:void 0,shortfallCredits:d.phase==="nofunds"?d.shortfall:void 0,packs:_,selectedPack:V,onSelectPack:ae,onBuyPacks:()=>void Me(),purchased:d.phase==="complete"?d.purchased:void 0,onMyAssets:()=>U("/assets?tab=mine"),onTryInWorld:()=>window.open(ls,"_blank","noopener"),message:d.phase==="error"?d.message:void 0}):null]})}export{ws as Cart};
@@ -1 +0,0 @@
1
- body.shop-cart-bg{background:var(--media)}.checkout{max-width:1510px;margin:0 auto}.checkout__back{display:inline-flex;align-items:center;gap:6px;margin:0 0 16px;padding:0;border:0;background:none;color:var(--text-2);font-size:14px;font-weight:600;letter-spacing:.02em;text-transform:uppercase;cursor:pointer;transition:color .15s ease}.checkout__back:hover{color:var(--accent)}.checkout__back .ico{width:18px;height:18px}.checkout__body{display:grid;grid-template-columns:minmax(0,1fr) 600px;gap:24px;align-items:start}.checkout__panel{min-width:0;background:#fff;box-shadow:0 1px 3px #1615180f;border-radius:16px;padding:24px}.checkout__panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:24px}.checkout__panel-back{display:none}.checkout__panel-title{margin:0;font-size:18px;font-weight:600;line-height:1.2;color:var(--text)}.checkout__fitting{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:40px;padding:0 12px;border:2px solid transparent;border-radius:8px;background:linear-gradient(#fff,#fff) padding-box,var(--amethyst) border-box;color:var(--accent);font-size:13px;font-weight:600;line-height:24px;letter-spacing:.46px;text-transform:uppercase;white-space:nowrap;cursor:pointer;transition:box-shadow .15s ease,filter .15s ease}.checkout__fitting:hover:not(:disabled){box-shadow:0 0 8px #a524b359}.checkout__fitting:active:not(:disabled){filter:brightness(.97)}.checkout__fitting:disabled{opacity:.55;cursor:default}.checkout__fitting-ico{width:24px;height:24px}.checkout__list{display:flex;flex-direction:column;gap:12px}.checkout__card{position:relative;display:flex;align-items:stretch;gap:12px;background:#fff;border:1px solid #cfcdd4;border-radius:12px;overflow:hidden}.checkout__thumb{position:relative;flex-shrink:0;width:137px;height:137px;background:var(--media);border-radius:12px;display:grid;place-items:center;overflow:hidden}.checkout__thumb-link{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center}.checkout__thumb img{width:83%;height:83%;object-fit:contain;filter:drop-shadow(.56px 2.25px 2.8px rgba(0,0,0,.1))}.checkout__thumb-check{position:absolute;top:7.5px;left:7.5px;width:20px;height:20px;border-radius:50%;background:#34ce77;display:grid;place-items:center}.checkout__info{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:space-between;gap:8px;padding:16px 8px}.checkout__desc{display:flex;flex-direction:column;gap:4px;min-width:0;padding-right:64px}.checkout__name{display:block;font-size:16px;font-weight:600;line-height:1.2;color:var(--text);text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}a.checkout__name:hover{color:var(--accent)}.checkout__creator{font-size:10px;line-height:1.43;color:var(--muted)}.checkout__creator [data-avatar]{display:none}.checkout__creator [data-testid=creator-name]{font-size:10px;line-height:1.43}.checkout__foot{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-right:8px}.checkout__stepper{display:inline-flex;align-items:center;gap:8px;padding:6px;border:.5px solid var(--muted-2);border-radius:50px}.checkout__step{display:grid;place-items:center;width:16px;height:16px;padding:0;border:0;background:none;color:var(--text);cursor:pointer}.checkout__step:disabled{color:var(--muted-2);cursor:default}.checkout__step svg{width:16px;height:16px}.checkout__qty{min-width:12px;font-size:14px;font-weight:500;line-height:1.2;color:var(--text);text-align:center}.checkout__price{display:inline-flex;align-items:center;gap:4px;font-size:24px;font-weight:600;color:var(--text-2)}.checkout__price-ico{width:24px;height:24px;background:var(--accent)}.checkout__price-was{margin-left:6px;font-size:14px;font-weight:500;color:var(--muted);text-decoration:line-through}.checkout__actions{position:absolute;top:10px;right:10px;display:flex;align-items:center;gap:12px}.checkout__fav,.checkout__remove{display:grid;place-items:center;width:24px;height:24px;padding:0;border:0;background:none;color:var(--muted);cursor:pointer;transition:color .12s ease}.checkout__fav:hover:not(:disabled){color:var(--text)}.checkout__fav.is-on{color:var(--dcl-red)}.checkout__remove:hover:not(:disabled){color:var(--dcl-red)}.checkout__fav:disabled,.checkout__remove:disabled{opacity:.5;cursor:default}.checkout__utils{display:flex;gap:20px;margin-top:16px}.checkout__utils .link{font-size:13px;color:var(--muted);font-weight:600}.checkout__utils .link:hover:not(:disabled){color:var(--text)}.checkout__summary{position:sticky;top:172px;display:flex;flex-direction:column;background:#fff;box-shadow:0 1px 3px #1615180f;border-radius:16px;padding:16px}.checkout__summary-title{margin:0 0 16px;padding-bottom:16px;border-bottom:1px solid #cfcdd4;font-size:20px;font-weight:600;color:var(--text)}.checkout__summary-body{display:flex;flex-direction:column;gap:12px}.checkout__total-line{display:flex;align-items:center;justify-content:space-between;gap:12px}.checkout__total-label{font-size:14px;font-weight:600;color:#5e5b67}.checkout__total-value{display:inline-flex;align-items:center;gap:8px;font-size:24px;font-weight:700;color:var(--text)}.checkout__total-ico{width:24px;height:24px;background:var(--accent)}.checkout__cta{width:100%;height:56px;border:0;border-radius:8px;background:var(--amethyst);color:var(--soft-white);font-size:15px;font-weight:600;letter-spacing:.046em;text-transform:uppercase;cursor:pointer;transition:background .15s ease,filter .15s ease}.checkout__cta:hover:not(:disabled){background:var(--accent)}.checkout__cta:active:not(:disabled){filter:brightness(.95)}.checkout__cta:disabled{opacity:.6;cursor:default}.checkout__msg{margin:0;font-size:13px}.cart-upsell{margin-top:8px}@media(max-width:1080px){.checkout__body{grid-template-columns:1fr}.checkout__summary{position:static}}@media(max-width:880px){.checkout{padding-bottom:188px}.checkout__back{display:none}.checkout__panel{padding:16px}.checkout__panel-head{margin-bottom:16px;gap:8px}.checkout__panel-back{display:inline-flex;align-items:center;flex-shrink:0;border:0;background:none;padding:0;color:var(--text);cursor:pointer}.checkout__panel-back .ico{width:20px;height:20px}.checkout__panel-title{flex:1;min-width:0;font-size:16px}.checkout__fitting{height:36px;padding:0 10px;font-size:12px}.checkout__fitting-ico{width:20px;height:20px}.checkout__thumb{width:120px;height:120px}.checkout__info{padding:12px 4px 12px 0}.checkout__name{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical}.checkout__price{font-size:20px}.checkout__price-ico{width:20px;height:20px}.checkout__summary{position:fixed;left:0;right:0;top:auto;bottom:0;z-index:30;border:0;border-radius:16px 16px 0 0;box-shadow:0 -4px 20px #1615181f}.checkout__summary-title{margin-bottom:12px;padding-bottom:12px}}.cart-checkout__progress-row{display:flex;align-items:center;justify-content:center;gap:8px;width:100%}.cart-checkout__step{font-size:16px;line-height:22px;color:var(--text-2);text-transform:capitalize;white-space:nowrap}.cart-checkout__scroll{display:flex;flex-direction:column;gap:8px;max-height:360px;overflow-y:auto;width:100%;scrollbar-width:thin;scrollbar-color:#a2a2a2 var(--media)}.cart-checkout__scroll::-webkit-scrollbar{width:8px}.cart-checkout__scroll::-webkit-scrollbar-track{background:var(--media);border-radius:10px}.cart-checkout__scroll::-webkit-scrollbar-thumb{background:#a2a2a2;border-radius:8px}.cart-checkout__done{display:flex;flex-direction:column;border:1px solid var(--muted-2);border-radius:16px;padding:24px}.cart-checkout__done-scroll{display:flex;flex-direction:column;gap:12px;max-height:320px;overflow-y:auto}.cart-checkout__done-row{display:flex;align-items:center;gap:12px}.cart-checkout__done-row+.cart-checkout__done-row{border-top:1px solid var(--line);padding-top:12px}.cart-checkout__done-thumb{position:relative;flex-shrink:0;width:96px;height:96px;background:var(--media);border:.13px solid var(--muted-2);border-radius:8px;display:grid;place-items:center;overflow:hidden}.cart-checkout__done-thumb img{width:83%;height:83%;object-fit:contain}.cart-checkout__done-check{position:absolute;top:6px;left:6px;width:20px;height:20px;border-radius:4px;background:var(--dcl-red);display:grid;place-items:center}.cart-checkout__done-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px;padding:8px;overflow:hidden}.cart-checkout__done-name{font-size:20px;font-weight:600;line-height:1.4;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cart-checkout__qty-tag{margin-left:6px;font-size:12px;font-weight:600;color:var(--muted)}.cart-checkout__done-creator{font-size:10px;line-height:1.43;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cart-checkout__done-price{display:inline-flex;align-items:center;gap:4px;flex-shrink:0;padding-right:4px;font-size:24px;font-weight:600;color:var(--text-2)}.cart-checkout__done-price-ico{width:24px;height:24px;background:var(--accent)}.cart-checkout__done-body{display:flex;flex-direction:column;gap:12px}.cart-checkout__done-body .buy-modal__success{flex-direction:row;align-items:center;gap:24px;padding:16px 24px}.cart-checkout__done-body .buy-modal__success-text{text-align:left;font-size:18px}.cart-checkout__done-body .buy-modal__btn{min-width:0}@media(max-width:600px){.cart-checkout__done-body .buy-modal__success{flex-direction:column;gap:12px;padding:16px}.cart-checkout__done-body .buy-modal__success-text{text-align:center}.cart-checkout__done{padding:16px}.cart-checkout__done-thumb{width:72px;height:72px}.cart-checkout__done-name{font-size:16px}.cart-checkout__done-price{font-size:20px}.cart-checkout__done-price-ico{width:20px;height:20px}}
@@ -1 +0,0 @@
1
- import{u as O,b as D,r as n,j as e}from"./react-C51i12iP.js";import{u as K,t as s,b as Y,m as $,v as g,h as d,z as R,w as A,C as q,o as z}from"./index-CnOiYeAk.js";import{R as G}from"./resume-buy-Bf0zIH7y.js";import{R as Q}from"./cart-checkout-BsPe3vsb.js";import{u as W,p as J,c as X,i as ee}from"./useCreditPacks-Q7ub-ShV.js";import{C as se}from"./CircularProgress-ApNcnq7N.js";import"./dcl-schemas-BICTSpB5.js";import"./sentry-DKBoGDXH.js";import"./ethers-BeFqf2KO.js";import"./intl-CBcMB1D2.js";const x="https://cdn.decentraland.org/@dcl/shop/0.1.0-29842935035.commit-a65be40/assets/pack-chips--HnOpf5U.webp",te="https://cdn.decentraland.org/@dcl/shop/0.1.0-29842935035.commit-a65be40/assets/credit-coin-CmcTCd5i.webp",re="data:image/svg+xml,%3csvg%20width='60'%20height='60'%20viewBox='0%200%2060%2060'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3crect%20width='60'%20height='60'%20rx='30'%20fill='%2334CE77'/%3e%3cpath%20d='M21.6583%2046.1067L11.4656%2036.0591C10.1688%2034.829%2010.1905%2032.7207%2011.4769%2031.4622L13.6868%2029.3591C14.9732%2028.1006%2017.1615%2028.1058%2018.4582%2029.3359L23.8747%2034.6197L41.9704%2015.6527C43.2568%2014.3942%2045.4291%2014.2093%2046.7258%2015.4394L48.8765%2017.3628C50.1732%2018.5929%2050.3491%2020.6844%2049.0626%2021.9429L26.6112%2045.8766C25.1433%2047.342%2022.955%2047.3368%2021.6583%2046.1067Z'%20fill='%23FCFCFC'/%3e%3c/svg%3e",ce="data:image/svg+xml,%3csvg%20width='61'%20height='61'%20viewBox='0%200%2061%2061'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cg%3e%3cpath%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M30.5%2061C47.3447%2061%2061%2047.3447%2061%2030.5C61%2013.6553%2047.3447%200%2030.5%200C13.6553%200%200%2013.6553%200%2030.5C0%2047.3447%2013.6553%2061%2030.5%2061Z'%20fill='url(%23gc_paint0)'/%3e%3cpath%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M12.2001%2054.8997C17.2935%2058.7274%2023.6375%2060.9997%2030.5%2060.9997C37.3625%2060.9997%2043.7065%2058.7274%2048.8%2054.8997H12.2001Z'%20fill='%23FF2D55'/%3e%3cpath%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M6.10013%2048.7997C7.83863%2051.1024%209.89738%2053.1612%2012.2001%2054.8997H48.8001C51.1029%2053.1612%2053.1616%2051.1024%2054.9001%2048.7997H6.10013Z'%20fill='%23FFA25A'/%3e%3cpath%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M40.9158%2042.6998H2.5468C3.4923%2044.8805%204.69705%2046.924%206.10005%2048.7997H40.9311V42.6998H40.9158Z'%20fill='%23FFC95B'/%3e%3cpath%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M21.6094%2019.8247V42.6997H40.6719L21.6094%2019.8247Z'%20fill='url(%23gc_paint1)'/%3e%3cpath%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M2.5468%2042.6997H21.6093V19.8248L2.5468%2042.6997Z'%20fill='%23FCFCFC'/%3e%3cpath%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M40.9158%2032.025V48.8H54.9L40.9158%2032.025Z'%20fill='url(%23gc_paint2)'/%3e%3cpath%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M26.9467%2048.8H40.9157V32.025L26.9467%2048.8Z'%20fill='%23FCFCFC'/%3e%3cpath%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M40.9158%2027.4497C45.127%2027.4497%2048.5408%2024.0359%2048.5408%2019.8247C48.5408%2015.6136%2045.127%2012.1998%2040.9158%2012.1998C36.7046%2012.1998%2033.2908%2015.6136%2033.2908%2019.8247C33.2908%2024.0359%2036.7046%2027.4497%2040.9158%2027.4497Z'%20fill='%23FFC95B'/%3e%3cpath%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M21.6092%2015.2497C23.7148%2015.2497%2025.4217%2013.5428%2025.4217%2011.4372C25.4217%209.33166%2023.7148%207.62475%2021.6092%207.62475C19.5036%207.62475%2017.7967%209.33166%2017.7967%2011.4372C17.7967%2013.5428%2019.5036%2015.2497%2021.6092%2015.2497Z'%20fill='%23FFC95B'/%3e%3c/g%3e%3cdefs%3e%3clinearGradient%20id='gc_paint0'%20x1='30.5'%20y1='-12.6335'%20x2='-12.6335'%20y2='30.5'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20stop-color='%23FF2D55'/%3e%3cstop%20offset='1'%20stop-color='%23FFBC5B'/%3e%3c/linearGradient%3e%3clinearGradient%20id='gc_paint1'%20x1='21.6029'%20y1='19.8247'%20x2='21.6029'%20y2='42.6997'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20stop-color='%23A524B3'/%3e%3cstop%20offset='1'%20stop-color='%23FF2D55'/%3e%3c/linearGradient%3e%3clinearGradient%20id='gc_paint2'%20x1='40.9111'%20y1='32.025'%20x2='40.9111'%20y2='48.8'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20stop-color='%23A524B3'/%3e%3cstop%20offset='1'%20stop-color='%23FF2D55'/%3e%3c/linearGradient%3e%3c/defs%3e%3c/svg%3e",C=ee()?"mock":"stripe",ae={pack_5:x,pack_10:x,pack_25:x,pack_50:x},ie="https://docs.decentraland.org";function P(o){const r=o;if((r==null?void 0:r.name)==="AbortError")return s("getCredits.errorCanceled");const p=((r==null?void 0:r.message)??"").toLowerCase();return p.includes("sign in")?s("getCredits.errorSignIn",{currency:d.name}):p.includes("timed out")?s("getCredits.errorTimeout",{currency:d.name}):s("getCredits.errorGeneric")}function xe(){K({title:s("nav.getCredits",{currency:d.name}),noindex:!0});const o=O(),{session:r,signIn:p}=Y(),i=$(),[v,w]=D(),{packs:H,isLoading:I}=W(),[m,l]=n.useState("select"),[a,S]=n.useState(null),[F,B]=n.useState(null),[U,h]=n.useState(null),[Z,j]=n.useState(!1),k=n.useRef(null);n.useEffect(()=>()=>{var t;return(t=k.current)==null?void 0:t.abort()},[]);const E=n.useCallback(()=>{w(t=>{const c=new URLSearchParams(t);return c.delete("order"),c.delete("canceled"),c},{replace:!0})},[w]),N=n.useCallback(async t=>{l("processing");const c=new AbortController;k.current=c;try{const u=await J(t,{signal:c.signal,address:r==null?void 0:r.address,identity:r==null?void 0:r.identity});if(u.status==="credited"){const f=u.creditsGranted??(a==null?void 0:a.credits)??0;B(f>0?f:null),l("success"),g("Shop Completed Buy Credits",{order_id:t,pack_usd:(a==null?void 0:a.usd)??null,credits:f>0?f:null,provider:C}),i.invalidateQueries({queryKey:["usd-balance"]});try{if(sessionStorage.getItem(Q)){o("/cart",{state:{resumeCheckout:!0}});return}}catch{}try{const L=sessionStorage.getItem(G);if(L){sessionStorage.removeItem(G);const _=JSON.parse(L),M=_.tokenId??_.itemId;if(_.contractAddress&&M){o(`/item/${_.contractAddress}/${M}`,{state:{item:_,resumeBuy:!0}});return}}}catch{}}else u.status==="pending"?(g("Shop Buy Credits Pending",{step:"grant",pack_usd:(a==null?void 0:a.usd)??null}),i.invalidateQueries({queryKey:["usd-balance"]}),l("pending")):(g("Shop Buy Credits Failed",{step:"grant",error_code:"grant_failed",pack_usd:(a==null?void 0:a.usd)??null}),h(u.error??s("getCredits.errorGrant",{currency:d.name})),l("error"))}catch(u){R(u,{flow:"get_credits",step:"grant",order_id:t}),g("Shop Buy Credits Failed",{step:"grant",error_code:A(u),pack_usd:(a==null?void 0:a.usd)??null}),h(P(u)),l("error")}},[a,r,i,o]),T=n.useCallback(async t=>{if(!r){p();return}h(null),j(!1),S(t),l(C==="mock"?"processing":"redirecting"),g("Shop Started Buy Credits",{pack_usd:t.usd,credits:t.credits,provider:C});try{const c=await X(t.id,{address:r.address,identity:r.identity});if(c.mock)N(c.orderId);else if(c.url)g("Shop Redirected To Stripe",{order_id:c.orderId,pack_usd:t.usd,credits:t.credits}),window.location.href=c.url;else throw new Error("Checkout did not return a redirect url")}catch(c){R(c,{flow:"get_credits",step:"checkout",provider:C}),g("Shop Buy Credits Failed",{step:"checkout",error_code:A(c),pack_usd:t.usd}),h(P(c)),l("error")}},[r,p,N]),y=n.useRef(!1);n.useEffect(()=>{if(y.current)return;const t=v.get("order");if(v.get("canceled")!=null){y.current=!0,g("Shop Buy Credits Cancelled",{order_id:t,provider:C}),E(),j(!0),l("select");return}t&&(l("processing"),r&&(y.current=!0,E(),N(t)))},[v,r]);function b(){var t;(t=k.current)==null||t.abort(),l("select"),S(null),B(null),h(null),j(!1)}const V=m==="select";return e.jsxs("div",{className:"getcredits",children:[V&&e.jsxs("header",{className:"getcredits__head",children:[e.jsx("h1",{className:"getcredits__title",children:s("getCredits.title",{currency:d.name})}),e.jsxs("p",{className:"getcredits__sub",children:[s("getCredits.subtitle",{currency:d.name})," ",e.jsxs("a",{className:"getcredits__learn",href:ie,target:"_blank",rel:"noreferrer",children:[s("getCredits.learnMore"),e.jsxs("svg",{className:"getcredits__learn-ico",viewBox:"0 0 13 13","aria-hidden":!0,fill:"none",children:[e.jsx("path",{d:"M4 2h7v7",stroke:"currentColor",strokeWidth:"1.6",strokeLinecap:"round",strokeLinejoin:"round"}),e.jsx("path",{d:"M11 2 2 11",stroke:"currentColor",strokeWidth:"1.6",strokeLinecap:"round",strokeLinejoin:"round"})]})]})]})]}),m==="select"&&e.jsxs(e.Fragment,{children:[Z&&e.jsx("p",{className:"getcredits__note muted",role:"status",children:s("getCredits.canceledNote")}),e.jsx(ne,{packs:H,loading:I,onSelect:t=>void T(t)})]}),m==="redirecting"&&e.jsxs("div",{className:"getcredits__status",role:"status","aria-live":"polite",children:[e.jsx(se,{size:32}),e.jsx("p",{className:"muted",children:s("getCredits.redirecting")})]}),m==="processing"&&e.jsxs("div",{className:"gc-processing",role:"status","aria-live":"polite",children:[e.jsx("img",{className:"gc-processing__logo",src:ce,alt:"",width:61,height:61}),e.jsxs("div",{className:"gc-processing__body",children:[e.jsxs("p",{className:"gc-processing__title",children:[e.jsx("strong",{children:s("getCredits.processing")}),"…"]}),e.jsxs("div",{className:"gc-progress","aria-hidden":!0,children:[e.jsx("span",{className:"gc-progress__track",children:e.jsx("span",{className:"gc-progress__fill"})}),e.jsx("span",{className:"gc-progress__count",children:"1/1"})]})]})]}),m==="success"&&e.jsxs("div",{className:"gc-success",role:"status","aria-live":"polite",children:[e.jsxs("div",{className:"gc-banner",children:[e.jsx("img",{className:"gc-banner__icon",src:re,alt:"",width:60,height:60}),e.jsxs("p",{className:"gc-banner__text",children:[e.jsx("strong",{children:s("getCredits.successTitle")})," ",s("getCredits.successBody",{currency:d.name})]})]}),F!=null&&e.jsx("div",{className:"gc-credits",children:e.jsxs("div",{className:"gc-credits__row",children:[e.jsx("img",{className:"gc-credits__coin",src:te,alt:"",width:93,height:93}),e.jsxs("p",{className:"gc-credits__text",children:[e.jsx(q,{className:"gc-credits__diamond"}),e.jsxs("span",{children:[e.jsx("strong",{className:"gc-credits__amount",children:s("getCredits.creditsAmount",{credits:F,currency:d.name})})," ",e.jsx("span",{className:"gc-credits__added",children:s("getCredits.creditsAdded")})]})]})]})}),e.jsxs("div",{className:"gc-actions",children:[e.jsx("button",{className:"gc-actions__btn gc-actions__btn--outline",onClick:b,children:s("getCredits.buyMore",{currency:d.name})}),e.jsx("button",{className:"gc-actions__btn gc-actions__btn--solid",onClick:()=>o("/assets"),children:s("getCredits.startShopping")})]})]}),m==="pending"&&e.jsxs("div",{className:"gc-status",role:"status","aria-live":"polite",children:[e.jsx("p",{className:"gc-status__title",children:s("getCredits.pendingTitle",{currency:d.name})}),e.jsx("p",{className:"muted",children:s("getCredits.pendingBody")}),e.jsxs("div",{className:"gc-status__actions",children:[e.jsx("button",{className:"gc-actions__btn gc-actions__btn--solid",onClick:()=>o("/assets"),children:s("getCredits.startShopping")}),e.jsx("button",{className:"gc-actions__btn gc-actions__btn--outline",onClick:b,children:s("getCredits.done")})]})]}),m==="error"&&e.jsxs("div",{className:"gc-status gc-status--err",role:"alert",children:[e.jsx("p",{className:"gc-status__title",children:s("getCredits.errorTitle")}),e.jsx("p",{className:"error",children:U}),e.jsx("div",{className:"gc-status__actions",children:e.jsx("button",{className:"gc-actions__btn gc-actions__btn--solid",onClick:b,children:s("getCredits.tryAgain")})})]})]})}function ne({packs:o,loading:r,onSelect:p}){return r?e.jsx("div",{className:"packs","aria-busy":"true","aria-label":s("getCredits.packsLoading",{currency:d.name}),children:[0,1,2,3].map(i=>e.jsx("div",{className:"pack pack--skeleton","aria-hidden":!0,children:e.jsxs("span",{className:"pack__inner",children:[e.jsx("span",{className:"skeleton pack__label-sk"}),e.jsx("span",{className:"skeleton pack__art-sk"}),e.jsx("span",{className:"skeleton pack__cta-sk"})]})},i))}):e.jsx("div",{className:"packs",children:o.map(i=>e.jsxs("button",{type:"button",className:`pack${i.bestValue?" pack--best":""}`,"data-testid":"pack",onClick:()=>p(i),"aria-label":s("getCredits.packAria",{amount:z(i.credits),usd:i.usd}),children:[i.bestValue&&e.jsx("span",{className:"pack__badge",children:s("getCredits.packBadge")}),e.jsxs("span",{className:"pack__inner",children:[e.jsx("span",{className:"pack__label",children:s("getCredits.creditsAmount",{credits:i.credits,currency:d.name})}),e.jsx("span",{className:"pack__art",children:e.jsx("img",{src:ae[i.id]??x,alt:"",loading:"lazy"})}),e.jsx("span",{className:"pack__cta-wrap",children:e.jsxs("span",{className:"pack__cta",children:["$",i.usd.toFixed(2)]})})]})]},i.id))})}export{xe as GetCredits,xe as default};
@@ -1,48 +0,0 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/index-BNnVKxqC.js","assets/react-C51i12iP.js","assets/dcl-schemas-BICTSpB5.js","assets/index-CnOiYeAk.js","assets/sentry-DKBoGDXH.js","assets/ethers-BeFqf2KO.js","assets/intl-CBcMB1D2.js","assets/index-eE-_qVda.css","assets/emotion-styled.browser.esm-Cj9DOOij.js","assets/useTheme-DLmJNPU6.js","assets/CircularProgress-ApNcnq7N.js","assets/index-CyKa-S56.js","assets/useTheme-3SpHG4Qk.js","assets/CssVarsProvider-D2zNKsxj.js","assets/getOverlayAlpha-yAmCaiXy.js","assets/index-2lvvWbBd.js","assets/colors-LINLm1ux.js"])))=>i.map(i=>d[i]);
2
- import{u as pe,r as o,j as e,d as na,a as da,L as ca}from"./react-C51i12iP.js";import{b as ye,l as oa,m as Ve,t,ac as ma,i as ua,j as ha,r as _a,n as te,v as H,w as Te,x as ue,ad as pa,z as _e,C as S,a8 as ie,_ as he,ah as ya,ak as ba,aj as xa,aA as fa,an as va,g as Qe,aB as ja,ag as re,s as z,aC as ga,aD as Na,aE as wa,ap as ka,a9 as Be,a as Re,c as T,aF as Ca,aG as Ia,aH as Aa,aI as Sa,aJ as Ma,ar as Pa,u as Ea,I as O,aK as Fa,aL as La,aM as Da,aa as Ta,aN as qe,aO as Ba,B as be,e as Ra,E as qa,au as $a,aP as Ka,aQ as Oa,av as Wa,aR as za,aS as Va}from"./index-CnOiYeAk.js";import{d as W}from"./dcl-schemas-BICTSpB5.js";import{b as $e,c as Qa}from"./buy-BlwZzU_E.js";import{S as Ua,P as Ga,f as Ha}from"./PrimaryListModal-BFbTQMIs.js";import{g as Ya,b as Ja,w as Za,S as Xa,G as et}from"./buy-gasless-B1VlH3HF.js";import{u as at,c as tt}from"./useCreditPacks-Q7ub-ShV.js";import{R as Ke}from"./resume-buy-Bf0zIH7y.js";import{a as st,f as Oe,i as it}from"./errors-p2bFnwUF.js";import{E as Ue}from"./ErrorNotice-C7soUjRV.js";import{C as rt}from"./CircularProgress-ApNcnq7N.js";import{u as lt,M as nt}from"./MarketCheckout-CI0IRHEV.js";import{s as dt}from"./address-DrURAr9O.js";import{C as ct}from"./CollectionCarousel-C5GeFa_Y.js";import"./sentry-DKBoGDXH.js";import"./ethers-BeFqf2KO.js";import"./intl-CBcMB1D2.js";import"./trade-encoding-Bkk79sDB.js";import"./index-HN6Rk25C.js";import"./wallet-kind-B9P1TeIH.js";import"./mana-rate-C9OeZ3I-.js";function ot({item:r,onClose:u,resume:i=!1}){var J,Z;const{session:h}=ye(),{data:c}=oa(h),_=Ve(),g=pe(),b=at().packs.slice(0,3),[n,l]=o.useState("loading"),[a,N]=o.useState(null),[k,j]=o.useState(""),[B,R]=o.useState(r.priceCredits),[x,q]=o.useState(null),M=o.useRef(null),C=(x==null?void 0:x.credits)??B,Y=(c==null?void 0:c.credits)??0;o.useEffect(()=>{let d=!1;if(!h){l("error"),N(t("buyModal.signInToCheckout"));return}const f=m=>{const v=m-((c==null?void 0:c.credits)??0),p=b.find(E=>E.credits>=v)??b[b.length-1];j(p.id),H("Shop Buy Credits Prompted",{from:"item_checkout",credits_needed:m,credits_balance:(c==null?void 0:c.credits)??0,shortfall:Math.max(0,v)}),l("nofunds")};return(async()=>{var m,v;try{const p=await ma(r);if(!p)throw new Error("not for sale");if(ua(p,h.address))throw new Error("You can't buy your own listing.");const E=ha((v=(m=p.received)==null?void 0:m[0])==null?void 0:v.amount);if(!Number.isFinite(E)||E<=0)throw new Error("price unavailable");const $=Math.ceil(E/10);if(d)return;if(R($),c!=null&&c.credits<$){f($);return}try{const{credit:w,maxCreditedValue:Q,usdCents:D}=await _a(h.identity,E,p.id);if(d){te(h.identity,[w.id]).catch(()=>{});return}M.current=w.id;const X=Math.ceil(D/10);R(X);const K={trade:p,credit:w,maxCreditedValue:Q,usdCents:D,credits:X};q(K),i?V(K):l("ready")}catch(w){if(d)return;if(st(w)){f($);return}throw w}}catch(p){if(d)return;H(ue(p)?"Shop Purchase Cancelled":"Shop Purchase Failed",{step:"authorize",error_code:Te(p)}),l("error"),N(Oe(p,t("buyModal.error.generic"),{sale:!0}))}})(),()=>{d=!0,M.current&&h&&(te(h.identity,[M.current]).catch(()=>{}),M.current=null)}},[]);async function V(d=x){if(!h||!d)return;l("processing"),N(null);let f=!1;try{const m={trade:d.trade,buyer:h.address,signer:h.signer,credits:[d.credit],maxCreditedValue:d.maxCreditedValue};let v;if(Ya())try{v=await Ja(m),await Za(v),f=!0}catch(p){if(p instanceof Xa)f=!0;else if(p instanceof et)v=await $e(m);else throw p}else v=await $e(m);M.current=null,H("Shop Completed Purchase",{...pa([r]),payment_type:"credits",no_crypto_step:f,transaction_hash:v??null}),_.invalidateQueries({queryKey:["usd-balance"]}),l("complete")}catch(m){ue(m)||_e(m,{flow:"buy",step:"submit",gasless:f}),te(h.identity,[d.credit.id]).catch(()=>{}),M.current=null,H(ue(m)?"Shop Purchase Cancelled":"Shop Purchase Failed",{step:"submit",error_code:Te(m)}),_.invalidateQueries({queryKey:["usd-balance"]}),N(Oe(m,t("buyModal.error.generic"),{sale:!0})),l("error")}}async function le(){if(!(!k||!h)){try{sessionStorage.setItem(Ke,JSON.stringify(r))}catch{}x&&te(h.identity,[x.credit.id]).catch(()=>{}),M.current=null,l("loading");try{const d=await tt(k,{address:h.address,identity:h.identity});if(d.url){window.location.href=d.url;return}g("/credits")}catch(d){_e(d,{flow:"buy_credits_and_item"});try{sessionStorage.removeItem(Ke)}catch{}N(t("buyModal.error.creditsCheckout")),l("error")}}}const L=n==="processing",P=n==="complete"?t("buyModal.titleComplete"):n==="nofunds"?t("buyModal.titleNoFunds"):t("buyModal.titleBuy");return e.jsxs("div",{className:"buy-modal",role:"dialog","aria-modal":"true","aria-label":t("buyModal.dialogAria",{name:r.name}),children:[e.jsx("div",{className:"buy-modal__scrim",onClick:L?void 0:u,"aria-hidden":!0}),e.jsxs("div",{className:`buy-modal__card${n==="processing"||n==="loading"?" buy-modal__card--tall":""}`,children:[e.jsxs("div",{className:"buy-modal__head",children:[e.jsxs("div",{className:"buy-modal__head-row",children:[e.jsx("h2",{className:"buy-modal__title",children:P}),!L&&e.jsx("button",{className:"buy-modal__x",onClick:u,"aria-label":t("buyModal.close"),children:e.jsx("svg",{viewBox:"0 0 18 18",width:"18",height:"18","aria-hidden":!0,children:e.jsx("path",{d:"M4 4l10 10M14 4L4 14",stroke:"#161518",strokeWidth:"1.8",strokeLinecap:"round"})})})]}),e.jsxs("div",{className:"buy-modal__balance",children:[e.jsx("span",{className:"buy-modal__balance-label",children:n==="nofunds"?t("buyModal.dclBalance"):t("buyModal.myCreditsBalance")}),e.jsx(S,{className:"buy-modal__balance-ico"}),e.jsx("span",{className:"buy-modal__balance-value",children:ie(Y)})]})]}),n==="loading"&&e.jsx("div",{className:"buy-modal__body buy-modal__processing",children:e.jsx(rt,{size:44})}),n==="error"&&e.jsxs("div",{className:"buy-modal__body",children:[e.jsx(Ue,{message:a}),e.jsx("div",{className:"buy-modal__ctas",children:e.jsx("button",{className:"buy-modal__btn buy-modal__btn--gradient",onClick:u,children:t("buyModal.close")})})]}),n==="nofunds"&&e.jsxs("div",{className:"buy-modal__body",children:[e.jsxs("div",{className:"buy-modal__warning",children:[e.jsxs("svg",{viewBox:"0 0 24 24",width:"24",height:"24","aria-hidden":!0,className:"buy-modal__warning-ico",children:[e.jsx("path",{d:"M12 3L2 20h20L12 3z",fill:"none",stroke:"#691fa9",strokeWidth:"1.8",strokeLinejoin:"round"}),e.jsx("path",{d:"M12 9v5",stroke:"#691fa9",strokeWidth:"1.8",strokeLinecap:"round"}),e.jsx("circle",{cx:"12",cy:"17",r:"1.1",fill:"#691fa9"})]}),e.jsxs("p",{className:"buy-modal__warning-text",children:[e.jsx("b",{children:t("buyModal.insufficientFunds")})," ",t("buyModal.warningNeedToBuy")," ",e.jsx("b",{children:t("buyModal.warningCreditsAmount",{count:Math.max(0,C-Y)})})," ",t("buyModal.warningToPurchase",{count:1})]})]}),e.jsx(We,{item:r,priceCredits:C}),e.jsx("div",{className:"buy-modal__packs",children:b.map(d=>{const f=d.credits,m=d.id===k;return e.jsxs("button",{className:`buy-modal__pack${m?" buy-modal__pack--on":""}`,onClick:()=>j(d.id),children:[e.jsx(S,{className:"buy-modal__pack-ico"}),e.jsx("span",{className:"buy-modal__pack-amount",children:ie(f)}),e.jsxs("span",{className:"buy-modal__pack-usd",children:["($",d.usd.toFixed(2),")"]})]},d.id)})}),e.jsxs("div",{className:"buy-modal__total",children:[e.jsxs("div",{className:"buy-modal__total-credits",children:[e.jsx(S,{className:"buy-modal__total-ico"}),e.jsx("span",{children:ie(((J=b.find(d=>d.id===k))==null?void 0:J.credits)??0)})]}),e.jsxs("span",{className:"buy-modal__total-usd",children:["$",(((Z=b.find(d=>d.id===k))==null?void 0:Z.usd)??0).toFixed(2)]})]}),e.jsxs("div",{className:"buy-modal__ctas",children:[e.jsx("button",{className:"buy-modal__btn buy-modal__btn--outline",onClick:u,children:t("buyModal.cancel")}),e.jsx("button",{className:"buy-modal__btn buy-modal__btn--gradient",onClick:()=>void le(),children:t("buyModal.buy")})]})]}),n==="ready"&&e.jsxs("div",{className:"buy-modal__body",children:[e.jsx(We,{item:r,priceCredits:C}),e.jsx("div",{className:"buy-modal__ctas",children:e.jsx("button",{className:"buy-modal__btn buy-modal__btn--gradient buy-modal__btn--full",onClick:()=>void V(),children:t("buyModal.buy")})})]}),n==="processing"&&e.jsxs("div",{className:"buy-modal__body buy-modal__processing",children:[e.jsx("img",{className:"buy-modal__logo",src:"/icon-192.png",alt:"",width:61,height:61}),e.jsx("div",{className:"buy-modal__processing-text",children:i?t("buyModal.completingPurchase"):t("buyModal.completingTransaction")}),e.jsx("div",{className:"buy-modal__progress","aria-hidden":!0,children:e.jsx("span",{className:"buy-modal__progress-fill"})})]}),n==="complete"&&e.jsxs("div",{className:"buy-modal__body",children:[e.jsxs("div",{className:"buy-modal__success",children:[e.jsxs("svg",{viewBox:"0 0 64 64",width:"64",height:"64","aria-hidden":!0,children:[e.jsx("circle",{cx:"32",cy:"32",r:"32",fill:"#34ce74"}),e.jsx("path",{d:"M20 33l8 8 16-18",fill:"none",stroke:"#fff",strokeWidth:"5",strokeLinecap:"round",strokeLinejoin:"round"})]}),e.jsxs("p",{className:"buy-modal__success-text",children:[e.jsx("b",{children:t("getCredits.successTitle")})," ",t("buyModal.successBody")]})]}),e.jsxs("div",{className:"buy-modal__ctas",children:[e.jsx("button",{className:"buy-modal__btn buy-modal__btn--outline",onClick:()=>g("/assets?tab=mine"),children:t("buyModal.myAssets")}),e.jsxs("button",{className:"buy-modal__btn buy-modal__btn--ruby",onClick:u,children:[t("buyModal.tryInWorld"),e.jsx("svg",{viewBox:"0 0 24 24",width:"20",height:"20","aria-hidden":!0,children:e.jsx("path",{d:"M5 12h12M13 7l5 5-5 5",fill:"none",stroke:"#fcfcfc",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})]})]})]})]})]})}function We({item:r,priceCredits:u}){return e.jsxs("div",{className:"buy-modal__asset",children:[e.jsx("div",{className:"buy-modal__asset-thumb",children:r.thumbnail?e.jsx("img",{src:r.thumbnail,alt:""}):null}),e.jsxs("div",{className:"buy-modal__asset-info",children:[e.jsxs("div",{children:[e.jsx("div",{className:"buy-modal__asset-name",title:r.name,children:r.name||t("buyModal.itemFallback")}),r.creator?e.jsx("div",{className:"buy-modal__asset-creator",children:t("search.byCreator",{name:r.creator})}):null]}),e.jsxs("div",{className:"buy-modal__asset-price",children:[e.jsx(S,{className:"buy-modal__asset-price-ico"}),e.jsx("span",{children:ie(u)})]})]})]})}const mt=o.lazy(async()=>{const[{EmoteControls:r},{Experimental_CssVarsProvider:u},{light:i}]=await Promise.all([he(()=>import("./index-BNnVKxqC.js").then(h=>h.i),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10])),he(()=>import("./index-CyKa-S56.js"),__vite__mapDeps([11,3,1,2,4,5,6,7,12,9,13,14])),he(()=>import("./index-2lvvWbBd.js"),__vite__mapDeps([15,3,1,2,4,5,6,7,16,14,13,9]))]);return{default:h=>e.jsx(u,{theme:i,children:e.jsx(r,{...h})})}});function ut(r){return e.jsx(o.Suspense,{fallback:null,children:e.jsx(mt,{...r})})}function ht({item:r}){const u=ye(x=>{var q;return(q=x.session)==null?void 0:q.address}),{data:i,isLoading:h}=ya(u),c=u&&i?u:"default",_=r.category==="emote",[g,b]=o.useState("item"),n=!_&&g==="item",l=n||!h,[a,N]=o.useState(!0);o.useEffect(()=>{N(!0)},[r.id,n]);const k=!!u&&!!i,j=k&&ba(r,xa(i)),B=fa(r)[0],R=k&&!j&&!_;return e.jsxs(e.Fragment,{children:[l?e.jsx(va,{id:"shop-item-preview",contractAddress:r.contractAddress,tokenId:r.tokenId??void 0,itemId:r.tokenId?void 0:r.itemId??void 0,profile:n?void 0:j?c:"default",bodyShape:n||j?void 0:B,type:_?void 0:n?W.PreviewType.WEARABLE:W.PreviewType.AVATAR,emote:_||n?void 0:W.PreviewEmote.FASHION,disableBackground:!0,wheelZoom:_?1.5:void 0,wheelStart:_?100:void 0,dev:Qe.chainId===80002,onLoad:()=>N(!1)}):null,!l||a?e.jsx("div",{className:"item-preview__loading","aria-busy":"true","aria-label":t("itemPreview.loading"),children:e.jsx("span",{className:"item-preview__spinner","aria-hidden":!0})}):null,R&&!n?e.jsx("p",{className:"item-preview__note",children:t("itemPreview.shownOnBody",{shape:ja(B)})}):null,_?e.jsx("div",{className:"item-preview__emote-controls","data-testid":"emote-controls",children:e.jsx(ut,{wearablePreviewId:"shop-item-preview",hideFrameInput:!0})}):e.jsxs("div",{className:"item-preview__toggle",role:"group","aria-label":t("itemPreview.previewMode"),children:[e.jsxs("button",{type:"button",className:g==="avatar"?"is-active":"","aria-pressed":g==="avatar","aria-label":t("itemPreview.onAvatar"),onClick:()=>b("avatar"),children:[e.jsxs("svg",{className:"item-preview__toggle-ico",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":!0,children:[e.jsx("circle",{cx:"12",cy:"7.5",r:"4"}),e.jsx("path",{d:"M4 20c0-4.2 3.6-6.5 8-6.5s8 2.3 8 6.5v.5H4z"})]}),e.jsx("span",{className:"item-preview__toggle-label",children:t("itemPreview.onAvatar")})]}),e.jsxs("button",{type:"button",className:g==="item"?"is-active":"","aria-pressed":g==="item","aria-label":t("itemPreview.item"),onClick:()=>b("item"),children:[e.jsx("svg",{className:"item-preview__toggle-ico",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":!0,children:e.jsx("path",{d:"M8.5 3 3 6l1.8 3.8 2.2-1V21h10V8.8l2.2 1L22 6l-5.5-3a2.6 2.6 0 0 1-4.5 1.4A2.6 2.6 0 0 1 8.5 3z"})}),e.jsx("span",{className:"item-preview__toggle-label",children:t("itemPreview.item")})]})]})]})}const _t=z(ga)`
3
- display: flex;
4
- flex-direction: column;
5
- overflow: hidden;
6
- gap: 1px;
7
- background: ${re.colors.lineStrong};
8
- `;function pt({contractAddress:r,name:u,items:i,className:h}){const c=pe();if(!r||!u)return null;const _=(i??[]).map(n=>n.thumbnail).filter(n=>!!n).slice(0,4),g=_.slice(0,2),b=_.slice(2,4);return e.jsxs(Na,{as:"button","data-link":!0,className:h,"data-testid":"creator",onClick:n=>{n.stopPropagation(),c(`/collection/${r}`)},children:[_.length>0?e.jsxs(_t,{as:"span","data-avatar":!0,"data-testid":"creator-ava","aria-hidden":!0,children:[e.jsx("span",{className:`collection-collage__row${b.length===0?" collection-collage__row--full":""}`,children:g.map((n,l)=>e.jsx("img",{src:n,alt:""},l))}),b.length>0?e.jsx("span",{className:"collection-collage__row",children:b.map((n,l)=>e.jsx("img",{src:n,alt:""},l))}):null]}):null,e.jsx(wa,{"data-testid":"creator-name",children:ka(u)})]})}const yt=z(be)`
9
- margin-top: 6px;
10
- `,se=z(be)`
11
- && {
12
- width: 100%;
13
- height: 48px;
14
- font-size: 15px;
15
- font-weight: 600;
16
- letter-spacing: 0.46px;
17
- display: flex;
18
- align-items: center;
19
- justify-content: center;
20
- gap: 8px;
21
- }
22
-
23
- ${re.media.down("lg")} {
24
- .item-detail__ctas--dual && {
25
- flex: 1 1 auto;
26
- width: auto;
27
- }
28
- }
29
- `,bt=z("div")`
30
- display: flex;
31
- flex-direction: column;
32
- gap: 10px;
33
- width: 100%;
34
- `,xt=z(be)`
35
- && {
36
- width: 100%;
37
- height: 44px;
38
- }
39
- `,ft=z("p")`
40
- margin: 4px 0 0;
41
- font-size: 13px;
42
- color: ${re.colors.muted};
43
-
44
- a {
45
- color: ${re.colors.accent};
46
- font-weight: 600;
47
- }
48
- `;function vt(r){return Object.values(W.Rarity).includes(r)}function jt(r){return r==="male"?t("itemDetail.genderMale"):r==="female"?t("itemDetail.genderFemale"):r==="unisex"?t("itemDetail.genderUnisex"):null}function ze(r){return r.wearableCategory?r.wearableCategory.replace(/_/g," "):r.category==="emote"?t("itemDetail.categoryEmote"):t("itemDetail.categoryWearable")}function Vt(){var Le;const{contractAddress:r,tokenId:u}=na(),{state:i}=da(),h=pe(),c=!!(i!=null&&i.market),_=(i==null?void 0:i.marketPriceCredits)??null,g=Be(s=>s.add),b=Be(s=>s.items),n=Re(s=>s.toggle),{session:l}=ye(),[a,N]=o.useState(()=>i!=null&&i.item?{...i.item,tradeId:i.tradeId??i.item.tradeId}:{id:`${r}-${u}`,name:"",creator:"",contractAddress:r??"",itemId:null,category:"wearable",rarity:"common",network:"MATIC",chainId:Qe.chainId,thumbnail:"",priceCredits:0,gender:null,isSmart:!1,tokenId:u??void 0,tradeId:i==null?void 0:i.tradeId}),[k,j]=o.useState(!1),[B,R]=o.useState(!!(i!=null&&i.resumeBuy));o.useEffect(()=>{i!=null&&i.resumeBuy&&j(!0)},[i==null?void 0:i.resumeBuy]);const{data:x=[],isFetched:q}=T({queryKey:["collection-items",a.contractAddress],enabled:!!a.contractAddress,queryFn:()=>$a(a.contractAddress,{first:20}).then(s=>s.items)}),M=a.available==null&&!a.tokenId,{data:C,isLoading:Y}=T({queryKey:["shop-item",a.contractAddress,u],enabled:!c&&!!a.contractAddress&&!!u&&(!(i!=null&&i.item)||M),queryFn:()=>Ka(a.contractAddress,u)});o.useEffect(()=>{C&&N(s=>s.tradeId?s.available!=null&&s.wearableCategory?s:{...s,available:s.available??C.available,wearableCategory:s.wearableCategory??C.wearableCategory}:{...C})},[C]);const[V,le]=o.useState(!1),{data:L=""}=T({queryKey:["item-desc",a.contractAddress,a.itemId],enabled:!!a.contractAddress&&!!a.itemId,staleTime:5*6e4,queryFn:()=>Oa(a.contractAddress,a.itemId)}),{data:P}=T({queryKey:["collection-meta",a.contractAddress],enabled:!!a.contractAddress,staleTime:5*6e4,queryFn:()=>Wa(a.contractAddress)});o.useEffect(()=>{if(a.name||C||x.length===0)return;const s=u&&x.find(y=>y.tokenId===u||y.itemId===u)||x.find(y=>y.contractAddress===a.contractAddress);s&&N(y=>({...s,tradeId:y.tradeId??s.tradeId}))},[x,C]);const J=o.useMemo(()=>{const s=new Set,y=[];for(const I of x){if(I.id===a.id||a.itemId&&I.itemId===a.itemId||a.tokenId&&I.tokenId===a.tokenId)continue;const De=`${I.contractAddress}-${I.itemId??I.tokenId??I.id}`;s.has(De)||(s.add(De),y.push(I))}return y},[x,a.id,a.itemId,a.tokenId]),{data:Z,isLoading:d}=T({queryKey:["detail-trade",a.id,a.tradeId,a.contractAddress,a.itemId],enabled:!!a.contractAddress,queryFn:async()=>{if(a.tradeId)return a.tradeId;if(a.itemId){const s=await za(a.contractAddress,a.itemId);return(s==null?void 0:s.id)??null}return null}}),f=a.tradeId??Z??void 0,m=!!f,{data:v}=lt(c),p=o.useMemo(()=>{if(!c||!(i!=null&&i.item))return null;const s=i.item;return s.manaWei?{tradeId:s.tradeId??s.id,listingType:"primary",contractAddress:s.contractAddress,itemId:s.itemId??"",name:s.name,thumbnail:s.thumbnail,rarity:s.rarity,category:s.category,wearableCategory:s.wearableCategory??null,creator:s.creator,manaWei:s.manaWei,available:1,network:s.network,chainId:s.chainId,createdAt:0}:null},[c,i==null?void 0:i.item]),E=c&&_!=null&&!!v&&!!p,$=Ca({priceCredits:a.priceCredits,compareAtCredits:a.compareAtCredits,saleEndsAt:a.saleEndsAt}),w=o.useMemo(()=>({...a,tradeId:f,id:f??a.id}),[a,f]),Q=b.some(s=>s.id===w.id),D=!w.tokenId,X=((Le=b.find(s=>s.id===w.id))==null?void 0:Le.quantity)??0,K=D&&typeof a.available=="number"&&X>=a.available,F=Re(s=>!!s.items[a.id]),xe=o.useRef(null);o.useEffect(()=>{!a.name||d||xe.current===a.id||(xe.current=a.id,H("Shop Viewed Item",{...Ia(a),for_sale:m}),Aa(a))},[a.id,a.name,d,m]);const ee=`${r}/${u}`,fe=o.useRef(ee);o.useEffect(()=>{fe.current!==ee&&(fe.current=ee,i!=null&&i.item&&N({...i.item,tradeId:i.tradeId??i.item.tradeId}),typeof window<"u"&&window.scrollTo({top:0,behavior:"smooth"}))},[ee]);function Ge(){!m||de||d||!D&&Q||K||g(w,"item_detail")}const ne=vt(a.rarity)?a.rarity:W.Rarity.COMMON,ve=jt(a.gender),je=Sa(a),ge=Ma(a.gender),He=m&&$,Ye=t("itemDetail.moreFromCollection"),de=Pa(a,l==null?void 0:l.address),ae=Ve(),[Je,Ne]=o.useState(!1),[Ze,we]=o.useState(!1),[U,ke]=o.useState(!1),[Xe,Ce]=o.useState(null),{data:A}=T({queryKey:["owned-token",a.contractAddress,a.tokenId,l==null?void 0:l.address],enabled:!c&&!!(l!=null&&l.address)&&!!a.contractAddress&&!!a.tokenId,queryFn:()=>l?Va(l.address,a.contractAddress,a.tokenId):null}),{data:ce}=T({queryKey:["publishable-item",a.contractAddress,a.itemId,l==null?void 0:l.address],enabled:de&&!!l&&!!a.itemId,queryFn:async()=>l?(await Ha(l.address,l.identity)).find(y=>y.contractAddress.toLowerCase()===a.contractAddress.toLowerCase()&&y.blockchainItemId===a.itemId)??null:null}),G=!!A,oe=!c&&(de||G),ea=G?!!(A!=null&&A.isOnSale):m,me=G?A==null?void 0:A.tradeId:f,Ie=G?!!A:!!ce;async function Ae(){await Promise.all([ae.invalidateQueries({queryKey:["owned-token",a.contractAddress,a.tokenId]}),ae.invalidateQueries({queryKey:["detail-trade"]}),ae.invalidateQueries({queryKey:["shop-item"]}),ae.invalidateQueries({queryKey:["collection-sale-state"]})])}async function Se(s={}){if(!l||!me)return!1;Ce(null),ke(!0);try{const y=await Ra(me);return await Qa({trade:y,signer:l.signer}),s.silent||qa.success(t("myAssets.removedFromSale",{name:a.name})),await Ae(),!0}catch(y){const I=it(y);return I||_e(y,{flow:"remove-listing",tradeId:me}),Ce(I?t("getCredits.errorCanceled"):t("myAssets.removeListingError")),!1}finally{ke(!1)}}function Me(){G?Ne(!0):we(!0)}async function aa(){await Se({silent:!0})&&Me()}function Pe(){Ne(!1),we(!1),Ae()}const Ee=m?d?t("itemDetail.checking"):K?t("itemDetail.maxInCart"):!D&&Q?t("assetCard.inCart"):t("assetCard.addToCart"):t("itemDetail.notForSale"),ta=typeof a.available=="number"&&a.available>0&&!a.tokenId&&!c,sa=!oe&&m&&!c,ia=c||!oe,ra=Y||!!a.contractAddress&&!q,Fe=!a.name&&!ra,la=/^https?:\/\//i.test(a.thumbnail);return Ea(Fe?{title:t("seo.item.notFoundTitle"),noindex:!0}:a.name?{title:a.name,description:L||t("seo.item.fallbackDescription",{name:a.name,rarity:a.rarity,category:ze(a),creator:dt(a.creator)}),image:la?a.thumbnail:void 0,type:"product"}:{}),Fe?e.jsxs("div",{className:"item-detail item-detail--notfound",children:[e.jsx(O,{name:"cart",className:"item-detail__notfound-ico"}),e.jsx("h1",{className:"item-detail__notfound-title",children:t("itemDetail.notAvailableTitle")}),e.jsx("p",{className:"muted",children:t("itemDetail.notAvailableBody")}),e.jsx(yt,{variant:"purple",onClick:()=>h("/assets"),children:t("notFound.cta")})]}):e.jsxs("div",{className:"item-detail",children:[e.jsxs("nav",{className:"item-detail__crumbs","aria-label":t("itemDetail.breadcrumbAria"),children:[e.jsx("button",{className:"item-detail__crumb-link",onClick:()=>h("/assets"),children:t("nav.collectibles")}),e.jsx("span",{className:"item-detail__crumb-sep",children:"/"}),e.jsx("span",{className:"item-detail__crumb-current",children:a.name||t("itemDetail.itemFallback")})]}),e.jsxs("div",{className:"item-detail__main",children:[e.jsxs("div",{className:"item-detail__preview","data-testid":"item-preview",children:[a.name?e.jsx(ht,{item:a}):e.jsx("div",{className:"item-preview__loading","aria-busy":"true","aria-label":t("itemPreview.loading"),children:e.jsx("span",{className:"skeleton item-preview__skeleton","aria-hidden":!0})}),e.jsx("button",{className:`item-detail__fav item-detail__fav--preview${F?" is-on":""}`,onClick:()=>n(a),"aria-pressed":F,"aria-label":F?t("assetCard.removeFromFavorites"):t("assetCard.addToFavorites"),children:e.jsx(O,{name:F?"heart-solid":"heart",size:18})})]}),e.jsx("div",{className:"item-detail__info",children:a.name?e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"item-detail__info-head",children:[e.jsx("h1",{className:"item-detail__title",children:a.name}),e.jsx("button",{className:`item-detail__fav${F?" is-on":""}`,onClick:()=>n(a),"aria-pressed":F,"aria-label":F?t("assetCard.removeFromFavorites"):t("assetCard.addToFavorites"),children:e.jsx(O,{name:F?"heart-solid":"heart",size:18})})]}),e.jsxs("div",{className:"item-detail__chips",children:[e.jsx("span",{className:"chip chip--rarity",style:{background:Da(ne),color:La(ne)},title:Fa(a.rarity),children:a.rarity}),e.jsxs("span",{className:"chip item-detail__chip",children:[je?e.jsx(O,{name:je,size:18,color:"var(--text-2)"}):null,ze(a)]}),ve?e.jsxs("span",{className:"chip item-detail__chip",children:[ge?e.jsx(O,{name:ge,size:18,color:"var(--text-2)"}):null,ve]}):null]}),L?e.jsxs("div",{className:"item-detail__section item-detail__description",children:[e.jsx("div",{className:"item-detail__label",children:t("itemDetail.description")}),e.jsx("p",{className:`item-detail__desc-text${V?" is-expanded":""}`,children:L}),L.length>140?e.jsx("button",{className:"link item-detail__desc-toggle",onClick:()=>le(s=>!s),children:V?t("itemDetail.showLess"):t("itemDetail.readMore")}):null]}):null,a.creator||P!=null&&P.name?e.jsxs("div",{className:"item-detail__meta",children:[a.creator?e.jsxs("div",{className:"item-detail__meta-col",children:[e.jsx("div",{className:"item-detail__label",children:t("itemDetail.creator")}),e.jsx(Ta,{address:a.creator,className:"item-detail__creator",linkToProfile:!0,hidePrefix:!0})]}):null,P!=null&&P.name?e.jsxs("div",{className:"item-detail__meta-col item-detail__meta-col--collection",children:[e.jsx("div",{className:"item-detail__label",children:t("itemDetail.collection")}),e.jsx(pt,{contractAddress:a.contractAddress,name:P.name,items:x,className:"item-detail__creator"})]}):null]}):null,e.jsx("hr",{className:"item-detail__divider"}),e.jsx("div",{className:"item-detail__price-block",children:e.jsxs("div",{className:"item-detail__price-row",children:[e.jsxs("div",{className:"item-detail__price-col",children:[e.jsx("div",{className:"item-detail__price-label",children:t("itemDetail.price")}),c?e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"item-detail__price item-detail__price--market",children:_==null?e.jsx("span",{className:"item-detail__price-value",children:"—"}):e.jsxs(e.Fragment,{children:[e.jsx("span",{className:"item-detail__approx","aria-hidden":!0,children:"≈"}),e.jsx(S,{className:"item-detail__diamond"}),e.jsx("span",{className:"item-detail__price-value",children:_})]})}),e.jsx("div",{className:"item-detail__market-note muted",children:t("assetCard.marketPrice")})]}):m?He?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:a.priceCredits})]}),e.jsxs("span",{className:"item-detail__price-was",children:[e.jsx(S,{className:"item-detail__diamond item-detail__diamond--was"}),a.compareAtCredits]}),qe(a.compareAtCredits,a.priceCredits)>0?e.jsx("span",{className:"item-detail__sale-badge",children:t("assetCard.saleWithDiscount",{pct:qe(a.compareAtCredits,a.priceCredits)})}):null,e.jsx(Ba,{endsAt:a.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:a.priceCredits})]}):e.jsx("div",{className:"item-detail__price item-detail__price--none",children:t("itemDetail.notForSale")})]}),ta?e.jsxs("div",{className:"item-detail__stock-col",children:[e.jsx("div",{className:"item-detail__price-label",children:t("itemDetail.stock")}),e.jsxs("div",{className:"item-detail__stock-value",children:[(a.available??0).toLocaleString(),"/",W.Rarity.getMaxSupply(ne).toLocaleString()]})]}):null]})}),e.jsx("div",{className:`item-detail__ctas${ia?" item-detail__ctas--buttons":""}${sa?" item-detail__ctas--dual":""}`,children:c?e.jsxs(se,{variant:"purple",onClick:()=>j(!0),disabled:!E,children:[e.jsx("span",{className:"item-detail__cta-label",children:t("assetCard.buyNow")}),_!=null?e.jsxs("span",{className:"item-detail__cta-price","aria-hidden":!0,children:[e.jsx(S,{className:"item-detail__cta-diamond"}),_]}):null]}):oe?e.jsxs(bt,{"data-testid":"manage-actions",children:[e.jsx(Ue,{message:Xe}),ea?e.jsxs(e.Fragment,{children:[e.jsx(se,{variant:"purple",onClick:()=>void aa(),disabled:U||!Ie,children:e.jsx("span",{className:"item-detail__cta-label",children:U?t("itemDetail.manageWorking"):t("itemDetail.manageUpdatePrice")})}),e.jsx(xt,{variant:"ghost",onClick:()=>void Se(),disabled:U,children:U?t("myAssets.removing"):t("itemDetail.manageRemove")})]}):e.jsx(se,{variant:"purple",onClick:Me,disabled:U||!Ie,children:e.jsx("span",{className:"item-detail__cta-label",children:t("itemDetail.manageList")})}),e.jsxs(ft,{children:[t("itemDetail.ownItemPrefix")," ",e.jsx(ca,{to:"/my-assets",children:t("nav.myAssets")}),t("itemDetail.ownItemSuffix")]})]}):e.jsxs(e.Fragment,{children:[m?e.jsxs(se,{variant:"purple",onClick:()=>j(!0),disabled:d,children:[e.jsx("span",{className:"item-detail__cta-label",children:t("assetCard.buyNow")}),e.jsxs("span",{className:"item-detail__cta-price","aria-hidden":!0,children:[e.jsx(S,{className:"item-detail__cta-diamond"}),a.priceCredits]})]}):null,e.jsxs("button",{className:"item-detail__addcart",onClick:Ge,disabled:!m||d||(D?K:Q),"aria-label":Ee,children:[e.jsx(O,{name:"cart-solid"}),e.jsx("span",{className:"item-detail__addcart-label",children:Ee})]})]})})]}):e.jsx(gt,{})})]}),e.jsx(ct,{title:Ye,items:J,onViewAll:a.contractAddress?()=>h(`/collection/${a.contractAddress}`):void 0}),k&&c&&p&&v?e.jsx(nt,{listing:p,rate:v,onClose:()=>j(!1),onSold:()=>j(!1)}):k&&!c?e.jsx(ot,{item:w,resume:B,onClose:()=>{j(!1),R(!1)}}):null,Je&&A&&l?e.jsx(Ua,{asset:A,session:l,onClose:Pe}):null,Ze&&ce&&l?e.jsx(Ga,{item:ce,session:l,onClose:Pe}):null]})}function gt(){return e.jsxs("div",{className:"item-detail__info-skel","aria-hidden":!0,children:[e.jsx("span",{className:"skeleton id-skel__title"}),e.jsxs("div",{className:"id-skel__chips",children:[e.jsx("span",{className:"skeleton id-skel__chip"}),e.jsx("span",{className:"skeleton id-skel__chip"})]}),e.jsx("span",{className:"skeleton id-skel__line"}),e.jsx("span",{className:"skeleton id-skel__line id-skel__line--short"}),e.jsx("hr",{className:"item-detail__divider"}),e.jsx("span",{className:"skeleton id-skel__price"}),e.jsx("span",{className:"skeleton id-skel__btn"})]})}export{Vt as ItemDetail,Vt as default};
@@ -1 +0,0 @@
1
- import{d as A}from"./dcl-schemas-BICTSpB5.js";import{g as N}from"./index-CnOiYeAk.js";import{d as l,g as E,f as C,h as y}from"./trade-encoding-Bkk79sDB.js";import{g as m,a as p,C as I}from"./index-HN6Rk25C.js";import{C as g,J as M,B as u}from"./ethers-BeFqf2KO.js";async function U(a){const t=a.received[0],n=t.amount??"0";if(t.assetType!==Number(A.TradeAssetType.USD_PEGGED_MANA))return n;const c=m(p(a.contract),a.chainId),e=new M(N.rpcUrl),r=await new g(c.address,["function manaUsdAggregator() view returns (address)"],e).manaUsdAggregator(),s=new g(r,["function decimals() view returns (uint8)","function latestRoundData() view returns (uint80,int256,uint256,uint256,uint80)"],e),i=await s.decimals(),w=await s.latestRoundData(),f=u.from(w[1]);return u.from(n).mul(u.from(10).pow(i)).div(f).mul(102).div(100).toString()}async function b(a,t,n){const c=n.provider;await l(c,a);const e=await c.getNetwork();if(e.chainId!==a)throw new Error(`Wrong network: wallet is on chain ${e.chainId}, expected ${a}. Switch networks and try again.`);const o=m(I.CreditsManager,a);return(await(await new g(o.address,o.abi,n).useCredits(t,C(a))).wait()).transactionHash}async function $(a){const{trade:t,signer:n}=a,c=(await n.getAddress()).toLowerCase();await l(n.provider,t.chainId);const e=m(p(t.contract),t.chainId),o=E(t,c);return(await(await new g(e.address,e.abi,n).cancelSignature([o],C(t.chainId))).wait()).transactionHash}async function G(a){const{trade:t,buyer:n,signer:c,credits:e}=a;if(e.length===0)throw new Error("No credits to spend");const o=m(p(t.contract),t.chainId),r=a.maxCreditedValue??await U(t),s=y(o.address,o.abi,[t],n,e,r);return b(t.chainId,s,c)}async function L(a){const{purchases:t,buyer:n,signer:c}=a;if(t.length===0)throw new Error("No items to buy");const e=new Map;for(const r of t){const s=`${r.trade.chainId}:${r.trade.contract.toLowerCase()}`,i=e.get(s);i?i.push(r):e.set(s,[r])}const o=[];for(const r of e.values()){const{chainId:s,contract:i}=r[0].trade,w=m(p(i),s),f=r.map(d=>d.trade),h=r.flatMap(d=>d.credits),v=r.reduce((d,k)=>d.add(u.from(k.maxCreditedValue)),u.from(0)).toString(),x=y(w.address,w.abi,f,n,h,v);o.push(await b(s,x,c))}return o}export{L as a,G as b,$ as c};
@@ -1 +0,0 @@
1
- import{g as P}from"./index-CnOiYeAk.js";import{h as M}from"./trade-encoding-Bkk79sDB.js";import{g as m,a as N,C as y}from"./index-HN6Rk25C.js";import{u as I,C as F,J as U,h as A,B as x}from"./ethers-BeFqf2KO.js";const E="".trim().toLowerCase(),p={enabled:E!=="0"&&E!=="false",relayerUrl:"https://transactions-api.decentraland.zone/v1"};function B(){return p.enabled}const{Interface:b,hexZeroPad:G}=I;class u extends Error{constructor(e,a="unknown"){super(e),this.reason=a,this.name="GaslessUnavailableError"}}class v extends Error{constructor(e,a){super("Purchase not yet confirmed"),this.txHash=e,this.name="SettlementPendingError",a&&"cause"in a&&(this.cause=a.cause)}}const O=[{name:"nonce",type:"uint256"},{name:"from",type:"address"},{name:"functionData",type:"bytes"}];function _(n){return G(A(n),32)}function $(n,e,a,c){return new b(n).encodeFunctionData("executeMetaTransaction",[e,a,c])}function S(){return new U(P.rpcUrl)}async function T(n,e,a,c){const r=m(y.CreditsManager,n),o=await new F(r.address,["function getNonce(address) view returns (uint256)"],S()).getNonce(e),i=a,d={name:r.name,version:r.version,verifyingContract:r.address,salt:_(n)},l={nonce:o.toString(),from:e,functionData:i};let g;try{g=await c._signTypedData(d,{MetaTransaction:O},l)}catch(s){const w=(s==null?void 0:s.message)??"signature failed";throw new u(w,/denied/i.test(w)?"unknown":"contract-account")}const C=$(r.abi,e,i,g);let t;try{const s=await fetch(`${p.relayerUrl}/transactions`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({transactionData:{from:e,params:[r.address,C]}})});if(t=await s.json(),!s.ok&&(t==null?void 0:t.ok)!==!0&&!(t!=null&&t.txHash))throw new u((t==null?void 0:t.message)??`relayer ${s.status}`,"relayer")}catch(s){throw s instanceof u?s:new u((s==null?void 0:s.message)??"relayer unreachable","relayer")}if((t==null?void 0:t.ok)===!1||!(t!=null&&t.txHash))throw new u((t==null?void 0:t.message)??"relayer rejected the transaction","relayer");return t.txHash}async function L(n,e){const a=S();let c;try{c=await a.waitForTransaction(n,1,(e==null?void 0:e.timeoutMs)??12e4)}catch(r){throw new v(n,{cause:r})}if(!c)throw new v(n);if(c.status===0)throw new Error("Purchase reverted")}async function R(n){if(!p.enabled)throw new u("gasless checkout disabled","disabled");const{trade:e,buyer:a,signer:c,credits:r,maxCreditedValue:f}=n;if(r.length===0)throw new Error("No credits to spend");const o=m(N(e.contract),e.chainId),i=M(o.address,o.abi,[e],a,r,f),d=m(y.CreditsManager,e.chainId),l=new b(d.abi).encodeFunctionData("useCredits",[i]);return T(e.chainId,a,l,c)}async function z(n){if(!p.enabled)throw new u("gasless checkout disabled","disabled");const{purchases:e,buyer:a,signer:c}=n;if(e.length===0)throw new Error("No items to buy");const r=new Map;for(const o of e){const i=`${o.trade.chainId}:${o.trade.contract.toLowerCase()}`,d=r.get(i);d?d.push(o):r.set(i,[o])}const f=[];for(const o of r.values()){const{chainId:i,contract:d}=o[0].trade,l=m(N(d),i),g=o.map(h=>h.trade),C=o.flatMap(h=>h.credits),t=o.reduce((h,D)=>h.add(x.from(D.maxCreditedValue)),x.from(0)).toString(),s=M(l.address,l.abi,g,a,C,t),w=m(y.CreditsManager,i),k=new b(w.abi).encodeFunctionData("useCredits",[s]);f.push(await T(i,a,k,c))}return f}export{u as G,v as S,z as a,R as b,B as g,L as w};
@@ -1 +0,0 @@
1
- import{j as f}from"./react-C51i12iP.js";import{a9 as g,b as p,ar as A,t as u,C,B as b,E as x}from"./index-CnOiYeAk.js";const $="https://cdn.decentraland.org/@dcl/shop/0.1.0-29842935035.commit-a65be40/assets/default-cover-7vUE644d.jpeg",E=2166136261,_=16777619,M=4294967295,S=.75,I=1,N="#ffffff",T=/[\p{L}\p{N}]/u;function j(n){let r=E>>>0;for(let t=0;t<n.length;t++)r^=n.charCodeAt(t),r=Math.imul(r,_)>>>0;return r>>>0}function L(n,r,t){const a=n>=1?n-Math.floor(n):n,i=Math.floor(a*6),c=a*6-i,o=t*(1-r),e=t*(1-r*c),l=t*(1-r*(1-c));switch(i%6){case 0:return{r:t,g:l,b:o};case 1:return{r:e,g:t,b:o};case 2:return{r:o,g:t,b:l};case 3:return{r:o,g:e,b:t};case 4:return{r:l,g:o,b:t};default:return{r:t,g:o,b:e}}}function h(n){return Math.max(0,Math.min(255,Math.round(n*255))).toString(16).padStart(2,"0")}function R({r:n,g:r,b:t}){return`#${h(n)}${h(r)}${h(t)}`}function U(n){if(!n)return"";let r="";for(let t=0;t<n.length;t++){const a=n[t];T.test(a)&&(r+=a)}return r}function B({name:n,hasClaimedName:r,ethAddress:t}){const a=U(n);return a?r||!t||t.length<=4?a:`${a}#${t.slice(-4)}`:""}function H(n){if(!n)return N;const t=j(n)/M;return R(L(t,S,I))}function V({items:n,source:r}){const t=g(s=>s.add),a=g(s=>s.items.map(d=>d.id)),i=p(s=>{var d;return(d=s.session)==null?void 0:d.address}),c=n.filter(s=>s.priceCredits>0&&!A(s,i));if(c.length===0)return null;const o=new Set(a),e=c.filter(s=>!o.has(s.id)),l=c.reduce((s,d)=>s+d.priceCredits,0);function m(){e.forEach(s=>t(s,r)),x.success(u("addAll.added",{count:e.length}))}return f.jsxs("div",{className:"addall",children:[f.jsxs("span",{className:"addall__summary",children:[u("addAll.forSale",{count:c.length})," · ",f.jsx(C,{className:"addall__diamond"})," ",l.toLocaleString()]}),f.jsx(b,{variant:"purple",size:"sm",onClick:m,disabled:e.length===0,children:e.length===0?u("addAll.allInCart"):u("addAll.addAll",{count:e.length})})]})}export{V as A,B as a,$ as d,H as g};
@@ -1 +0,0 @@
1
- .ico{display:inline-block;width:20px;height:20px;flex:none;background-color:currentColor;-webkit-mask-image:var(--icon-url);mask-image:var(--icon-url);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;-webkit-mask-size:contain;mask-size:contain}.ccy-mark{width:1em;height:1em;vertical-align:-.125em}.cartd{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;display:flex;justify-content:flex-end}.cartd__scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:#16151880;animation:cartd-fade .16s ease}.cartd__panel{position:relative;z-index:1;display:flex;flex-direction:column;width:min(480px,100vw);height:100%;background:#fff;box-shadow:-8px 0 32px #1615182e;animation:cartd-slide .22s ease;font-family:var(--sans)}@keyframes cartd-fade{0%{opacity:0}to{opacity:1}}@keyframes cartd-slide{0%{transform:translate(24px);opacity:.4}to{transform:none;opacity:1}}.cartd__head{flex:none;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:16px;border-bottom:1px solid #cfcdd4}.cartd__title{margin:0;font-size:20px;font-weight:600;line-height:1.6;color:#161518}.cartd__close{flex:none;display:grid;place-items:center;width:31px;height:31px;border:0;background:none;color:#161518;cursor:pointer;border-radius:8px}.cartd__close:hover{background:#ecebed}.cartd__close svg{width:18px;height:18px}.cartd__body{flex:1 1 auto;overflow-y:auto;display:flex;flex-direction:column;gap:24px;padding:16px 16px 24px}.cartd__banner{display:flex;align-items:flex-start;gap:16px;padding:12px;border-radius:16px;background:#c1eecf80}.cartd__banner-check{flex:none;width:20px;height:20px}.cartd__banner p{margin:0;font-size:16px;line-height:1.5;font-weight:400;color:#242129}.cartd__banner strong{font-weight:600}.cartd__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}.cartd__card{position:relative;display:flex;gap:12px;align-items:stretch;border:1px solid #cfcdd4;border-radius:12px;overflow:hidden;background:#fff}.cartd__thumb{position:relative;flex:none;display:grid;place-items:center;width:128px;align-self:stretch;background:#ecebed;border-radius:12px}.cartd__thumb img{width:82%;height:82%;object-fit:contain;filter:drop-shadow(.6px 2.2px 2.8px rgba(0,0,0,.1))}.cartd__thumb-check{position:absolute;top:8px;left:8px;width:20px;height:20px}.cartd__info{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;justify-content:space-between;gap:12px;padding:16px 8px}.cartd__name{font-size:16px;font-weight:600;line-height:1.2;color:#161518;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding-right:28px}.cartd__by{margin-top:4px;font-size:10px;color:#716b7c}.cartd__by [data-avatar]{display:none}.cartd__by [data-testid=creator-name]{font-size:10px;line-height:1.43}.cartd__rowbottom{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-right:8px}.cartd__stepper{display:flex;align-items:center;gap:8px;padding:6px;border:.5px solid #a09ba8;border-radius:50px}.cartd__step{display:grid;place-items:center;width:16px;height:16px;padding:0;border:0;background:none;color:#161518;cursor:pointer}.cartd__step:disabled{color:#a09ba8;cursor:default}.cartd__step svg{width:16px;height:16px}.cartd__qty{min-width:12px;text-align:center;font-size:14px;font-weight:500;line-height:1.2;color:#161518}.cartd__price{display:flex;align-items:center;gap:4px;font-size:24px;font-weight:600;line-height:1;color:#242129;white-space:nowrap}.cartd__diamond{width:22px;height:22px;color:#a14bf3}.cartd__del{position:absolute;top:9px;right:9px;display:grid;place-items:center;width:24px;height:24px;padding:0;border:0;background:none;color:#716b7c;cursor:pointer}.cartd__del:hover{color:#d33}.cartd__foot{flex:none;display:flex;flex-direction:column;gap:12px;padding:16px;background:#fff;border-top:1px solid #cfcdd4;box-shadow:0 -4px 12px 2px #0000001f}.cartd__totalrow{display:flex;align-items:center;justify-content:space-between;gap:8px}.cartd__total-label{font-size:14px;font-weight:600;line-height:1.57;color:#5e5b67}.cartd__total-val{display:flex;align-items:center;gap:8px;font-size:24px;font-weight:700;line-height:1;color:#161518}.cartd__total-diamond{width:28px;height:28px;color:#a14bf3}.cartd__ctas{display:flex;flex-direction:column;gap:12px}.cartd__cta{display:flex;align-items:center;justify-content:center;height:46px;border-radius:8px;font-family:var(--sans);font-size:15px;font-weight:600;line-height:24px;letter-spacing:.46px;text-transform:uppercase;text-decoration:none;cursor:pointer}.cartd__cta--primary{border:0;background:#691fa9;color:#fcfcfc}.cartd__cta--primary:hover{background:#58198c}.cartd__cta--secondary{border:2px solid #c640cd;background:#fff;color:#691fa9}.cartd__cta--secondary:hover{background:#c640cd0f}button.subnav__cart{border:0;padding:0;font:inherit;cursor:pointer}.coll-thumb{display:grid;width:100%;height:100%;gap:1px;grid-template-columns:1fr 1fr;grid-auto-rows:1fr;background:var(--line)}.coll-thumb[data-count="1"]{grid-template-columns:1fr}.coll-thumb[data-count="2"]{grid-template-rows:1fr}.coll-thumb[data-count="3"] .coll-thumb__cell:first-child{grid-column:span 2}.coll-thumb__cell{display:grid;place-items:center;overflow:hidden;background-size:cover;background-position:center}.coll-thumb__cell img{width:100%;height:100%;object-fit:cover;display:block}.dcl-footer{width:100%}.dcl-footer__main{width:100%;display:flex;justify-content:space-between;align-items:stretch;padding:32px 80px;background:radial-gradient(ellipse at 0% 0%,#792f9e99,#4a1766cc,#330c4ae6,#1b002e 75%)}.dcl-footer__left{display:flex;flex-direction:column;gap:40px;padding:40px 0;max-width:450px}.dcl-footer__wordmark{font-weight:700;font-size:40px;line-height:1;color:#fcfcfc;letter-spacing:-.02em}.dcl-footer__news{display:flex;flex-direction:column;gap:12px}.dcl-footer__news-title{margin:0;font-weight:500;font-size:20px;line-height:1.6;color:#fcfcfc}.dcl-footer__news-frame{width:100%;max-width:450px;border:none;border-radius:6px}.dcl-footer__connect{display:flex;flex-direction:column;gap:16px}.dcl-footer__connect--mobile{display:none}.dcl-footer__label{margin:0;font-weight:400;font-size:16px;line-height:1.5;color:#cfcdd4;text-transform:uppercase}.dcl-footer__social{display:flex;align-items:center;gap:28px;color:#fff}.dcl-footer__social a{color:inherit;display:flex;transition:opacity .2s ease}.dcl-footer__social a:hover{opacity:.7}.dcl-footer__right{display:flex;gap:80px;padding:40px 0}.dcl-footer__col{display:flex;flex-direction:column;gap:16px}.dcl-footer__link{font-weight:600;font-size:16px;line-height:1.5;color:#fff;text-decoration:none;white-space:nowrap}.dcl-footer__link:hover{text-decoration:underline}.dcl-footer__mobile-menu{display:none;flex-direction:column;width:100%}.dcl-footer__menu-label{margin:0;padding:12px 0;border-bottom:.5px solid rgba(255,255,255,.1);font-weight:400;font-size:14px;line-height:1.75;color:#cfcdd4;text-transform:uppercase}.dcl-footer__dropdown{display:flex;justify-content:space-between;align-items:center;width:100%;padding:24px 0;border:none;border-bottom:.5px solid rgba(255,255,255,.1);background:none;cursor:pointer;font-weight:600;font-size:16px;line-height:1.75;color:#fff;text-align:left}.dcl-footer__chev{display:inline-flex;color:#fff;transition:transform .3s ease}.dcl-footer__chev.is-open{transform:rotate(180deg)}.dcl-footer__dropdown-content{display:flex;flex-direction:column;gap:16px;overflow:hidden;max-height:0;opacity:0;padding:0;transition:max-height .3s ease,opacity .3s ease,padding .3s ease}.dcl-footer__dropdown-content.is-open{max-height:400px;opacity:1;padding:16px 0 8px}.dcl-footer__mlink{font-weight:400;font-size:15px;line-height:1.5;color:#fcfcfc;text-decoration:none;padding-left:8px}.dcl-footer__mlink:hover{text-decoration:underline}.dcl-footer__bottom{width:100%;background:#161518;box-shadow:inset 0 1px #43404a;display:flex;align-items:center;justify-content:space-between;padding:16px 24px}.dcl-footer__bottom-left{display:flex;align-items:center;gap:16px}.dcl-footer__lang{position:relative}.dcl-footer__lang-btn{display:flex;align-items:center;gap:8px;background:none;border:none;cursor:pointer;padding:0;font-weight:600;font-size:15px;line-height:24px;color:#fff}.dcl-footer__lang-menu{position:absolute;bottom:100%;left:0;margin-bottom:8px;background:#242129;border-radius:8px;border:1px solid #43404a;padding:4px 0;min-width:140px;z-index:10}.dcl-footer__lang-menu button{display:flex;align-items:center;gap:8px;width:100%;padding:8px 16px;background:none;border:none;cursor:pointer;font-size:14px;color:#cfcdd4;white-space:nowrap}.dcl-footer__lang-menu button:hover{background:#ffffff14}.dcl-footer__lang-menu button.is-active{color:#fff;font-weight:600}.dcl-footer__legal{display:flex;align-items:center;gap:16px}.dcl-footer__legal-link{font-weight:400;font-size:14px;line-height:1.43;color:#a09ba8;text-decoration:none;white-space:nowrap}.dcl-footer__legal-link:hover{color:#cfcdd4}.dcl-footer__copy{font-weight:400;font-size:15px;line-height:24px;color:#a09ba8;white-space:nowrap}@media(max-width:768px){.dcl-footer__main{flex-direction:column;align-items:center;gap:32px;padding:48px 16px;background:radial-gradient(ellipse at 0% 0%,#6d2297,#591a7d 12%,#451263 25%,#300948,#1c012e 75%)}.dcl-footer__left{padding:0;width:100%;align-items:center;max-width:100%}.dcl-footer__news{width:100%;align-items:center}.dcl-footer__news-title{text-align:center}.dcl-footer__connect--desktop{display:none}.dcl-footer__connect--mobile{display:flex;width:100%;padding-top:12px}.dcl-footer__right{display:none}.dcl-footer__mobile-menu{display:flex}.dcl-footer__bottom{flex-direction:column;align-items:flex-start;gap:16px}.dcl-footer__bottom-left{flex-direction:column;align-items:flex-start;gap:16px;width:100%}.dcl-footer__legal{display:grid;grid-template-columns:1fr 1fr;gap:12px 16px;width:100%}.dcl-footer__copy{display:none}}.ov-hero{position:relative;display:flex;align-items:center;aspect-ratio:1721 / 304;max-height:340px;margin-bottom:40px;overflow:hidden;border-radius:var(--radius-banner);background:#14161b}.ov-hero__bg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center right}.ov-hero__scrim{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;background:linear-gradient(90deg,#0a0b0ec7,#0a0b0e73 38%,#0a0b0e00 68%)}.ov-hero__inner{position:relative;z-index:2;display:flex;flex-direction:column;align-items:flex-start;gap:24px;padding:0 64px}.ov-hero__title{margin:0;color:#fff;font-size:clamp(24px,3.2vw,36px);font-weight:700;line-height:1.235;text-transform:uppercase}@media(max-width:768px){.ov-hero{aspect-ratio:auto;min-height:200px;max-height:none}.ov-hero__inner{padding:0 24px}}.ov-carousel{position:relative;margin-bottom:40px}.ov-carousel__viewport{position:relative}.ov-carousel__track{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 64px)/5);gap:16px;overflow-x:auto;overflow-y:hidden;padding:12px 0;scroll-snap-type:x mandatory;scrollbar-width:none;-ms-overflow-style:none}.ov-carousel__track::-webkit-scrollbar{width:0;height:0;display:none}.ov-carousel__track>*{scroll-snap-align:start}@media(max-width:1200px){.ov-carousel__track{grid-auto-columns:calc((100% - 48px)/4)}}@media(max-width:900px){.ov-carousel__track{grid-auto-columns:calc((100% - 32px) / 3)}}@media(max-width:720px){.ov-carousel__track{grid-auto-columns:calc((100% - 16px)/2)}}.overview .row__track{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 64px)/5);padding:12px 0;margin:0}@media(max-width:1200px){.overview .row__track{grid-auto-columns:calc((100% - 48px)/4)}}@media(max-width:900px){.overview .row__track{grid-auto-columns:calc((100% - 32px) / 3)}}@media(max-width:720px){.overview .row__track{grid-auto-columns:calc((100% - 16px)/2)}}.ov-arrow{position:absolute;top:var(--ov-arrow-top, 110px);transform:translateY(-50%);z-index:5;width:53px;height:53px;padding:0;border:0;background:transparent;cursor:pointer;filter:drop-shadow(0 2px 6px rgba(0,0,0,.18));transition:transform .15s ease,filter .15s ease,opacity .15s ease}.ov-arrow img{display:block;width:100%;height:100%}.ov-arrow--right{right:-53px}.ov-arrow--left{left:-53px}.ov-arrow--left img{transform:scaleX(-1)}.ov-arrow:hover:not(:disabled){transform:translateY(-50%) scale(1.07)}.ov-arrow:disabled{opacity:0;pointer-events:none}@media(max-width:900px){.ov-arrow{display:none}}.ov-carousel__dots{display:flex;justify-content:center;gap:8px;margin-top:12px}.ov-dot{width:12px;height:12px;padding:0;border:0;border-radius:50%;background:#d9d6de;transition:background .15s ease}.ov-dot.is-active{background:var(--accent)}.ov-promos{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:0 0 40px}.ov-promo{display:block;border-radius:var(--radius-banner);overflow:hidden;filter:drop-shadow(0 2.5px 6.875px rgba(0,0,0,.25))}.ov-promo img{display:block;width:100%;height:auto;aspect-ratio:867 / 386;object-fit:cover}@media(max-width:768px){.ov-promos{grid-template-columns:1fr}}.ov-creators{margin:0 0 48px}.ov-creators__head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:16px}.ov-creators__title{margin:0;color:var(--text);font-size:20px;font-weight:600;line-height:1.6}.ov-creators__period{color:var(--text-2);font-size:14px;font-weight:600}.ov-creators__scroll{overflow-x:auto}.ov-creators__table{width:100%;min-width:640px;border-collapse:separate;border-spacing:0 8px}.ov-creators__th{background:var(--amethyst);color:#fff;font-size:12px;font-weight:600;letter-spacing:1px;text-transform:uppercase;text-align:left;white-space:nowrap;padding:12px 24px}.ov-creators__th:first-child{border-radius:8px 0 0 8px}.ov-creators__th:last-child{border-radius:0 8px 8px 0}.ov-creators__th--rank{text-align:center}.ov-creators__th--num{text-align:right}.ov-creators__row td{background:#f5f5f5cc;padding:12px 24px;vertical-align:middle;height:64px}.ov-creators__row td:first-child{border-radius:8px 0 0 8px}.ov-creators__row td:last-child{border-radius:0 8px 8px 0}.ov-creators__rank-cell{text-align:center;width:96px}.ov-creators__rank{display:inline-flex;align-items:center;justify-content:center;min-width:48px;height:40px;padding:0 14px;border-radius:8px;background:var(--amethyst);color:#fff;font-size:18px;font-weight:500;line-height:1}.ov-creators__rank--skeleton{background:#d9d6de;animation:ov-creators-pulse 1.2s ease-in-out infinite}.ov-creators__creator-cell{min-width:200px}.ov-creators__creator{font-size:16px}.ov-creators__creator [data-avatar]{width:32px;height:32px}.ov-creators__creator [data-testid=creator-name]{color:var(--accent);font-weight:600}.ov-creators__creator[data-link]:hover [data-testid=creator-name]{color:var(--accent)}.ov-creators__num{text-align:right;color:var(--text);font-size:16px;font-weight:500;font-variant-numeric:tabular-nums}.ov-creators__volume{white-space:nowrap}.ov-creators__coin{width:16px;height:16px;margin-right:6px;vertical-align:-2px;background-color:var(--accent)}.ov-creators__skeleton{display:inline-block;width:40px;height:14px;border-radius:6px;background:#d9d6de;animation:ov-creators-pulse 1.2s ease-in-out infinite}.ov-creators__num .ov-creators__skeleton{margin-left:auto}.ov-creators__skeleton--creator{width:140px;height:20px}@keyframes ov-creators-pulse{0%,to{opacity:1}50%{opacity:.45}}@media(max-width:768px){.ov-creators__th,.ov-creators__row td{padding:10px 16px}}.card{height:300px;background:linear-gradient(#fff,#fff) padding-box,linear-gradient(var(--line),var(--line)) border-box;border-radius:var(--radius-card);overflow:hidden;position:relative;border:2px solid transparent;display:flex;flex-direction:column;transition:background .15s ease,box-shadow .15s ease}.card__link{position:absolute;top:0;right:0;bottom:0;left:0;z-index:3}@media(hover:hover){.card:hover,.card:focus-within{background:linear-gradient(#fff,#fff) padding-box,var(--cerise) border-box;box-shadow:0 0 8px 0 var(--brand-violet)}}.card__media{position:relative;isolation:isolate;flex:1;min-height:0;background:var(--media);overflow:hidden}.card__img{width:100%;height:100%;object-fit:contain;display:block;transition:opacity .25s ease}.card__img--hidden{opacity:0}.card__preview{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.card__preview iframe{width:100%;height:100%;border:0;display:block;opacity:0;transition:opacity .3s ease}.card__preview.is-ready iframe{opacity:1}@media(prefers-reduced-motion:reduce){.card__preview iframe{transition:none}}.card__preview-shield{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;cursor:pointer}.card__skeleton{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;background:linear-gradient(100deg,#fff0 30%,#fff9,#fff0 70%);background-repeat:no-repeat;background-size:220% 100%;animation:card-skeleton 1.3s infinite ease-in-out}@keyframes card-skeleton{0%{background-position:180% 0}to{background-position:-80% 0}}@media(prefers-reduced-motion:reduce){.card__skeleton{animation:none;opacity:.5}}.hover-preview iframe{width:100%;height:100%;border:0;display:block;background:transparent}.card__fav{position:absolute;top:10px;right:10px;z-index:4;width:32px;height:32px;border-radius:50%;border:0;background:#ffffffd9;display:grid;place-items:center;color:var(--text)}.card__fav.is-on{color:var(--dcl-red)}.card__body{flex:0 0 96px;height:96px;padding:8px;display:flex;flex-direction:column;justify-content:space-between;gap:4px}.card__top{display:flex;align-items:flex-start;gap:10px}.card__desc{flex:1;min-width:0;display:flex;flex-direction:column}.card__name{font-weight:600;font-size:14px;line-height:1.35;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card__creator{position:relative;z-index:4;color:var(--muted);font-size:10px;margin-bottom:0}.card__creator [data-avatar]{display:none}.card__price{flex-shrink:0;display:flex;align-items:center;gap:6px;font-weight:600;font-size:16px;color:var(--text-2);white-space:nowrap}.card__diamond{width:15px;height:15px;color:var(--text-2)}.card__action{min-height:40px;display:flex;align-items:center}.card__chips{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.card__chips .chip{height:18px;font-size:10px;line-height:1;font-weight:600;padding:0 6.5px;letter-spacing:.01em;border-radius:4px}.card__chips .chip--icon{padding:0 5px}.card__chips .chip--icon .ico{width:14.6px;height:14.6px}.card__chips .chip--smart{gap:2px;padding:4px 4px 4px 2px;background:var(--chip);color:var(--text-2);text-transform:uppercase;letter-spacing:.02em}.card__add-round{display:none}.card__cart{position:relative;z-index:4;width:100%;display:none;align-items:center;justify-content:center;gap:8px;background:var(--black-btn);color:var(--soft-white);border:0;border-radius:var(--radius-btn);height:40px;font-weight:600;font-size:13px;text-transform:uppercase;letter-spacing:.046em;transition:background .15s ease}@media(hover:hover){.card:hover .card__cart,.card__body:focus-within .card__cart{display:flex}.card:hover .card__chips,.card__body:focus-within .card__chips{display:none}}@media(hover:none)and (min-width:721px){.card__cart{display:flex}}.card__cart:hover:not(:disabled){background:#43404a}.card__cart.is-in,.card__cart:disabled{background:#43404a;opacity:1;cursor:default}.card__sale-badge{position:absolute;top:10px;left:10px;z-index:4;display:inline-flex;align-items:center;background:var(--dcl-red);color:#fff;font-weight:800;font-size:11px;letter-spacing:.03em;text-transform:uppercase;border-radius:6px;padding:4px 8px;box-shadow:0 1px 3px #00000040}.card__price--sale{white-space:normal;flex-wrap:wrap;justify-content:flex-end;max-width:58%}.card__price--sale{gap:6px 10px}.card__price-now{display:inline-flex;align-items:center;gap:6px;color:var(--dcl-red);font-weight:700}.card__price-now .card__diamond{color:var(--dcl-red)}.card__price-was{display:inline-flex;align-items:center;gap:4px;color:var(--muted);text-decoration:line-through;font-weight:600;font-size:14px}.card__diamond--was{width:13px;height:13px;color:var(--muted)}.card__countdown{display:inline-flex;align-items:center;gap:4px;background:var(--rarity-bg);color:var(--accent);font-size:11px;font-weight:700;border-radius:6px;padding:2px 8px;white-space:nowrap}.card__price--market{gap:4px}.card__approx{font-weight:700;color:var(--muted)}.card__chips .chip--market{background:var(--rarity-bg);color:var(--accent);text-transform:uppercase;letter-spacing:.02em}.card__preview-spin{position:absolute;top:0;right:0;bottom:0;left:0;margin:auto;z-index:2}:root{--bg: #ffffff;--text: #161518;--text-2: #242129;--muted: #716b7c;--muted-2: #a09ba8;--line: #e6e4ea;--line-strong: #a09ba8;--media: #ecebed;--panel: #f5f5f5;--chip: #ecebed;--accent: #691fa9;--brand-violet: #a524b3;--rarity: #a14bf3;--rarity-bg: rgba(161, 75, 243, .3);--black-btn: #242129;--soft-white: #fcfcfc;--dcl-red: #ff2d55;--ok: #1ea672;--err: #d33;--amethyst: linear-gradient(180deg, #c640cd 0%, #691fa9 100%);--cerise: linear-gradient(135deg, #ff2d55 0%, #c640cd 100%);--radius-card: 12px;--radius-chip: 4px;--radius-btn: 8px;--radius-pill: 50px;--radius-banner: 24px;--sans: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif}*{box-sizing:border-box}body{margin:0;padding-top:92px;background:var(--bg);color:var(--text);font-family:var(--sans);-webkit-font-smoothing:antialiased}@media(max-width:768px){body{padding-top:64px}}#root{display:flex;flex-direction:column;min-height:calc(100vh - 92px)}@media(max-width:768px){#root{min-height:calc(100vh - 64px)}}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer}h1,h2{margin:0}.muted{color:var(--muted)}.small{font-size:13px}.error{color:var(--err)}.error-notice{display:flex;align-items:center;gap:8px;margin:0;padding:10px 12px;border:1px solid rgba(221,51,51,.25);border-radius:var(--radius-btn);background:#dd333314;color:var(--err);font-size:14px;line-height:1.4;text-align:left}.error-notice__ico{flex:none;width:18px;height:18px}.error-notice__msg{color:var(--text-2)}.link{background:none;border:0;color:var(--accent);cursor:pointer;padding:0;font:inherit;font-weight:600}.subnav{position:sticky;top:92px;z-index:40;display:flex;align-items:center;gap:24px;height:66px;padding:0 54px;background:#fff;border-bottom:1px solid var(--line)}.subnav__tabs{display:flex;gap:40px;height:100%}.subnav__tabs a{display:flex;align-items:center;height:100%;white-space:nowrap;text-transform:uppercase;letter-spacing:.03em;font-size:15px;font-weight:600;color:var(--muted-2);border-bottom:4px solid transparent}.subnav__tabs a:hover{color:var(--text)}.subnav__tabs a.active{color:var(--text);border-bottom-color:var(--text)}.subnav__search{position:relative;margin-left:auto;flex:0 1 496px;display:flex;align-items:center;gap:10px;background:#0000000d;border:1px solid var(--line-strong);border-radius:var(--radius-pill);padding:0 16px;height:40px}.subnav__search input{border:0;outline:0;width:100%;font-size:15px;background:transparent;color:var(--text)}.subnav__search input::placeholder{color:var(--muted)}@media(max-width:768px){.subnav{top:64px;height:auto;flex-wrap:wrap;align-items:center;gap:12px;padding:12px 16px 0}.subnav__credits{order:1;margin-right:auto}.subnav__balance{order:2}.subnav__fav{order:3}.subnav__cart-wrap{order:4}.subnav__search{order:5;flex:1 0 100%;margin-left:0;height:34px}.subnav__search input{font-size:14px}.subnav__tabs{order:6;flex:1 0 100%;height:auto;gap:16px;overflow-x:auto;scrollbar-width:none}.subnav__tabs::-webkit-scrollbar{display:none}.subnav__tabs a{height:auto;font-size:12px;letter-spacing:.038em;font-weight:600;border-bottom-width:4px;padding:8px 0 6px}}.subnav__cart{position:relative;display:grid;place-items:center;width:40px;height:40px;background:var(--media);border-radius:var(--radius-btn);color:var(--text-2)}.subnav__cart-badge{position:absolute;top:-4px;right:-4px;background:var(--brand-violet);color:#fff;font-size:12px;font-weight:600;border-radius:999px;min-width:20px;height:20px;display:grid;place-items:center;padding:0 5px;border:2px solid #fff}.subnav__fav{display:grid;place-items:center;width:40px;height:40px;border-radius:var(--radius-btn);color:var(--text-2);transition:background .12s ease,color .12s ease}.subnav__fav:hover{background:var(--media)}.subnav__fav.active{color:var(--brand-violet)}.subnav__fav .ico{width:28px;height:28px}.page{padding:28px 54px 80px;max-width:1760px;margin:0 auto;width:100%;flex:1 0 auto}@media(max-width:768px){.page{padding:16px 16px 56px}}.placeholder{color:var(--muted);font-size:18px;padding:40px 0}.page-loading{display:grid;place-items:center;min-height:46vh}.hero{border-radius:var(--radius-banner);overflow:hidden;margin-bottom:40px;min-height:304px;display:flex;align-items:center;background:radial-gradient(120% 120% at 85% 20%,rgba(163,255,60,.35),transparent 45%),linear-gradient(120deg,#14161b,#23262e 60%,#14161b)}.hero__inner{padding:0 56px}.hero__title{color:#fff;font-size:clamp(28px,4vw,36px);font-weight:700;text-transform:uppercase;line-height:1.235;margin-bottom:22px}.row{margin-bottom:40px}.row__head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.row__title{font-size:20px;font-weight:600;color:var(--text)}.row__viewall{display:inline-flex;align-items:center;gap:4px;color:var(--accent);font-weight:600;font-size:15px;letter-spacing:.046em;text-transform:uppercase}.row__viewall:hover{text-decoration:underline}.row__track{display:flex;gap:16px;overflow-x:auto;padding:12px 10px;margin:0 -10px;scroll-snap-type:x proximity}.row__track>*{flex:0 0 281px;scroll-snap-align:start}@media(max-width:720px){.row__track>*{flex:0 0 44vw}}.assets{display:grid;grid-template-columns:244px 1fr;gap:28px}@media(max-width:900px){.assets{grid-template-columns:1fr}}.filters{display:flex;flex-direction:column;gap:14px}.filters__panel{background:var(--panel);border-radius:var(--radius-lg, 14px);padding:16px 14px}.filters__all{background:none;border:0;font-weight:700;font-size:16px;padding:6px 8px}.filters__group{border-top:1px solid #ededed}.filters__group:first-of-type{border-top:0}.filters__group-head{width:100%;display:flex;align-items:center;justify-content:space-between;background:none;border:0;padding:12px 8px;font-weight:600;font-size:15px;color:var(--text)}.filters__group-head.is-active{color:var(--accent)}.filters__chev{color:var(--muted);font-size:12px}.filters__sub{list-style:none;margin:0 0 8px;padding:0 8px}.filters__sub li{padding:8px 6px;color:#555;font-size:14px}.filters__price{display:flex;align-items:center;justify-content:space-between;font-weight:600}.filters__credits{display:flex;align-items:center;justify-content:space-between;background:var(--rarity-bg);color:var(--accent);border-radius:12px;padding:12px 14px;font-weight:600}.toggle{width:34px;height:20px;border-radius:999px;background:#cbb8f2;position:relative}.toggle:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:#fff}.assets__bar{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.assets__count{color:var(--muted);font-weight:600}.sortby{background:#fff;border:1px solid var(--line-strong);border-radius:var(--radius-btn);padding:10px 16px;font-weight:700;text-transform:uppercase;font-size:13px;letter-spacing:.03em}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px}@media(max-width:720px){.grid{grid-template-columns:1fr 1fr;gap:16px}}.browse{position:relative}.filter-pop{position:absolute;top:calc(100% + 8px);left:0;z-index:36;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 12px 32px #1615181f;padding:8px;animation:cart-pop-in .16s ease}.filter-pop--section{display:flex;gap:4px;min-width:340px}.filter-pop__cats,.filter-pop__subs{list-style:none;margin:0;padding:0;flex:1}.filter-pop__subs{border-left:1px solid var(--line);padding-left:4px;max-height:300px;overflow-y:auto}.filter-pop__cat,.filter-pop__sub{width:100%;text-align:left;background:none;border:0;padding:9px 12px;border-radius:8px;font-size:14px;color:var(--text);cursor:pointer}.filter-pop__cat:hover,.filter-pop__sub:hover{background:#f5f4f7}.filter-pop__cat.is-active,.filter-pop__sub.is-active{color:var(--accent);font-weight:700;background:var(--rarity-bg)}.filter-pop--rarity{display:grid;grid-template-columns:1fr 1fr;gap:2px;min-width:250px}.filter-pop__check{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:8px;font-size:14px;text-transform:capitalize;cursor:pointer}.filter-pop__check:hover{background:#f5f4f7}.filter-pop__check input{accent-color:var(--accent);width:15px;height:15px}.filter-pop--price{min-width:240px;padding:12px}.filter-pop__price-row{display:flex;align-items:center;gap:8px}.filter-pop__price-row input{width:100%;border:1px solid var(--line-strong);border-radius:10px;padding:8px 10px;font-size:14px}.filter-pop__price-row input:focus{outline:0;border-color:var(--accent)}.filter-pop__price-row input::-webkit-outer-spin-button,.filter-pop__price-row input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.filter-pop__hint{margin:8px 2px 0;color:var(--muted);font-size:12px}.filter-pop--sort{right:0;left:auto;min-width:174px;padding:4px 0;border:0;border-radius:8px;box-shadow:0 4px 25px 5px #00000040}.filter-pop--sort .filter-pop__sort{height:40px;display:flex;align-items:center;padding:0 8px;border-radius:0;font-size:14px;color:#43404a}.filter-pop--sort .filter-pop__sort:hover{background:var(--chip)}.filter-pop--sort .filter-pop__sort.is-active{color:var(--accent);font-weight:600;background:transparent}.card--skeleton,.asset-card--skeleton{min-height:300px;border:1px solid var(--line);border-radius:var(--radius-card);background:linear-gradient(100deg,#efeef2 30%,#e2e0e7,#efeef2 70%);background-size:200% 100%;animation:shimmer 1.4s infinite linear}.asset-card--skeleton{min-height:260px;border-radius:12px}@keyframes shimmer{to{background-position:-200% 0}}.spinner{width:30px;height:30px;margin-top:14px;border-radius:50%;border:3px solid var(--line);border-top-color:var(--accent);animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.card--skeleton,.asset-card--skeleton{animation:none}.spinner{animation-duration:2s}}.chip{display:inline-flex;align-items:center;font-size:11px;font-weight:700;border-radius:var(--radius-chip);padding:3px 8px;background:var(--chip);color:#555}.chip--rarity{background:var(--rarity-bg);color:var(--rarity);text-transform:uppercase}.chip--icon{padding:3px 6px;font-size:13px}.chip--icon .ico{width:14px;height:14px;color:#444}@media(max-width:720px){.card__media{aspect-ratio:201 / 213}.card__name{font-size:12px}.card__body{display:grid;height:auto;grid-template-columns:1fr auto;grid-template-areas:"desc desc" "price add";align-items:center;row-gap:10px;padding:8px}.card__top{display:contents}.card__desc{grid-area:desc;min-width:0}.card__chips,.card__cart{display:none}.card__price{grid-area:price;align-self:center;justify-self:start}.card__action{grid-area:add;align-self:center;justify-self:end;min-height:0}.card__add-round{align-self:center;justify-self:end;z-index:4;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;border:0;padding:0;background:var(--accent);color:#fff;cursor:pointer}.card__add-round .ico{width:18px;height:18px}.card__add-round:disabled{opacity:.5;cursor:default}}.price-was{color:var(--muted);text-decoration:line-through;font-weight:600}.save-badge{display:inline-flex;align-items:center;background:#1a8f4c1f;color:#1a8f4c;font-weight:700;font-size:12px;border-radius:6px;padding:2px 8px;white-space:nowrap}.sale-countdown{display:inline-flex;align-items:center;gap:4px;background:var(--rarity-bg);color:var(--accent);font-size:11px;font-weight:700;border-radius:6px;padding:2px 8px;white-space:nowrap}.market-banner{display:flex;align-items:center;gap:10px;background:var(--rarity-bg);color:var(--accent);border-radius:12px;padding:12px 16px;margin-bottom:14px;font-weight:600;font-size:14px}.market-banner__ico{font-size:15px}.market-banner--warn{background:#d333331a;color:var(--err)}.mkt-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:grid;place-items:center;padding:20px}.mkt-modal__scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:#16151873}.mkt-modal__card{position:relative;z-index:1;width:100%;max-width:420px;background:#fff;border-radius:var(--radius-banner);padding:24px;box-shadow:0 24px 60px #16151847;animation:cart-pop-in .16s ease}.mkt-modal__head{display:flex;align-items:center;gap:14px;margin-bottom:18px}.mkt-modal__thumb{width:64px;height:64px;flex:none;border-radius:12px;overflow:hidden;background:var(--media)}.mkt-modal__thumb img{width:100%;height:100%;object-fit:contain}.mkt-modal__name{font-weight:700;font-size:16px;color:var(--text);margin-bottom:6px}.mkt-modal__price{background:var(--panel);border-radius:14px;padding:16px;margin-bottom:14px}.mkt-modal__price-label{color:var(--muted);font-size:13px;font-weight:600;margin-bottom:6px}.mkt-modal__price-value{display:flex;align-items:center;gap:8px;font-weight:700;font-size:24px;color:var(--text)}.mkt-modal__price-value--approx{color:var(--text-2)}.mkt-modal__approx{color:var(--muted)}.mkt-modal__diamond{width:20px;height:20px;color:var(--accent)}.mkt-modal__price-sub{margin-top:6px;font-size:13px}.mkt-modal__balance{font-size:13px;margin-bottom:6px}.mkt-modal__note{margin:6px 0 0;font-size:13px}.mkt-modal__actions{display:flex;gap:10px;margin-top:18px}.myassets__head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:16px}.connect-row{display:flex;gap:12px;margin-top:12px}.asset-grid{display:grid;grid-template-columns:repeat(auto-fill,281px);gap:16px;margin-top:20px;justify-content:start}@media(max-width:640px){.asset-grid{grid-template-columns:repeat(auto-fill,minmax(0,1fr))}}.asset-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px;display:flex;flex-direction:column;gap:10px}.asset-card__img{aspect-ratio:1;background:var(--media);border-radius:8px;display:grid;place-items:center;overflow:hidden}.asset-card__img img{width:100%;height:100%;object-fit:contain}.asset-card__name{font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.badge{font-size:12px;color:var(--ok);border:1px solid var(--ok);border-radius:999px;padding:3px 10px}.asset-card__listed{display:flex;align-items:center;justify-content:space-between;gap:8px}.asset-card__price{font-weight:800;font-size:16px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:grid;place-items:center;z-index:100}.modal{background:#fff;border-radius:var(--radius-card);padding:24px;width:min(420px,92vw);display:flex;flex-direction:column;gap:12px}.modal__title{font-size:20px}.modal__img{width:140px;height:140px;object-fit:contain;align-self:center;background:var(--media);border-radius:10px}.field{display:flex;flex-direction:column;gap:6px;font-size:14px}.field input{background:#fff;border:1px solid var(--line-strong);border-radius:8px;padding:10px 12px;color:var(--text);font:inherit}.modal__actions{display:flex;justify-content:flex-end;gap:10px;margin-top:6px}.cart{max-width:1120px}.cart--empty{color:var(--muted);font-size:18px;padding:60px 0}.cart__body{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:28px;align-items:start;margin:20px 0}.cart__main{min-width:0}.cart__list{display:flex;flex-direction:column;gap:12px;margin:0 0 14px}.cart__row{display:grid;grid-template-columns:64px 1fr auto auto;align-items:center;gap:16px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:12px 16px}.cart__thumb{width:64px;height:64px;background:var(--media);border-radius:8px;overflow:hidden}.cart__thumb img{width:100%;height:100%;object-fit:contain}.cart__name{font-weight:700}.cart__price{font-weight:800}.cart__summary{position:sticky;top:88px;display:flex;flex-direction:column;gap:16px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px}.cart__summary-title{margin:0;font-size:18px;font-weight:800}.cart__total{display:flex;flex-direction:column;gap:4px;font-size:16px}.cart__total-line{display:flex;align-items:center;justify-content:space-between}.cart__total strong{font-size:22px}.cart__actions{display:flex;flex-direction:column;gap:10px}.cart__msg{margin:0;font-size:13px}.subnav__credits{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:40px;padding:0 16px;border-radius:var(--radius-btn);background:linear-gradient(180deg,#c640cd,#691fa9);color:#fcfcfc;font-weight:600;font-size:13px;text-transform:uppercase;letter-spacing:.046em;white-space:nowrap;transition:filter .15s ease}.subnav__credits:hover{filter:brightness(1.08)}.subnav__credits:active{filter:brightness(.95)}.subnav__credits-ico{width:20px;height:20px}.subnav__balance{display:inline-flex;align-items:center;gap:4px;height:40px;padding:0 4px;border-radius:4px;background:transparent;color:#242129;font-weight:600;font-size:16px;letter-spacing:-.03em;white-space:nowrap}.subnav__balance-ico{width:20px;height:20px;color:var(--accent)}.subnav__balance-skel{display:inline-block;width:26px;height:16px;border-radius:5px}.cart__balance{margin-top:4px}.cart__info{min-width:0}.cart__creator{margin-top:3px}.cart__remove{border:0;background:none;color:var(--muted-2);cursor:pointer;padding:8px;border-radius:8px;display:grid;place-items:center;transition:color .12s ease,background .12s ease}.cart__remove:hover:not(:disabled){color:var(--dcl-red);background:#ff2d551a}.cart__remove:disabled{opacity:.5;cursor:default}.cart__utils{display:flex;gap:20px;margin-top:14px}@media(max-width:880px){.cart__body{grid-template-columns:1fr}.cart__summary{position:static}}.cart__utils .link{font-size:13px;color:var(--muted);font-weight:600}.cart__utils .link:hover:not(:disabled){color:var(--text)}.getcredits{max-width:1320px;margin:0 auto}.getcredits__head{margin-bottom:32px;max-width:560px}.getcredits__title{font-size:36px;line-height:1.235;font-weight:700;color:#171717;text-transform:capitalize;margin-bottom:12px}.getcredits__sub{margin:0;font-size:16px;line-height:30px;color:var(--text-2)}.getcredits__learn{display:inline-flex;align-items:center;gap:2px;color:var(--accent);font-size:14px;font-weight:500;text-decoration:underline}.getcredits__learn:hover{color:var(--brand-violet)}.getcredits__learn-ico{width:13px;height:13px}.getcredits__note{margin:-8px 0 20px}.packs{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}@media(max-width:980px){.packs{grid-template-columns:repeat(2,1fr)}}@media(max-width:520px){.packs{grid-template-columns:1fr}}.pack{position:relative;display:block;padding:4px;border:0;background:transparent;border-radius:24px;cursor:pointer;text-align:center;transition:transform .15s ease}.pack:hover{transform:translateY(-4px)}.pack:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.pack__inner{display:flex;flex-direction:column;align-items:center;background:#0c0223;border-radius:20px;overflow:hidden;transition:box-shadow .15s ease}.pack:hover .pack__inner{box-shadow:0 18px 40px #691fa966}.pack--best .pack__inner{box-shadow:0 0 0 1px #c640cd80}.pack__badge{position:absolute;top:-8px;left:50%;transform:translate(-50%);z-index:2;background:linear-gradient(180deg,#ff2d55,#c640cd);color:#fff;font-size:15px;font-weight:500;line-height:1;padding:9px 16px;border-radius:50px;white-space:nowrap;box-shadow:0 8px 18px #ff2d5559}.pack__label{padding:40px 16px 4px;font-size:24px;font-weight:700;color:#fff;text-transform:capitalize}.pack__art{width:100%;padding:4px 12px 0}.pack__art img{display:block;width:100%;height:auto;border-radius:16px;filter:drop-shadow(6px 8px 16px rgba(0,0,0,.45))}.pack__cta-wrap{width:100%;padding:20px 24px 40px}.pack__cta{display:flex;align-items:center;justify-content:center;height:48px;border-radius:8px;background:linear-gradient(180deg,#c640cd,#691fa9);color:var(--soft-white);font-size:15px;font-weight:600;letter-spacing:.046em;text-transform:uppercase;transition:filter .15s ease}.pack:hover .pack__cta{filter:brightness(1.08)}.pack--skeleton{cursor:default}.pack--skeleton:hover{transform:none}.pack--skeleton:hover .pack__inner{box-shadow:none}.pack__label-sk{display:block;width:60%;height:24px;margin:40px auto 4px}.pack__art-sk{display:block;width:calc(100% - 24px);margin:4px 12px 0;aspect-ratio:1 / 1;border-radius:16px}.pack__cta-sk{display:block;height:48px;margin:20px 24px 40px;border-radius:8px}.getcredits__status{display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center;padding:48px 24px}.getcredits__status-title{font-size:20px;font-weight:700;margin:6px 0 0}.getcredits__status-actions{display:flex;gap:12px;margin-top:16px}.getcredits__confetti{font-size:48px;line-height:1}.getcredits__status--ok strong{color:var(--accent);font-size:20px}.gc-processing{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:32px;padding:64px 24px;min-height:42vh}.gc-processing__logo{width:61px;height:61px;animation:gc-pulse 1.2s ease-in-out infinite}.gc-processing__body{display:flex;flex-direction:column;align-items:center;gap:8px}.gc-processing__title{margin:0;font-size:20px;line-height:1.6;color:var(--text-2)}.gc-processing__title strong{font-weight:700}.gc-progress{display:flex;align-items:center;gap:8px}.gc-progress__track{position:relative;width:456px;max-width:60vw;height:12px;border-radius:100px;background:var(--chip);overflow:hidden}.gc-progress__fill{position:absolute;top:0;left:-40%;height:100%;width:40%;border-radius:100px;background:linear-gradient(180deg,#c640cd,#691fa9);animation:gc-indeterminate 1.4s ease-in-out infinite}.gc-progress__count{font-size:16px;line-height:22px;color:var(--text-2)}@keyframes gc-indeterminate{0%{left:-40%}to{left:100%}}@keyframes gc-pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(.88);opacity:.7}}@media(prefers-reduced-motion:reduce){.gc-processing__logo{animation:none}.gc-progress__fill{left:0;width:30%;animation:none}}.gc-success{display:flex;flex-direction:column;gap:12px;max-width:895px;margin:0 auto}.gc-banner{display:flex;align-items:center;gap:16px;padding:24px 16px;border-radius:16px;background:#e0f7e7;border:1px solid #34ce77}.gc-banner__icon{flex:none;width:60px;height:60px}.gc-banner__text{flex:1;margin:0;text-align:center;font-size:20px;line-height:1.334;color:var(--text-2)}.gc-banner__text strong{font-weight:700}.gc-credits{padding:24px;border-radius:16px;background:#fff;border:1px solid #cfcdd4}.gc-credits__row{position:relative;display:flex;align-items:center;justify-content:center;min-height:109px;padding:8px 24px 8px 150px;border-radius:8px;background:#f4e9ff}.gc-credits__coin{position:absolute;left:35px;top:50%;transform:translateY(-50%);width:93px;height:93px;filter:drop-shadow(5px 7px 14px rgba(0,0,0,.17))}.gc-credits__text{display:inline-flex;align-items:center;gap:8px;margin:0;color:var(--text)}.gc-credits__diamond{width:30px;height:30px;color:var(--accent)}.gc-credits__amount{font-size:24px;font-weight:700;text-transform:capitalize}.gc-credits__added{font-size:14px;font-weight:400;color:var(--text)}.gc-actions{display:flex;gap:12px}.gc-actions__btn{flex:1;display:inline-flex;align-items:center;justify-content:center;height:48px;padding:0 12px;border-radius:8px;font-size:15px;font-weight:600;letter-spacing:.046em;text-transform:uppercase;transition:background .15s ease,filter .15s ease}.gc-actions__btn--solid{border:0;background:var(--accent);color:var(--soft-white)}.gc-actions__btn--solid:hover{filter:brightness(1.08)}.gc-actions__btn--outline{background:#fff;border:2px solid var(--accent);color:var(--accent)}.gc-actions__btn--outline:hover{background:#691fa90f}@media(max-width:560px){.gc-banner{flex-direction:column;text-align:center}.gc-credits__row{flex-direction:column;gap:10px;padding:120px 16px 16px}.gc-credits__coin{left:50%;top:16px;transform:translate(-50%)}.gc-actions{flex-direction:column}}.gc-status{display:flex;flex-direction:column;align-items:center;gap:10px;max-width:560px;margin:0 auto;padding:48px 24px;text-align:center}.gc-status__title{margin:0;font-size:20px;font-weight:700}.gc-status__actions{display:flex;gap:12px;margin-top:16px}.gc-status--err .gc-status__title{color:var(--err)}.skeleton{border-radius:6px;background:linear-gradient(100deg,#efeef2 30%,#e2e0e7,#efeef2 70%);background-size:200% 100%;animation:shimmer 1.4s infinite linear}@media(prefers-reduced-motion:reduce){.skeleton{animation:none}}.success{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;max-width:1080px;margin:0 auto;padding:32px 24px;min-height:72vh}.success__preview{height:min(560px,68vh);background:var(--media, #ecebed);border-radius:var(--radius-card, 16px);overflow:hidden;position:relative}.success__preview iframe,.success__preview>*{width:100%;height:100%;border:0;display:block}.success__spinner{margin:4px auto 8px;width:40px;height:40px}.success__title{font-size:clamp(30px,4vw,42px);font-weight:800;letter-spacing:-.02em;margin:20px 0 8px}.success__sub{font-size:18px;color:#4b4b57;margin:0 0 22px}.success__list{margin:0 0 22px;padding-left:18px;color:#4b4b57;line-height:1.7}.success__links{display:flex;gap:18px;justify-content:center;margin:0 0 20px}.success__receipt{display:inline-block;margin:0;color:var(--accent);font-weight:600;font-size:14px;background:none;border:0;padding:0;cursor:pointer;text-decoration:none}.notfound{min-height:52vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:14px}.notfound__ico{width:44px;height:44px;opacity:.4}.notfound__title{font-size:24px}.success__actions{display:flex;gap:12px;flex-wrap:wrap}@media(max-width:820px){.success{grid-template-columns:1fr;gap:24px;text-align:center}.success__actions{justify-content:center}}.subnav__cart-wrap{position:relative}.cart-pop{position:absolute;top:calc(100% + 12px);right:0;z-index:60;width:320px;background:#fff;border:1px solid var(--line);border-radius:var(--radius-card, 12px);box-shadow:0 14px 36px #14141e2e;padding:14px;animation:cart-pop-in .18s ease}.cart-pop:before{content:"";position:absolute;top:-6px;right:14px;width:12px;height:12px;background:#fff;border-left:1px solid var(--line);border-top:1px solid var(--line);transform:rotate(45deg)}@keyframes cart-pop-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}.cart-pop__head{display:flex;align-items:center;gap:8px;font-weight:700;font-size:14px;margin-bottom:12px}.cart-pop__list{display:flex;flex-direction:column;gap:10px;max-height:264px;overflow-y:auto}.cart-pop__row{display:grid;grid-template-columns:40px 1fr auto;gap:10px;align-items:center}.cart-pop__thumb{width:40px;height:40px;border-radius:8px;background:var(--media);overflow:hidden}.cart-pop__thumb img{width:100%;height:100%;object-fit:cover}.cart-pop__name{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cart-pop__price{font-size:13px;font-weight:700}.cart-pop__foot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}.cart-pop__total{font-size:13px;color:var(--muted)}.subnav__search-clear{display:grid;place-items:center;width:20px;height:20px;flex:0 0 auto;border:0;border-radius:50%;background:#00000014;color:var(--muted);font-size:15px;line-height:1;cursor:pointer}.subnav__search-clear:hover{background:#00000029;color:var(--text)}.search-pop{position:absolute;top:calc(100% + 8px);left:0;right:0;z-index:60;background:#fff;border:1px solid var(--line);border-radius:var(--radius-card, 12px);box-shadow:0 14px 36px #14141e2e;padding:8px;animation:cart-pop-in .16s ease;max-height:min(70vh,560px);overflow-y:auto}@media(max-width:768px){.search-pop{left:auto;right:0;width:calc(100vw - 24px);max-height:min(70vh,480px)}}.search-pop__section-head{display:flex;align-items:center;justify-content:space-between;padding:6px 10px 4px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.search-pop__clear{background:none;border:0;color:var(--accent);font-weight:600;font-size:12px;cursor:pointer}.search-pop__list{list-style:none;margin:0;padding:0}.search-pop__row{width:100%;display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:10px;align-items:center;background:none;border:0;padding:8px 10px;border-radius:10px;text-align:left;cursor:pointer}.search-pop__row:hover{background:#f5f4f7}.search-pop__thumb{width:40px;height:40px;border-radius:8px;background:var(--media);overflow:hidden}.search-pop__thumb img{width:100%;height:100%;object-fit:cover}.search-pop__thumb--round,.search-pop__thumb--round img{border-radius:50%}.search-pop__thumb--icon{display:grid;place-items:center}.search-pop__thumb--icon .ico{width:18px;height:18px;color:var(--muted)}.search-pop__collthumb{width:40px;height:40px;border-radius:8px;overflow:hidden;flex:none}.search-pop__thumb--mosaic{display:grid;grid-template-columns:1fr 1fr;grid-auto-rows:1fr;gap:1px;background:var(--line)}.search-pop__thumb--mosaic[data-count="1"]{grid-template-columns:1fr}.search-pop__thumb--mosaic[data-count="2"]{grid-template-rows:1fr}.search-pop__text{min-width:0;display:flex;flex-direction:column;gap:1px}.search-pop__name{min-width:0;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.search-pop__sub{min-width:0;font-size:12px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.search-pop__price{font-size:13px;font-weight:700;white-space:nowrap}.search-pop__seeall{width:100%;margin-top:4px;padding:10px;border:0;border-top:1px solid var(--line);background:none;color:var(--accent);font-weight:700;font-size:13px;text-align:center;cursor:pointer}.search-pop__seeall:hover{background:#f5f4f7}.search-pop__empty{padding:16px 10px;color:var(--muted);font-size:14px;text-align:center}.search-pop__recent{display:flex;align-items:center}.search-pop__recent-btn{flex:1;min-width:0;display:flex;align-items:center;gap:10px;background:none;border:0;padding:9px 10px;border-radius:10px;text-align:left;font-size:14px;color:var(--text);cursor:pointer;overflow:hidden}.search-pop__recent-btn:hover{background:#f5f4f7}.search-pop__recent-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.search-pop__recent-remove{flex:0 0 auto;background:none;border:0;color:var(--muted);font-size:16px;line-height:1;padding:6px 10px;cursor:pointer}.search-pop__recent-remove:hover{color:var(--text)}.cart-upsell{margin-top:44px}.cart-upsell__title{font-size:18px;font-weight:700;margin-bottom:14px}.cart-upsell__row{display:flex;gap:14px;overflow-x:auto;padding-bottom:6px}.cart-upsell__card{flex:0 0 150px;border:1px solid var(--line);border-radius:var(--radius-card, 12px);padding:10px}.cart-upsell__thumb{aspect-ratio:1 / 1;background:var(--media);border-radius:8px;overflow:hidden;margin-bottom:8px}.cart-upsell__thumb img{width:100%;height:100%;object-fit:cover}.cart-upsell__name{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cart-upsell__price{font-size:14px;font-weight:700;margin:4px 0 8px}.cart-upsell__add{width:100%}.overview__empty{display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center;padding:80px 20px}.overview__empty-title{font-size:22px;font-weight:700;margin:0}.cart--empty{max-width:none;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;text-align:center;padding:90px 20px;min-height:50vh}.cart-empty__title{font-size:22px;font-weight:700;margin:6px 0 0}.filters__panel-title{font-weight:700;font-size:14px;margin:0 2px 10px}.filters__sub{list-style:none;margin:0 0 8px;padding:0 4px}.filters__sub-item{background:none;border:0;padding:7px 8px;color:#555;font-size:14px;text-align:left;width:100%;border-radius:6px;cursor:pointer}.filters__sub-item:hover{background:#0000000a}.filters__sub-item.is-active{color:var(--accent);font-weight:700;background:var(--rarity-bg)}.filters__rarities{display:flex;flex-wrap:wrap;gap:6px}.rarity-pill{text-transform:capitalize;font-size:12px;font-weight:600;padding:5px 11px;border-radius:999px;border:1px solid var(--line);background:#fff;color:var(--muted);cursor:pointer}.rarity-pill.is-on{background:var(--rarity-bg);color:var(--accent);border-color:transparent}.filters__price-inputs{display:flex;align-items:center;gap:8px}.filters__price-inputs input{width:100%;border:1px solid var(--line-strong);border-radius:8px;padding:8px 10px;font-size:14px}.filters__price-inputs input::-webkit-outer-spin-button,.filters__price-inputs input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.toggle.is-on{background:var(--accent)}.sortby-wrap{position:relative}.sortby-menu{position:absolute;top:calc(100% + 6px);right:0;z-index:30;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 10px 28px #14141e24;padding:6px;min-width:200px}.sortby-menu button{display:block;width:100%;text-align:left;background:none;border:0;padding:9px 12px;border-radius:7px;font-size:14px;color:var(--text);cursor:pointer}.sortby-menu button:hover{background:#0000000d}.sortby-menu button.is-active{color:var(--accent);font-weight:700}.favorites__head{display:flex;align-items:baseline;gap:12px;margin-bottom:20px}.favorites__count{color:var(--muted);font-size:14px}.favorites-empty{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;padding:90px 20px;min-height:50vh}.favorites-empty__title{font-size:22px;font-weight:700;margin:6px 0 0}.purchases__head{display:flex;align-items:baseline;gap:12px;margin-bottom:20px}.purchases__count{color:var(--muted);font-size:14px}.purchases__list{display:flex;flex-direction:column;gap:10px;max-width:760px}.purchase{display:grid;grid-template-columns:56px 1fr auto auto;align-items:center;gap:16px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:12px 16px;text-decoration:none;color:var(--text);transition:box-shadow .15s,transform .15s}a.purchase:hover{box-shadow:0 8px 22px #14141e1a;transform:translateY(-1px)}.purchase__thumb{width:56px;height:56px;border-radius:10px;background:var(--media, #f2f0f7);overflow:hidden;display:flex;align-items:center;justify-content:center}.purchase__thumb img{width:100%;height:100%;object-fit:contain}.purchase__info{min-width:0}.purchase__name{font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.purchase__date{font-size:13px;margin-top:2px}.purchase__badge{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;padding:4px 10px;border-radius:999px;white-space:nowrap}.purchase__badge--done{background:#2ea05a24;color:#1f8a4c}.purchase__badge--pending{background:#f5a62329;color:#b5790a}.purchase__price{font-weight:800;white-space:nowrap}.purchase--skeleton{display:block;height:82px;border-color:transparent;background:linear-gradient(100deg,#ededed 30%,#f7f7f7,#ededed 70%);background-size:200% 100%;animation:shimmer 1.3s infinite linear}.purchases-empty{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;padding:90px 20px;min-height:50vh}.purchases-empty__title{font-size:22px;font-weight:700;margin:6px 0 0}.modal--success{text-align:center;align-items:center}.modal-success__check{width:56px;height:56px;border-radius:50%;background:#1f8a4c;color:#fff;font-size:30px;font-weight:800;display:grid;place-items:center;margin:4px auto 2px;animation:pop-in .32s cubic-bezier(.2,.9,.3,1.4)}.modal-success__name{font-weight:700;font-size:16px;margin:2px 0 0}.modal--success .modal__actions{justify-content:center;width:100%}@keyframes pop-in{0%{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}@media(prefers-reduced-motion:reduce){.modal-success__check{animation:none}}.card__creator[data-testid=creator]{margin-bottom:2px}.card__creator [data-avatar]{width:16px;height:16px}.cart-pop__actions{display:flex;gap:8px}.fitting{position:fixed;top:0;right:0;bottom:0;left:0;z-index:70;display:grid;place-items:center;padding:20px}.fitting__scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:#16151880;animation:fade-in .16s ease}.fitting__panel{position:relative;z-index:1;display:flex;width:100%;max-width:1000px;height:min(88vh,720px);background:#fff;border-radius:var(--radius-banner);overflow:hidden;box-shadow:0 24px 60px #1615184d;animation:cart-pop-in .18s ease}.fitting__close{position:absolute;top:12px;right:14px;z-index:3;width:34px;height:34px;border:0;border-radius:50%;background:#ffffffe6;color:var(--text);font-size:22px;line-height:1;cursor:pointer;display:grid;place-items:center;box-shadow:0 1px 4px #00000026}.fitting__stage{position:relative;flex:1;min-width:0;background:radial-gradient(circle at 50% 45%,#bf00ff,#510884 78%)}.fitting__stage iframe{position:relative;z-index:1;width:100%;height:100%;border:0;display:block}.fitting__empty-stage{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;text-align:center;padding:20px;color:#fff}.fitting__empty-stage .muted{color:#ffffffbf}.fitting__loading{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;display:grid;place-items:center;pointer-events:none}.fitting__spinner{width:34px;height:34px;border-radius:50%;border:3px solid rgba(255,255,255,.3);border-top-color:#fff;animation:spin .8s linear infinite}.fitting__side{width:380px;flex:none;display:flex;flex-direction:column;border-left:1px solid var(--line)}.fitting__head{padding:20px 20px 12px}.fitting__title{font-size:20px;font-weight:800;margin:0 0 4px}.fitting__sub{font-size:13px;margin:0}.fitting__items{flex:1;overflow-y:auto;padding:8px 14px;display:flex;flex-direction:column;gap:8px}.fitting-row{display:flex;align-items:center;gap:12px;padding:10px;border-radius:12px;border:1px solid transparent}.fitting-row.is-on{background:var(--rarity-bg);border-color:transparent}.fitting-row__toggle{flex:none;cursor:pointer;display:grid;place-items:center}.fitting-row__toggle input{position:absolute;opacity:0;width:0;height:0}.fitting-row__box{width:22px;height:22px;border-radius:6px;border:2px solid var(--line-strong);background:#fff;display:grid;place-items:center;transition:background .12s ease,border-color .12s ease}.fitting-row__box:after{content:"✓";color:#fff;font-size:14px;font-weight:800;opacity:0}.fitting-row__toggle input:checked+.fitting-row__box{background:var(--accent);border-color:var(--accent)}.fitting-row__toggle input:checked+.fitting-row__box:after{opacity:1}.fitting-row__toggle input:disabled+.fitting-row__box{opacity:.4;cursor:not-allowed}.fitting-row__thumb{width:48px;height:48px;flex:none;border-radius:10px;overflow:hidden;background:var(--media)}.fitting-row__thumb img{width:100%;height:100%;object-fit:contain}.fitting-row__info{flex:1;min-width:0}.fitting-row__name{font-weight:600;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fitting-row__meta{display:flex;align-items:center;gap:6px;margin-top:3px}.fitting-row__conflict{font-size:10px;font-weight:700;color:var(--accent);background:#691fa91f;border-radius:5px;padding:1px 6px;text-transform:uppercase;letter-spacing:.02em;white-space:nowrap}.fitting-row.is-incompatible{opacity:.5}.fitting-row__incompat{font-size:10px;font-weight:700;color:#9a6100;background:#d69e2e2e;border-radius:5px;padding:1px 6px;text-transform:uppercase;letter-spacing:.02em;white-space:nowrap}.fitting-row__price{display:inline-flex;align-items:center;gap:4px;font-weight:700;font-size:14px;color:var(--text-2);flex:none}.fitting-row__diamond{width:13px;height:13px;color:var(--text-2)}.fitting-row__remove{flex:none;border:0;background:none;color:var(--muted-2);cursor:pointer;padding:6px;border-radius:8px;display:grid;place-items:center;transition:color .12s ease,background .12s ease}.fitting-row__remove:hover{color:var(--dcl-red);background:#ff2d551a}.fitting__foot{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 20px;border-top:1px solid var(--line)}.fitting__total{font-size:14px;color:var(--text-2)}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){.fitting__scrim,.fitting__panel{animation:none}.fitting__spinner{animation-duration:2s}}@media(max-width:820px){.fitting__panel{flex-direction:column;height:min(92vh,860px)}.fitting__stage{height:44vh;flex:none}.fitting__side{width:100%;border-left:0;border-top:1px solid var(--line);min-height:0}}.browse--sidebar{display:flex;gap:32px;align-items:flex-start}.browse__sidebar{flex:none;width:265px}.browse__main{flex:1;min-width:0}.browse__sidebar-head,.browse__sidebar-foot,.browse__filters-btn{display:none}@media(max-width:900px){.browse--sidebar{display:block}.browse__main{width:100%}.browse__sidebar{position:fixed;left:0;right:0;bottom:0;top:auto;z-index:9999;width:100%;max-height:88vh;border-radius:16px 16px 0 0;background:#fff;padding:0 16px;overflow-y:auto;box-shadow:0 -4px 24px #0000002e;transform:translateY(100%);transition:transform .26s ease;visibility:hidden}.browse__sidebar.is-open{transform:translateY(0);visibility:visible}.browse__scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9998;background:#0006}.browse__sidebar-head{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;background:#fff;margin:0 -16px 8px;padding:16px 16px 12px;border-radius:16px 16px 0 0}.browse__sidebar-title{font-weight:700;font-size:18px;color:var(--text)}.browse__sidebar-close{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--chip);border:0;font-size:15px;line-height:1;cursor:pointer;color:var(--text)}.browse__sidebar-foot{display:flex;align-items:center;gap:12px;position:sticky;bottom:0;margin:8px -16px 0;padding:16px 16px calc(16px + env(safe-area-inset-bottom));background:#fff;box-shadow:0 -4px 12px #00000040;z-index:1}.browse__clear{flex:1;height:40px;background:none;border:0;border-radius:var(--radius-btn);color:var(--accent);font-weight:600;font-size:13px;text-transform:uppercase;letter-spacing:.035em;text-decoration:underline;cursor:pointer;white-space:nowrap}.browse__apply{flex:1;height:40px;border:0;border-radius:var(--radius-btn);background:var(--accent);color:#fff;font-weight:600;font-size:13px;text-transform:uppercase;letter-spacing:.035em;cursor:pointer}.browse__filters-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:4px;background:#fff;border:.5px solid var(--line-strong);border-radius:4px;color:var(--text-2);cursor:pointer}}.buy-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:grid;place-items:center;padding:20px}.buy-modal__scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:#16151873}.buy-modal__card{position:relative;z-index:1;width:100%;max-width:560px;min-width:0;background:#fff;border-radius:16px;padding:12px 16px 16px;box-shadow:0 24px 60px #16151847;animation:cart-pop-in .16s ease;display:flex;flex-direction:column;gap:24px}.buy-modal__card--tall{min-height:379px;justify-content:space-between}.buy-modal__head{display:flex;flex-direction:column;gap:4px;padding-bottom:16px;border-bottom:1px solid #cfcdd4}.buy-modal__head-row{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.buy-modal__title{margin:0;font-size:20px;font-weight:600;line-height:1.6;color:#161518}.buy-modal__x{flex-shrink:0;border:0;background:transparent;cursor:pointer;padding:2px;line-height:0}.buy-modal__balance{display:flex;align-items:center;gap:4px}.buy-modal__balance-label{font-size:14px;font-weight:600;color:#5e5b67}.buy-modal__balance-ico{width:14px;height:14px;background:#161518}.buy-modal__balance-value{font-size:14px;color:#161518}.buy-modal__body{display:flex;flex-direction:column;gap:24px}.buy-modal__loading{padding:32px 0;text-align:center;color:#716b7c}.buy-modal__error{margin:0;color:#d64550;font-size:15px}.buy-modal__asset{display:flex;gap:12px;align-items:center}.buy-modal__asset-thumb{flex-shrink:0;width:180px;height:180px;background:#ecebed;border:1px solid #a09ba8;border-radius:16px;display:grid;place-items:center;overflow:hidden}.buy-modal__asset-thumb img{width:83%;height:83%;object-fit:contain;filter:drop-shadow(.7px 2.9px 3.7px rgba(0,0,0,.1))}.buy-modal__asset-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:32px;padding:8px}.buy-modal__asset-name{font-size:20px;font-weight:600;line-height:1.57;color:#161518;overflow:hidden;text-overflow:ellipsis}.buy-modal__asset-creator{font-size:10px;line-height:1.43;color:#716b7c}.buy-modal__asset-price{display:flex;align-items:center;gap:4px}.buy-modal__asset-price-ico{width:24px;height:24px;background:#242129}.buy-modal__asset-price span{font-size:24px;font-weight:600;color:#242129}.buy-modal__warning{display:flex;align-items:center;gap:8px;justify-content:center;background:#f0dfff;border-radius:8px;padding:12px 8px}.buy-modal__warning-ico{flex-shrink:0}.buy-modal__warning-text{margin:0;font-size:14px;line-height:1.334;color:#242129;text-align:center}.buy-modal__warning-text b{font-weight:700}.buy-modal__packs{display:flex;gap:12px}.buy-modal__pack{flex:1;height:109px;border:1px solid #a09ba8;background:#ecebed;border-radius:16px;display:flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;transition:border-color .12s ease}.buy-modal__pack--on{border:4px solid #c640cd}.buy-modal__pack-ico{width:24px;height:24px;background:#161518}.buy-modal__pack-amount{font-size:24px;font-weight:500;color:#161518}.buy-modal__pack-usd{font-size:14px;color:#161518}.buy-modal__total{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #cfcdd4;padding-top:12px}.buy-modal__total-credits{display:flex;align-items:center;gap:8px;font-size:24px;font-weight:700;color:#161518}.buy-modal__total-ico{width:30px;height:30px;background:#161518}.buy-modal__total-usd{font-size:14px;font-weight:600;color:#5e5b67}.buy-modal__ctas{display:flex;gap:12px}.buy-modal__btn{flex:1;height:46px;border-radius:8px;border:0;cursor:pointer;font-size:15px;font-weight:600;letter-spacing:.46px;text-transform:uppercase;display:inline-flex;align-items:center;justify-content:center;gap:8px}.buy-modal__btn--full{width:100%}.buy-modal__btn--gradient{background:linear-gradient(180deg,#c640cd,#691fa9);color:#fcfcfc}.buy-modal__btn--outline{background:transparent;border:2px solid #691fa9;color:#691fa9;font-size:13px}.buy-modal__btn--ruby{background:#ff2d55;color:#fcfcfc;font-size:13px;letter-spacing:.61px}.buy-modal__btn:disabled{opacity:.6;cursor:default}.buy-modal__processing{flex:1;align-items:center;justify-content:center;gap:32px;padding:24px 0}.buy-modal__logo{width:61px;height:61px}.buy-modal__processing-text{font-size:20px;font-weight:700;color:#242129;text-align:center}.buy-modal__progress{width:100%;max-width:456px;height:12px;background:#ecebed;border-radius:100px;overflow:hidden}.buy-modal__progress-fill{display:block;height:100%;width:40%;border-radius:100px;background:linear-gradient(180deg,#c640cd,#691fa9);animation:buy-modal-progress 1.1s ease-in-out infinite}@keyframes buy-modal-progress{0%{transform:translate(-120%)}to{transform:translate(320%)}}.buy-modal__success{display:flex;flex-direction:column;align-items:center;gap:16px;background:#c1eecf80;border-radius:16px;padding:24px 16px}.buy-modal__success-text{margin:0;font-size:20px;line-height:1.334;color:#242129;text-align:center}.buy-modal__success-text b{font-weight:700}.buy-modal__spinner{width:44px;height:44px;border-radius:50%;border:4px solid #ecebed;border-top-color:#691fa9;border-right-color:#c640cd;animation:buy-modal-spin .8s linear infinite}@keyframes buy-modal-spin{to{transform:rotate(360deg)}}.item-detail__own-note{margin:0;padding:16px;border:1px solid var(--line);border-radius:var(--radius-card, 12px);background:var(--surface, #fff);color:var(--muted)}.item-detail__own-note a{color:var(--accent, #691fa9);font-weight:600}
@@ -1 +0,0 @@
1
- import{a2 as f,g as c,af as y,c as E}from"./index-CnOiYeAk.js";function w(){return c.creditsServerUrl}async function p(t,e){const r=await f(`${w()}/credits/checkout`,{method:"POST",identity:e,metadata:{},headers:{"Content-Type":"application/json"},body:JSON.stringify({packId:t})});if(!r.ok)throw new Error(`checkout ${r.status}: ${await r.text()}`);const{orderId:n,url:i}=await r.json();return{orderId:n,url:i,mock:!1}}async function _(t,e,r={}){const{intervalMs:n=1500,timeoutMs:i=6e4,signal:s}=r,d=Date.now()+i;for(;;){if(s!=null&&s.aborted)throw new DOMException("Aborted","AbortError");const u=await C(t,e,s);if(u.status!=="processing")return u;if(Date.now()>d)return{status:"pending"};await P(n,s)}}async function C(t,e,r){const n=await f(`${w()}/credits/orders/${t}`,{method:"GET",identity:e,metadata:{},signal:r});if(!n.ok)throw new Error(`order status ${n.status}`);return n.json()}function P(t,e){return new Promise((r,n)=>{const i=setTimeout(r,t);e==null||e.addEventListener("abort",()=>{clearTimeout(i),n(new DOMException("Aborted","AbortError"))})})}const S=.1,l=[{id:"pack_5",usd:5,credits:o(5)},{id:"pack_10",usd:10,credits:o(10)},{id:"pack_25",usd:25,credits:o(25),bestValue:!0},{id:"pack_50",usd:50,credits:o(50)}];async function $(){const t=await fetch(`${c.creditsServerUrl}/credits/packs`);if(!t.ok)throw new Error(`credit packs ${t.status}`);const{packs:e}=await t.json();return e.slice().sort((r,n)=>(r.order??0)-(n.order??0)).map(r=>({id:r.id,usd:r.usd,credits:r.credits,...r.recommended?{bestValue:!0}:{}}))}function o(t){return Math.round(t/S)}function k(t){return l.find(e=>e.id===t)}const a="mock_cs_",g=new Set([80002,11155111,1337,31337]);function m(){const t=!c.stripePublishableKey;if(t&&!g.has(c.chainId))throw new Error(`Stripe publishable key is missing on chainId=${c.chainId}, which is not a recognized test network. Refusing to fall back to mock payments in a real-money environment — configure STRIPE_PUBLISHABLE_KEY.`);return t}async function I(t,e){const r=k(t);if(!r)throw new Error("Unknown pack");if(m())return b(r);if(!(e!=null&&e.identity))throw new Error("Sign in to get credits.");return p(t,e.identity)}async function D(t,e={}){const{intervalMs:r,timeoutMs:n,signal:i,identity:s}=e;if(m()||t.startsWith(a))return M(t,e);if(!s)throw new Error("Sign in to get credits.");return _(t,s,{intervalMs:r,timeoutMs:n,signal:i})}function b(t){const e=`${a}${t.id}_${Date.now()}`;return h(400).then(()=>({orderId:e,clientSecret:`${a}${t.id}`,mock:!0}))}async function M(t,e={}){await h(e.intervalMs??900);const r=t.replace(a,"").replace(/_\d+$/,""),n=k(r),i=(n==null?void 0:n.credits)??0;if(e.address&&n)try{const s=await y(e.address,Math.round(n.usd*100));return{status:"credited",creditsGranted:i,newBalance:s.credits}}catch(s){return{status:"failed",error:s.message}}return{status:"credited",creditsGranted:i,newBalance:i}}function h(t,e){return new Promise((r,n)=>{setTimeout(r,t)})}function R(){const{data:t,isLoading:e}=E({queryKey:["credit-packs"],queryFn:$,staleTime:3e5,retry:!1});return{packs:t??l,isLoading:e&&t===void 0}}export{I as c,m as i,D as p,R as u};
@@ -1 +0,0 @@
1
- import"./react-C51i12iP.js";import{T as m,k as t}from"./index-CnOiYeAk.js";import{u as o}from"./useTheme-DLmJNPU6.js";function a(){const e=o(t);return e[m]||e}export{a as u};