@dcl/shop 1.17.2-36418293890.commit-220d68e → 1.17.2-36420626550.commit-d42845c
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.
- package/_assets/{Activity-D4VBtnbk.js → Activity-DY470YCl.js} +4 -4
- package/_assets/{AnimatedBackground-B69r2Bc-.js → AnimatedBackground-DD5UBcUu.js} +2 -2
- package/_assets/{Assets-CRTwcBwP.js → Assets-BdSeYpmn.js} +9 -9
- package/_assets/{Cart-BxDC8lj6.js → Cart-BIQGcl1W.js} +2 -2
- package/_assets/{Collection-Dnht-2q3.js → Collection-B5czhRI4.js} +2 -2
- package/_assets/{CollectionCarousel-C9wq2JOZ.js → CollectionCarousel-B2YF6My2.js} +3 -3
- package/_assets/{Confetti-BI3FtvtA.js → Confetti-BCKS3AHk.js} +4 -4
- package/_assets/{ConstantsUtil-AO-LLgrp.js → ConstantsUtil-DOYox-tW.js} +2 -2
- package/_assets/{ContentClient-BTeKzo7T.js → ContentClient-B7OJMTUB.js} +2 -2
- package/_assets/{Creator-CJU_n_Ee.js → Creator-Bg3iHGHQ.js} +2 -2
- package/_assets/{CreditPackPicker-B01NLAbL.js → CreditPackPicker-D8AWz09w.js} +2 -2
- package/_assets/{CreditRate-BvwbnBW-.js → CreditRate-CdrLB7N2.js} +2 -2
- package/_assets/{DeploymentBuilder-HajOLjzg.js → DeploymentBuilder-DnKhS03S.js} +2 -2
- package/_assets/{EmotePlaybackBar-DEuoLg6N.js → EmotePlaybackBar-Cc5yA4y_.js} +3 -3
- package/_assets/{ErrorNotice-BmAQfVhf.js → ErrorNotice-C6Yri7JK.js} +2 -2
- package/_assets/{Event-D8-9ebpv.js → Event-tSQEjugw.js} +2 -2
- package/_assets/{ExchangeController-gStnDMQK.js → ExchangeController-C6YhnAOA.js} +2 -2
- package/_assets/{Faq-CvfRl4yG.js → Faq-BXMQvpvE.js} +2 -2
- package/_assets/{Filters-LZ9snivB.js → Filters-CIh_c6C-.js} +2 -2
- package/_assets/{GetCredits-y_URWWV-.js → GetCredits-hsCJHA4x.js} +2 -2
- package/_assets/{Grow-BNtEtruo.js → Grow-svrSuuPB.js} +2 -2
- package/_assets/{HelpersUtil-Blp7Eq-U.js → HelpersUtil-CEr5_jSb.js} +2 -2
- package/_assets/{IssueModal-DfxiUimT.js → IssueModal-CxIJvEgS.js} +2 -2
- package/_assets/{ItemDetail-s3kjESZN.js → ItemDetail-CzBq1Ed5.js} +2 -2
- package/_assets/{LoadMore-BRW4riO-.js → LoadMore-DwE5PMMK.js} +2 -2
- package/_assets/{ManaPricingBanner-dP4FGFiE.js → ManaPricingBanner-Bl3foNED.js} +2 -2
- package/_assets/{ManaPricingBanner.styles-8psnL7zm.js → ManaPricingBanner.styles-B8tpoed1.js} +2 -2
- package/_assets/{MyAssets-B1mV2q8F.js → MyAssets-xfhxrRkc.js} +2 -2
- package/_assets/{MyFavorites-C0aEyMBE.js → MyFavorites-D5UMwbX5.js} +2 -2
- package/_assets/MyStore-DWlwF62V.js +2176 -0
- package/_assets/{NetworkUtil-BKndxmAv.js → NetworkUtil-Yp_4Zjgz.js} +2 -2
- package/_assets/{NotFound-D54GcHkx.js → NotFound-Cv2JO_Y1.js} +2 -2
- package/_assets/{NotificationsBell-pH8tJXRW.js → NotificationsBell-CBqYeHyz.js} +2 -2
- package/_assets/{OutfitDetail-CRqnkCPP.js → OutfitDetail-hwLWKdGo.js} +2 -2
- package/_assets/{OutfitPreview-BHggnYWV.js → OutfitPreview-pp2LSym-.js} +2 -2
- package/_assets/{OutfitStudio-1Di-LPT1.js → OutfitStudio-Cp7e_plT.js} +2 -2
- package/_assets/{PaymentMethodStep-CCThKPFp.js → PaymentMethodStep-IzuCPgeS.js} +5 -5
- package/_assets/{SaleCountdown-CVfn_nkW.js → SaleCountdown-CypCmWMS.js} +2 -2
- package/_assets/{Spinner-CsrKVEJ6.js → Spinner-Bx7ruTSG.js} +2 -2
- package/_assets/{StoreSettings-C-BRsjS0.js → StoreSettings-BhXWGXfe.js} +2 -2
- package/_assets/{Success-BNOfkDxB.js → Success-YAWsRi8j.js} +2 -2
- package/_assets/{SwapController-CDvVpAnZ.js → SwapController-DjEaDWDf.js} +2 -2
- package/_assets/{Tooltip-DodLiQGn.js → Tooltip-oVJxlIH8.js} +2 -2
- package/_assets/{TradeService-CK1obPqz.js → TradeService-BYQ9M-fu.js} +2 -2
- package/_assets/{W3MFrameProviderSingleton-Bi11xf0a.js → W3MFrameProviderSingleton-BbovtaCu.js} +4 -4
- package/_assets/{WebCryptoP256-DdJx12ry.js → WebCryptoP256-RXMJw_1i.js} +2 -2
- package/_assets/{basic-kYjcgNwQ.js → basic-Dd2ZdIBU.js} +2 -2
- package/_assets/{biconomy-DSPO7yo7.js → biconomy-BtD1hKzU.js} +2 -2
- package/_assets/{browseLayout.styles-C0-FBoNa.js → browseLayout.styles-C3BkWNqb.js} +2 -2
- package/_assets/{browser-Br_PGSx5.js → browser-CcDD4z7q.js} +2 -2
- package/_assets/{browser-BFShAaT0.js → browser-c5t5r0Bo.js} +2 -2
- package/_assets/{browser-ponyfill-CrYE44xX.js → browser-ponyfill-Cj0jnMhf.js} +2 -2
- package/_assets/{buy-N92V9AyQ.js → buy-CJ9DumIA.js} +2 -2
- package/_assets/{buy-gasless-BqyhGX44.js → buy-gasless-CBz3lzPJ.js} +2 -2
- package/_assets/{ccip-jOTW4hk8.js → ccip-D__7g-LX.js} +2 -2
- package/_assets/{ccip-B_HvA8dg.js → ccip-DtKf2lIQ.js} +2 -2
- package/_assets/{chains-CQr46OzR.js → chains-6Lusl-hR.js} +2 -2
- package/_assets/collectionPage.styles-C1LPSgsB.js +41 -0
- package/_assets/{common-NfXKQFUO.js → common-A1LWrhSK.js} +2 -2
- package/_assets/{controller-uEuuhOzZ.js → controller-DRcM0-oa.js} +3 -3
- package/_assets/{core-CiORg1nl.js → core-_RCZgZZt.js} +5 -5
- package/_assets/{createSvgIcon-CJQ_wRTF.js → createSvgIcon-DL67RdKy.js} +2 -2
- package/_assets/{crumbs.styles-Cvt8wkkQ.js → crumbs.styles-BGpvQXbj.js} +2 -2
- package/_assets/{custom-BtdzOPyA.js → custom-DsQuV4WH.js} +2 -2
- package/_assets/{data-capture-CuXP8zCA.js → data-capture-DMVy_LmR.js} +2 -2
- package/_assets/{dcl-schemas-_B0Kk1dX.js → dcl-schemas-CKQVKD00.js} +2 -2
- package/_assets/{decimals-Dl6Ac2Yr.js → decimals-4oBU7GCD.js} +2 -2
- package/_assets/{decimals-DE-_bCrG.js → decimals-AqxbyPWd.js} +2 -2
- package/_assets/{detectExtension-Cwqdpc5H.js → detectExtension-D6GpmpcJ.js} +2 -2
- package/_assets/{disposePreview-VulUR7GI.js → disposePreview-B5o_jw_C.js} +2 -2
- package/_assets/{email-B9mCFBNR.js → email-DTxwmkPG.js} +2 -2
- package/_assets/{embedded-wallet-Dh5zggIz.js → embedded-wallet-PE8MMeSM.js} +2 -2
- package/_assets/{emotion-styled.browser.esm-SwDlCOIE.js → emotion-styled.browser.esm-SasiN4gy.js} +2 -2
- package/_assets/{engine-h-Hm5Du4.js → engine-DFXB0LM8.js} +2 -2
- package/_assets/{errors-DADPuabe.js → errors-Cmkz1ZUD.js} +2 -2
- package/_assets/{estimate-l1-fee-CLV1dz3T.js → estimate-l1-fee-DVaPkWsf.js} +2 -2
- package/_assets/{eth_estimateGas-7d-6agbs.js → eth_estimateGas-BwNWMO76.js} +2 -2
- package/_assets/{eth_getStorageAt-IXCr5ARn.js → eth_getStorageAt-B-c_e7UA.js} +2 -2
- package/_assets/{eth_getTransactionCount-QrQ-YZ2_.js → eth_getTransactionCount-P-lxlQfY.js} +2 -2
- package/_assets/{ethereum-Dcbgjb99.js → ethereum-GZKbkmlo.js} +2 -2
- package/_assets/{ethers-Dp2JFZH-.js → ethers-Dayklx7R.js} +2 -2
- package/_assets/{events-keqiXLZy.js → events-9x1keY1B.js} +2 -2
- package/_assets/{execute-CmtSq1Mi.js → execute-CYfcOo38.js} +3 -3
- package/_assets/{extractIPFS-BdHt_nhV.js → extractIPFS-DMx8jt7a.js} +2 -2
- package/_assets/{features-CMqxTvsM.js → features-BcqapudB.js} +2 -2
- package/_assets/{fetchTokenMetadata-D33vrFMS.js → fetchTokenMetadata-B5BJkGCH.js} +3 -3
- package/_assets/{field.styles-CboGP8oE.js → field.styles-NNHAaAWY.js} +2 -2
- package/_assets/{fortmatic-CTCUZGSh.js → fortmatic-Ndn2Vn3j.js} +2 -2
- package/_assets/{get-bytecode-CTC9Ke-5.js → get-bytecode-BcKsh2jR.js} +2 -2
- package/_assets/{get-ecosystem-wallet-info-v-fSB1GI.js → get-ecosystem-wallet-info-CBTqKA5c.js} +2 -2
- package/_assets/{getBalance-bTJiiiHw.js → getBalance-B2OeoGLb.js} +3 -3
- package/_assets/{getInstalledModules-Bma4gJyX.js → getInstalledModules-FvXNHK0e.js} +2 -2
- package/_assets/{getNFT-Dw3qNCM8.js → getNFT-5FPoeONq.js} +3 -3
- package/_assets/{getNFT-BTuyVQiv.js → getNFT-B4ztWODN.js} +2 -2
- package/_assets/{grid.styles-DqJ0qNtW.js → grid.styles-ckT9wj-4.js} +2 -2
- package/_assets/{hashTypedData-BDYHSIfU.js → hashTypedData-BQIBhlHo.js} +2 -2
- package/_assets/{hashTypedData-0InMGzMN.js → hashTypedData-Bmrg5RtE.js} +2 -2
- package/_assets/{import-PvZhp7TH.js → import-DJxQFgFg.js} +2 -2
- package/_assets/{in-app-CQCuHufY.js → in-app-pMimPRS4.js} +2 -2
- package/_assets/{in-app-wallet-calls-0l44bAKE.js → in-app-wallet-calls--7sLIwlb.js} +2 -2
- package/_assets/{index-COLL-965.js → index-0Efmk2jW.js} +2 -2
- package/_assets/{index-D8lpod0j.js → index-4-7xYLh-.js} +2 -2
- package/_assets/{index-BK8G6jWI.js → index-ADIPN9G9.js} +2 -2
- package/_assets/{index-d74473In.js → index-B-rRquBV.js} +2 -2
- package/_assets/{index-CwsIKbLW.js → index-B0Z0fgR-.js} +2 -2
- package/_assets/{index-BnTx4ws4.js → index-B3f0PXoL.js} +4 -4
- package/_assets/{index-qPXDynV3.js → index-B4bSado4.js} +2 -2
- package/_assets/{index-CXt0bCkh.js → index-B8cYBNdu.js} +2 -2
- package/_assets/{index-oWE1yc71.js → index-B9rLVV_T.js} +2 -2
- package/_assets/{index-DMmXUXxd.js → index-BBoE0EmQ.js} +2 -2
- package/_assets/{index-SOl7iePx.js → index-BCT0LBd5.js} +2 -2
- package/_assets/{index-BrEORGwc.js → index-BKa1MVVK.js} +3 -3
- package/_assets/{index-ClLMt34W.js → index-BMOiZbF1.js} +2 -2
- package/_assets/{index-DrpLxOHh.js → index-BQKLcHio.js} +2 -2
- package/_assets/{index-D0x4XVMx.js → index-BQi5aNWJ.js} +2 -2
- package/_assets/{index-Dncqt9PR.js → index-BVqwt-yP.js} +2 -2
- package/_assets/{index-D8UMsNgI.js → index-BW8sgRlU.js} +2 -2
- package/_assets/{index-BlCbRMtD.js → index-BWo1WcId.js} +2 -2
- package/_assets/{index-2NXkxE64.js → index-BXyV2qs0.js} +2 -2
- package/_assets/{index-JUXp6Dlc.js → index-B_9AY7cP.js} +4 -4
- package/_assets/{index-BpKF2zsV.js → index-BdoatYnd.js} +2 -2
- package/_assets/{index-LecHOKus.js → index-BfiwWIIB.js} +2 -2
- package/_assets/{index-_bAz9rUY.js → index-BkdeXDiO.js} +2 -2
- package/_assets/{index-CV6n-ZpQ.js → index-BnX9sQGV.js} +2 -2
- package/_assets/{index-B_2gQm9j.js → index-BodVW_pm.js} +2 -2
- package/_assets/{index-B0ttuhq9.js → index-BqWmuLdL.js} +4 -4
- package/_assets/{index-Bp3aHt26.js → index-BrSh5wHs.js} +13 -13
- package/_assets/{index-CJkTbUXr.js → index-BswMh4Fe.js} +2 -2
- package/_assets/{index-DGy4gD9M.js → index-Bvvm189g.js} +2 -2
- package/_assets/{index-qR9hBR1Y.js → index-Bx14Dk9M.js} +2 -2
- package/_assets/{index-D4uH2RFU.js → index-BxrgKuG7.js} +2 -2
- package/_assets/{index-DeYhfeYR.js → index-C2WTE16X.js} +2 -2
- package/_assets/{index-DW2SBgsT.js → index-CBNZiJhy.js} +2 -2
- package/_assets/{index-DyPX0auR.js → index-CCT3_49q.js} +2 -2
- package/_assets/{index-Cw5-Ihj5.js → index-CNj3POOZ.js} +2 -2
- package/_assets/{index-uD8Xwoma.js → index-CUAU8rcr.js} +3 -3
- package/_assets/{index-DTkkVjsa.js → index-CUlTIYCw.js} +2 -2
- package/_assets/{index-C_en7zzj.js → index-CWzeXqN5.js} +3 -3
- package/_assets/{index-Bvn260Vl.js → index-CbpjloOu.js} +2 -2
- package/_assets/{index-5PEf1C05.js → index-Cd-Tvtyg.js} +2 -2
- package/_assets/{index-BV74hnAs.js → index-ChLdv-Xb.js} +2 -2
- package/_assets/{index-CsmKttlZ.js → index-CjU4FDqk.js} +2 -2
- package/_assets/{index-SNOMFTTK.css → index-Clrjxhvd.css} +1 -1
- package/_assets/{index-DOqbDyoF.js → index-CqCiVciJ.js} +2 -2
- package/_assets/{index-DktRaopJ.js → index-D4ipICql.js} +2 -2
- package/_assets/{index-CC4oeKRC.js → index-DDFsnMs8.js} +2 -2
- package/_assets/{index-B9kDWBV8.js → index-DLNEA9bU.js} +2 -2
- package/_assets/{index-C2tDl-Kb.js → index-DN1HTLOl.js} +2 -2
- package/_assets/{index-CkWtWgH3.js → index-DUGyw2Yq.js} +2 -2
- package/_assets/{index-BudJkUoY.js → index-D_xUmCKr.js} +2 -2
- package/_assets/{index-JbnopHfg.js → index-Dcaztkd6.js} +3 -3
- package/_assets/{index-DRPoZEiN.js → index-DeJzj7_D.js} +2 -2
- package/_assets/{index-Cq2mz6sF.js → index-DfxwI4xh.js} +2 -2
- package/_assets/{index-BmnUgKLP.js → index-DipQyn3p.js} +2 -2
- package/_assets/{index-DpK4-4Ty.js → index-DjJawrzw.js} +2 -2
- package/_assets/{index-BNVAlY49.js → index-DkqhTFaw.js} +2 -2
- package/_assets/{index-CDLnCGnN.js → index-DtWtHbtl.js} +2 -2
- package/_assets/{index-BO9Xu_HO.js → index-E0HD2gCl.js} +2 -2
- package/_assets/{index-DkSpWs0n.js → index-GyliMtw_.js} +2 -2
- package/_assets/{index-CBmC4JRa.js → index-JxbxhgSa.js} +2 -2
- package/_assets/{index-2Yvk78KZ.js → index-QXS6PUpi.js} +2 -2
- package/_assets/{index-t_DTunkm.js → index-QazzQnQ6.js} +2 -2
- package/_assets/{index-M4eFYgWB.js → index-RY516MqE.js} +2 -2
- package/_assets/{index-C7Ja3Y6S.js → index-X1v4jf2c.js} +2 -2
- package/_assets/{index-Bn4HqcS6.js → index-ciw5WtS1.js} +2 -2
- package/_assets/{index-C91yDpJn.js → index-enoIQzPw.js} +2 -2
- package/_assets/{index-B0sEXvn2.js → index-hEOO4wK9.js} +2 -2
- package/_assets/{index-DitYYXq7.js → index-rHZYraMa.js} +2 -2
- package/_assets/{index.es-CF1TpWwB.js → index.es-BCrrDK59.js} +2 -2
- package/_assets/{index.es-Dxe_tQfK.js → index.es-CXPr56V3.js} +2 -2
- package/_assets/{index.es-DR4gl8qK.js → index.es-Cqo0SsyZ.js} +2 -2
- package/_assets/{index.es-CafG5vDc.js → index.es-QivT7D10.js} +5 -5
- package/_assets/{items-empty-BIxeTwto.js → items-empty-BFKbj-dd.js} +2 -2
- package/_assets/{jump-YJO6VZZT.js → jump-BKvlnktR.js} +2 -2
- package/_assets/{linkAccount-Di1L6ODp.js → linkAccount-ByDwbba0.js} +2 -2
- package/_assets/{loader-logo-CUaLPrEf.js → loader-logo-C03W-_t8.js} +2 -2
- package/_assets/{localBatchGatewayRequest-D2hxnEpH.js → localBatchGatewayRequest-D19OF_LE.js} +2 -2
- package/_assets/{modal.styles-C4pYkuZj.js → modal.styles-C-vrBrsn.js} +2 -2
- package/_assets/{native-8vsnOJR4.js → native-DyZGSYA-.js} +2 -2
- package/_assets/{networks-C8S8vhv3.js → networks-BspZTFyb.js} +2 -2
- package/_assets/{onramp-wP8uPyX2.js → onramp-Bkxge7QE.js} +2 -2
- package/_assets/{openzeppelin-BZquI8jE.js → openzeppelin-CINinYPt.js} +2 -2
- package/_assets/{ownerOf-CeffRJWl.js → ownerOf-C0iXMDs_.js} +2 -2
- package/_assets/{parseNft-CJBHaSxB.js → parseNft-DsH71WOx.js} +3 -3
- package/_assets/{parseSignature-CTywhOXZ.js → parseSignature-CBkN1obs.js} +4 -4
- package/_assets/{parseSignature-Gt-Tp49v.js → parseSignature-DLpTKyIg.js} +2 -2
- package/_assets/{passkeys-B3gs0Zat.js → passkeys-DU_PN37S.js} +2 -2
- package/_assets/{pay-with-exchange-B-nQx4jw.js → pay-with-exchange-Dos8w5Xl.js} +2 -2
- package/_assets/{prepare-contract-call-CthQ_8dx.js → prepare-contract-call-BGx19pag.js} +2 -2
- package/_assets/{qr-overlay-CmiVvxUM.js → qr-overlay-Ca52eJm-.js} +4 -4
- package/_assets/{react-LHIQ98KR.js → react-Cy9glOZM.js} +2 -2
- package/_assets/{receive-BLEP1nRX.js → receive-AM5XXHKt.js} +2 -2
- package/_assets/{resolveImplementation-CsldPK8y.js → resolveImplementation-xMQ_QexL.js} +2 -2
- package/_assets/{resume-buy-DHFmAeF4.js → resume-buy-0jVq6uv6.js} +2 -2
- package/_assets/{resume-name-ktnwHkJR.js → resume-name-DFEuqpbt.js} +2 -2
- package/_assets/{rpc-DoZnkyqC.js → rpc-DGd7XXYT.js} +2 -2
- package/_assets/{sales-empty-B0QquTRo.js → sales-empty-Bl7Yv2PK.js} +2 -2
- package/_assets/{search-empty-CIkPUIx0.js → search-empty-BkhqD-TM.js} +2 -2
- package/_assets/{secp256k1-qcRCtNm7.js → secp256k1-Dww_y64P.js} +2 -2
- package/_assets/{secp256k1-ir2IysjZ.js → secp256k1-TZ_QJIFR.js} +2 -2
- package/_assets/{secp256k1-CvS45x8t.js → secp256k1-Ztt7MCBx.js} +2 -2
- package/_assets/{send-C8Z5DKl1.js → send-D7f387Lk.js} +2 -2
- package/_assets/{send-batch-transaction-DWBPL2Xd.js → send-batch-transaction-QHPoinpE.js} +2 -2
- package/_assets/{send-eip712-transaction-BPOb4Kew.js → send-eip712-transaction-D_j8yPto.js} +3 -3
- package/_assets/{send-gasless-transaction-C8lkAvob.js → send-gasless-transaction-D-wpjutc.js} +3 -3
- package/_assets/{send-transaction-6sN2gwwv.js → send-transaction-BLwa-ZOT.js} +3 -3
- package/_assets/{sendMetaTransaction-DqCaiE1G.js → sendMetaTransaction-C5f8-Y2l.js} +2 -2
- package/_assets/{sendRawTransaction-PWiWe9oZ.js → sendRawTransaction-DijQa-yj.js} +4 -4
- package/_assets/{sentry-DfhH7M7m.js → sentry-CGAOzrsF.js} +3 -3
- package/_assets/{serializeTransaction-BQOXshQM.js → serializeTransaction-PcC9Sp7n.js} +2 -2
- package/_assets/{session-proposal-DiCtlfl-.js → session-proposal-DiA2Q7Jl.js} +2 -2
- package/_assets/{session-request-YSiBX2i8.js → session-request-Blp58OsM.js} +3 -3
- package/_assets/{sha256-DTaoTGeM.js → sha256-r7Epif10.js} +2 -2
- package/_assets/{sha3-DG5Rerll.js → sha3-C1aQrc9g.js} +2 -2
- package/_assets/signin-empty-D0GfH2n8.js +2 -0
- package/_assets/{signing-BL8nzqUh.js → signing-B3Eh-Soa.js} +4 -4
- package/_assets/{skeleton.styles-BsIoB_Qm.js → skeleton.styles-Chv2t5eN.js} +2 -2
- package/_assets/{socials-4bzF0vB9.js → socials-BexorM2U.js} +2 -2
- package/_assets/{styled-BAv1xnnT.js → styled-BRq179OO.js} +2 -2
- package/_assets/{swaps-iSQXs6GQ.js → swaps-CsPyyosZ.js} +2 -2
- package/_assets/{thirdweb-DFVL09cd.js → thirdweb-pX8vQQ5K.js} +4 -4
- package/_assets/{to-serializable-transaction-CkE-NgmW.js → to-serializable-transaction-DJQqdPbJ.js} +3 -3
- package/_assets/{totalSupply-qkYmzw_6.js → totalSupply-EMu08sZ8.js} +2 -2
- package/_assets/{trade-encoding-ckNC4fJ-.js → trade-encoding-BxuLGcgw.js} +2 -2
- package/_assets/{transaction-Yvut_WEw.js → transaction-DVDhBXVr.js} +2 -2
- package/_assets/{transactionReceipt-bOGdURTM.js → transactionReceipt-DHon8YJk.js} +2 -2
- package/_assets/{transactions-pJWMS9Al.js → transactions-El1G9N5V.js} +2 -2
- package/_assets/{useInfiniteGrid-SY9xs2bD.js → useInfiniteGrid-D36OkOfB.js} +2 -2
- package/_assets/{useStore-DtSFjEO-.js → useStore-Crz-Uk_j.js} +3 -3
- package/_assets/{useTheme-B2sXCJMT.js → useTheme-DwlD9EfY.js} +2 -2
- package/_assets/{utils-ZXL77_V-.js → utils-Cx6I6R-m.js} +2 -2
- package/_assets/{verifyHash-BaaSBs31.js → verifyHash-YHT4y_tq.js} +2 -2
- package/_assets/{w3m-modal-Rzu8HJ5T.js → w3m-modal-BdTp1WBD.js} +2 -2
- package/_assets/{w3m-modal-RMD0rXBw.js → w3m-modal-CAw8OcP2.js} +2 -2
- package/_assets/{wait-for-tx-receipt-CV57tGp2.js → wait-for-tx-receipt-ZvaA6JQw.js} +2 -2
- package/_assets/{wallets-0RL5EqXk.js → wallets-D2BF3LHg.js} +6 -6
- package/_assets/{web-connector-BrtjJDdk.js → web-connector-DpPTYzuA.js} +4 -4
- package/_assets/{writeContract-qrIA3P4r.js → writeContract-BnJnKHt4.js} +2 -2
- package/_assets/{zora-sepolia-aMaIuMFa.js → zora-sepolia-Dz5ayGqL.js} +2 -2
- package/_assets/{zoraTestnet-w7lDfHTy.js → zoraTestnet-CaQLHWc2.js} +2 -2
- package/index.html +12 -12
- package/package.json +2 -2
- package/_assets/MyStore-C5KnNX82.js +0 -2122
- package/_assets/collectionPage.styles-COfykuUv.js +0 -41
- package/_assets/signin-empty-DnbkmKDt.js +0 -2
|
@@ -0,0 +1,2176 @@
|
|
|
1
|
+
import{r as f,j as e,L as qe,u as to,f as no,N as so}from"./react-Cy9glOZM.js";import{c as me,bU as oo,w as J,l as ms,cZ as ro,c_ as ao,s as c,t as i,z as io,a as s,c$ as pe,I as ie,aH as Qt,bO as fs,d0 as xs,d1 as lo,ca as co,H as qt,B as ho,x as po,X as uo,cc as mo,d2 as fo,a6 as xo,aK as go,a2 as yo,d3 as Ht,d4 as gs,O as bo,c9 as wo,ay as So,az as jo,aA as ko,av as $o}from"./index-BrSh5wHs.js";import{f as vo,c as Co,D as Mo,S as Ao}from"./SaleCountdown-CypCmWMS.js";import{d as Io}from"./dcl-schemas-CKQVKD00.js";import{t as Lo,u as To,C as Wo,M as _o,i as Po}from"./ManaPricingBanner-Bl3foNED.js";import{T as ht}from"./Tooltip-oVJxlIH8.js";import{m as Eo}from"./mana-matic-CEqvSwrJ.js";import{g as ys,f as Do,R as Fo,M as Oo}from"./browseLayout.styles-C3BkWNqb.js";import{E as Cn}from"./ErrorNotice-C6Yri7JK.js";import{M as Ro,S as zo,C as No,H as Uo,T as Bo,a as qo,b as Ho,N as Mn,A as Ko,O as Yo,P as Go,I as Vo}from"./IssueModal-CxIJvEgS.js";import{u as Qo,L as Xo}from"./useStore-Crz-Uk_j.js";import{s as Zo}from"./signin-empty-D0GfH2n8.js";import"./sentry-CGAOzrsF.js";import"./ethers-Dayklx7R.js";import"./intl-AKLEHPeO.js";import"./errors-Cmkz1ZUD.js";import"./sha3-C1aQrc9g.js";import"./browser-CcDD4z7q.js";import"./trade-encoding-BxuLGcgw.js";import"./sendMetaTransaction-C5f8-Y2l.js";import"./ManaPricingBanner.styles-B8tpoed1.js";(function(){try{var t=typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},n=new t.Error().stack;n&&(t._sentryDebugIds=t._sentryDebugIds||{},t._sentryDebugIds[n]="6b990182-27e7-4133-9bb7-2e380dc6b033",t._sentryDebugIdIdentifier="sentry-dbid-6b990182-27e7-4133-9bb7-2e380dc6b033")}catch{}})();function te(t){try{return BigInt(t||"0")}catch{return 0n}}async function An(t){var a;const n=new URLSearchParams({seller:t.seller});t.from!=null&&n.set("from",String(t.from)),t.to!=null&&n.set("to",String(t.to));const o=await fetch(`${me.marketplaceServerUrl}/v1/sales/summary?${n.toString()}`);if(!o.ok)throw await((a=o.body)==null?void 0:a.cancel()),new Error(`fetchSalesSummary ${o.status}`);const{data:l}=await o.json();return l}function Jo(t){const n=new URLSearchParams;return t.seller&&n.set("seller",t.seller),t.contractAddress&&n.set("contractAddress",t.contractAddress),t.itemId!=null&&n.set("itemId",t.itemId),t.type&&n.set("type",t.type),t.from!=null&&n.set("from",String(t.from)),t.to!=null&&n.set("to",String(t.to)),n.set("first",String(t.first??100)),t.skip&&n.set("skip",String(t.skip)),n.set("sortBy","recently_sold"),n}async function Xt(t){var l;const n=await fetch(`${me.marketplaceServerUrl}/v1/sales?${Jo(t).toString()}`);if(!n.ok)throw await((l=n.body)==null?void 0:l.cancel()),new Error(`fetchSales ${n.status}`);const o=await n.json();return{data:o.data??[],total:o.total??0}}async function er(t){const{total:n}=await Xt({...t,first:1});return n}async function tr(t,{first:n,skip:o}){const{data:l,total:a}=await Xt({...t,first:n,skip:o});return{rows:l,total:a}}async function bs(t,{cap:n=5e3}={}){const l=[];let a=0;for(let d=0;d<n;d+=1e3){const p=Math.min(1e3,n-d),h=await Xt({...t,first:p,skip:d});if(a=h.total,l.push(...h.data),h.data.length<p||l.length>=a)break}return{rows:l,total:a,truncated:a>l.length}}const nr=864e5;function Kt(t,n){return{current:t,previous:n,pct:n===0?null:(t-n)/n*100}}function sr(t,n){const o=n===0n?null:Number((t-n)*10000n/n)/100;return{current:Number(t),previous:Number(n),pct:o}}function or(t,n=3){var p;const o=t.filter(ws),l=new Map;for(const h of o){const m=h.buyer.toLowerCase();l.set(m,(l.get(m)??0)+1)}const a=[...l.entries()].sort((h,m)=>m[1]-h[1]||h[0].localeCompare(m[0])),d=a.filter(([,h])=>h>1).length;return{total:a.length,repeat:d,repeatPct:a.length===0?0:d/a.length*100,topSharePct:o.length===0?0:(((p=a[0])==null?void 0:p[1])??0)/o.length*100,top:a.slice(0,n).map(([h,m])=>({address:h,bought:m}))}}function ws(t){return t.type==="mint"&&t.itemId!=null}function rr(t,n){const o=t.filter(ws),l=new Map;for(const a of o){const d=a.buyer.toLowerCase(),p=a.contractAddress.toLowerCase(),h=l.get(d)??{bought:0,items:new Set,collections:new Set,spentWei:0n,lastAt:0};h.bought+=1,h.items.add(`${p}-${a.itemId}`),h.collections.add(p),h.spentWei+=te(a.price),a.timestamp>h.lastAt&&(h.lastAt=a.timestamp),l.set(d,h)}return[...l.entries()].map(([a,d])=>({address:a,bought:d.bought,items:d.items.size,collections:d.collections.size,spentWei:d.spentWei,lastAt:d.lastAt})).sort((a,d)=>d.spentWei>a.spentWei?1:d.spentWei<a.spentWei?-1:d.bought-a.bought).slice(0,n)}function ar(t,n){if(t.length===0)return null;const o=t.reduce((l,a)=>a.timestamp>l?a.timestamp:l,0);return Math.max(0,Math.floor((n-o)/nr))}function ir(t,n=5){return t.flatMap(o=>o.items.filter(l=>l.sold>0).map(l=>({key:l.key,contractAddress:o.contractAddress,itemId:l.itemId,name:l.name,thumbnail:l.thumbnail,rarity:l.rarity,collectionName:o.name,sold:l.sold,earnedWei:l.earnedWei}))).sort((o,l)=>l.sold-o.sold||(l.earnedWei>o.earnedWei?1:l.earnedWei<o.earnedWei?-1:0)||o.name.localeCompare(l.name)).slice(0,n)}const pt=100;async function lr(t){const[{collections:n},o]=await Promise.all([oo(t,{first:pt}),hr(t)]),l=new Map(n.map(a=>[a.contractAddress.toLowerCase(),a.name]));return o.map(a=>{const d=a.contractAddress.toLowerCase(),p=(a.rarity??"common").toLowerCase(),h=dr(p),m=Number(a.available??0);return{id:a.id,collectionId:"",collectionName:l.get(d)??a.name,contractAddress:d,blockchainItemId:String(a.itemId??""),name:a.name,category:a.category,rarity:p,thumbnail:a.thumbnail??"",type:a.category==="emote"?"emote":"wearable",isPublished:!0,isApproved:!0,totalSupply:Math.max(0,h-m),maxSupply:h,remainingSupply:m,createdAt:a.createdAt?a.createdAt*1e3:void 0,minters:[]}})}function cr(t,n){const o=new Set(t.map(l=>l.contractAddress.toLowerCase()));return[...t,...n.filter(l=>!o.has(l.contractAddress.toLowerCase()))]}function dr(t){try{return Io.Rarity.getMaxSupply(t)}catch{return 0}}async function hr(t){var o;const n=[];for(let l=0;;l+=pt){const a=new URLSearchParams({creator:t,first:String(pt),skip:String(l),includeSocialEmotes:"false"}),d=await fetch(`${me.marketplaceServerUrl}/v3/catalog/items?${a.toString()}`);if(!d.ok)throw await((o=d.body)==null?void 0:o.cancel()),new Error(`fetchPublicCatalogue ${d.status}`);const{data:p}=await d.json(),h=p??[];if(n.push(...h),h.length<pt)return n}}const Yt=864e5,ut=14;function pr(t,n,o){const l=new Array(ut).fill(0),a=o-n*Yt,d=n*Yt/ut;for(const p of t)p.timestamp<a||p.timestamp>o||(l[Math.min(ut-1,Math.floor((p.timestamp-a)/d))]+=1);return l}function ur({rows:t,total:n,truncated:o,mints:l,summary:a,catalogue:d,saleState:p,unreadable:h,days:m,now:$}){const O=new Map,u=new Map,j=new Map;for(const g of t){if(g.type!=="mint"||g.itemId==null)continue;const A=g.contractAddress.toLowerCase(),k=`${A}-${g.itemId}`;O.set(k,(O.get(k)??0)+1),u.set(k,(u.get(k)??0n)+te(g.price));const v=j.get(A)??[];v.push(g),j.set(A,v)}const z=t.reduce((g,A)=>A.timestamp<g?A.timestamp:g,$),B=Math.max(1,Math.ceil(($-z)/Yt)),C=m!=null&&!o?m:Math.max(m==null?ut:1,B),S=new Map(((a==null?void 0:a.byItem)??[]).map(g=>[`${g.contractAddress.toLowerCase()}-${g.itemId}`,g.soldLifetime])),D=new Map(((a==null?void 0:a.byCollection)??[]).map(g=>[g.contractAddress.toLowerCase(),g])),W=new Map;let G=0,b=0,q=0,N=0,T=0;for(const g of d){const A=g.contractAddress.toLowerCase(),k=p[`${g.contractAddress}-${g.blockchainItemId}`],v=g.remainingSupply<=0?"soldout":h!=null&&h.has(A)?"unknown":k!=null&&k.isOnSale?k.manaWei?"classic":"discounted":"unlisted";v==="soldout"?N+=1:v==="unlisted"?T+=1:v==="classic"?q+=1:v==="discounted"&&(b+=1);const _=W.get(A)??{contractAddress:A,collectionId:g.collectionId,name:g.collectionName,items:[],listed:0,classic:0,soldOut:0,sold:0,earningsWei:0n,earningsUsd:null,createdAt:null,trend:[],claimed:0,runTotal:0,exhausted:!1},I=O.get(`${A}-${g.blockchainItemId}`)??0;_.items.push({key:`${A}-${g.blockchainItemId}`,itemId:g.blockchainItemId,name:g.name,thumbnail:g.thumbnail,rarity:g.rarity,left:g.remainingSupply,minted:g.totalSupply,sold:I,earnedWei:u.get(`${A}-${g.blockchainItemId}`)??0n,lifetimeSold:S.get(`${A}-${g.blockchainItemId}`)??null,priceCredits:(k==null?void 0:k.priceCredits)??null,manaWei:(k==null?void 0:k.manaWei)??null,createdAt:g.createdAt??null,state:v}),_.sold+=I,_.claimed+=g.totalSupply,_.runTotal+=g.totalSupply+g.remainingSupply,G+=I,g.createdAt&&(_.createdAt==null||g.createdAt>_.createdAt)&&(_.createdAt=g.createdAt),v==="soldout"?_.soldOut+=1:v==="classic"?_.classic+=1:v==="discounted"&&(_.listed+=1),W.set(A,_)}for(const[g,A]of W){const k=j.get(g)??[],v=D.get(g);A.earningsWei=v?te(v.earnedWei):k.reduce((_,I)=>_+te(I.price),0n),v&&(A.sold=v.sold),A.earningsUsd=(v==null?void 0:v.earnedUsd)!=null?Number(v.earnedUsd):null,A.trend=pr(k,C,$),A.exhausted=A.items.length>0&&A.soldOut===A.items.length,A.items.sort((_,I)=>I.sold-_.sold||_.name.localeCompare(I.name))}const oe=[...W.values()].reduce((g,A)=>g+A.sold,0);return{collections:[...W.values()].sort((g,A)=>A.sold-g.sold||g.name.localeCompare(A.name)),sold:(a==null?void 0:a.total)??n,mints:(a==null?void 0:a.mints)??l,resales:a?a.resales:n-l,earningsWei:a?te(a.earnedWei):t.reduce((g,A)=>g+te(A.price),0n),earningsUsd:(a==null?void 0:a.earnedUsd)!=null?Number(a.earnedUsd):null,unpricedSales:(a==null?void 0:a.unpricedSales)??0,partial:a?!1:o,breakdownPartial:o,fetched:t.length,unattributed:a?a.total-oe:t.length-G,trendDays:C,unknownCollections:[...W.keys()].filter(g=>h==null?void 0:h.has(g)).length,royalties:a?{resales:a.royalties.resales,volumeWei:te(a.royalties.volumeWei)}:null,listed:b,neverListed:T,classic:q,soldOut:N}}const Ss="shop.my-store.currency";function mr(t){return new Date(t).toISOString().slice(0,10)}async function fr(t,n){var d;const o=new URLSearchParams({from:String(Math.max(0,Math.floor(t))),to:String(Math.floor(n))}),l=await fetch(`${me.marketplaceServerUrl}/v1/rates/mana-usd?${o.toString()}`);if(!l.ok)throw await((d=l.body)==null?void 0:d.cancel()),new Error(`fetchManaUsdRates ${l.status}`);const{data:a}=await l.json();return new Map((a??[]).map(p=>[p.day,Number(p.usd)]).filter(([,p])=>Number.isFinite(p)&&p>0))}function Gt(t,n){return Number(t/10n**12n)/1e6*n}function Zt(t,n){const o=n.get(mr(t.timestamp));return o===void 0?null:Gt(te(t.price),o)}function In(t,n,o){const l=new Map;let a=0;for(const d of t){const p=o(d);if(p===null)continue;const h=Zt(d,n);if(h===null){a+=1;continue}l.set(p,(l.get(p)??0)+h)}return{totals:l,unpriced:a}}function js(t,n){return t>=100?Math.round(t).toLocaleString(n):t.toLocaleString(n,{minimumFractionDigits:2,maximumFractionDigits:2})}function xr(){try{return localStorage.getItem(Ss)==="usd"?"usd":"mana"}catch{return"mana"}}function gr(t){try{localStorage.setItem(Ss,t)}catch{}}const Jt=864e5,yr=["7d","30d","90d","year","all","custom"],br={"7d":7,"30d":30,"90d":90};function mt(t){const n=new Date(t);return n.setHours(0,0,0,0),n.getTime()}function wr(t){const n=new Date(t);return n.setHours(23,59,59,999),n.getTime()}function Sr(t,n){const o=wr(t.key==="custom"&&t.to!=null?Math.min(t.to,n):n);if(t.key==="all")return{from:void 0,to:o,days:null};let l;return t.key==="custom"&&t.from!=null?l=mt(Math.min(t.from,o)):t.key==="year"?l=mt(new Date(new Date(o).getFullYear(),0,1).getTime()):l=$s(mt(o),-((br[t.key]??30)-1)),{from:l,to:o,days:Math.max(1,Math.round((o+1-l)/Jt))}}function ks(t,n){if(t.from==null||n==="none")return null;if(n==="year")return{from:Ln(t.from),to:Ln(t.to)};const o=t.days??Math.max(1,Math.round((t.to+1-t.from)/Jt));return{from:$s(t.from,-o),to:t.from-1}}function $s(t,n){const o=new Date(t);return o.setDate(o.getDate()+n),o.getTime()}function Ln(t){const n=new Date(t);return n.getMonth()===1&&n.getDate()===29&&n.setDate(28),n.setFullYear(n.getFullYear()-1),n.getTime()}function jr(t,n){const o=(n-t)/Jt;return o<=62?"day":o<=400?"week":"month"}function Tn(t,n,o){const l=[],a=new Date(mt(t));for(o==="month"&&a.setDate(1);a.getTime()<=n;)l.push(a.getTime()),o==="day"?a.setDate(a.getDate()+1):o==="week"?a.setDate(a.getDate()+7):a.setMonth(a.getMonth()+1);return l}function Wn(t,n,o,l){const a=n.map(d=>({start:d,sales:0,earnedWei:0n,earnedUsd:0,unpriced:0}));if(a.length===0)return a;for(const d of t){if(d.timestamp<n[0]||d.timestamp>o)continue;let p=0,h=n.length-1;for(;p<h;){const $=p+h+1>>1;n[$]<=d.timestamp?p=$:h=$-1}const m=p;if(a[m].sales+=1,a[m].earnedWei+=te(d.price),l){const $=Zt(d,l);$===null?a[m].unpriced+=1:a[m].earnedUsd+=$}}return a}const kr=new Map,$r=[],vr=6e3;function Cr(t,n){var oe,g,A;const o=t==null?void 0:t.address,{days:l,from:a,to:d}=n,p=[a??null,d],h=J({queryKey:["store-sales",o,...p],enabled:!!o,queryFn:()=>bs({seller:o,from:a,to:d})}),m=J({queryKey:["store-summary",o,...p],enabled:!!o,queryFn:()=>An({seller:o,from:a,to:d})}),$=ks(n,"previous"),O=$==null?void 0:$.from,u=$==null?void 0:$.to,j=J({queryKey:["store-summary-previous",o,...p],enabled:!!o&&O!==void 0,queryFn:()=>An({seller:o,from:O,to:u})}),z=J({queryKey:["store-mints",o,...p],enabled:!!o,queryFn:()=>er({seller:o,from:a,to:d,type:"mint"})}),B=J({queryKey:["store-catalogue",o],enabled:!!o&&!!t,queryFn:()=>vo(o,t.identity,{includeSoldOut:!0})}),C=J({queryKey:["store-public-catalogue",o],enabled:!!o&&!!t,queryFn:()=>Promise.race([lr(o),new Promise((k,v)=>setTimeout(()=>v(new Error("public catalogue timed out")),vr))]).catch(k=>(ms(k,{flow:"my_store",step:"public_catalogue"}),[]))}),S=f.useMemo(()=>B.data?C.isPending?{data:void 0}:{data:cr(B.data,C.data??[])}:{data:void 0},[B.data,C.isPending,C.data]),D=f.useMemo(()=>[...new Set((S.data??[]).map(k=>k.contractAddress))],[S.data]),W=J({queryKey:["store-sale-state",o,D],enabled:D.length>0,queryFn:async()=>{const k=await Promise.allSettled(D.map(I=>ro(I))),v={},_=new Set;return k.forEach((I,R)=>{const Q=D[R];if(I.status==="rejected"){_.add(Q.toLowerCase());return}for(const[K,M]of Object.entries(I.value))v[`${Q}-${K}`]=M}),{states:v,unreadable:_}}}),G=J({queryKey:["store-saves",D,(S.data??[]).length],enabled:(S.data??[]).length>0,queryFn:async()=>{const k=(S.data??[]).map(I=>`${I.contractAddress.toLowerCase()}-${I.blockchainItemId}`),v=await Promise.allSettled(k.map(async I=>[I,(await ao(I)).count])),_=new Map;for(const I of v)I.status==="fulfilled"&&_.set(I.value[0],I.value[1]);return _}}),b=f.useMemo(()=>{var k,v,_,I,R;return S.data?ur({rows:((k=h.data)==null?void 0:k.rows)??[],total:((v=h.data)==null?void 0:v.total)??0,truncated:!!((_=h.data)!=null&&_.truncated),mints:z.data??0,summary:m.data??null,catalogue:S.data,saleState:((I=W.data)==null?void 0:I.states)??{},unreadable:(R=W.data)==null?void 0:R.unreadable,days:l,now:d}):null},[S.data,h.data,z.data,m.data,W.data,l,d]),q=f.useMemo(()=>{var k;return Lo(B.data??[],(k=W.data)==null?void 0:k.states)},[B.data,W.data]),N=f.useMemo(()=>{var R,Q,K;const k=or(((R=h.data)==null?void 0:R.rows)??[]),v=rr(((Q=h.data)==null?void 0:Q.rows)??[]),_=ar(((K=h.data)==null?void 0:K.rows)??[],d),I=j.data;return{collectors:k,buyers:v,quietDays:_,sold:I&&m.data?Kt(m.data.total,I.total):null,earnings:I&&m.data?sr(te(m.data.earnedWei),te(I.earnedWei)):null,royalties:I&&m.data?Kt(m.data.royalties.resales,I.royalties.resales):null}},[h.data,m.data,j.data,d]),T=G.data??kr;return{stats:b,trend:N,savesByKey:T,saleable:q,sales:{rows:((oe=h.data)==null?void 0:oe.rows)??$r,truncated:!!((g=h.data)!=null&&g.truncated),isFetching:h.isFetching},previousEarnedUsd:((A=j.data)==null?void 0:A.earnedUsd)!=null?Number(j.data.earnedUsd):null,isLoading:B.isLoading||C.isLoading||h.isLoading||m.isLoading,error:B.error??h.error??null}}const Mr=c.span`
|
|
2
|
+
display: inline-flex;
|
|
3
|
+
align-items: center;
|
|
4
|
+
cursor: help;
|
|
5
|
+
/* The glyph sits tight against its own box, so the figure beside it needs the gap from here. */
|
|
6
|
+
margin-right: 3px;
|
|
7
|
+
|
|
8
|
+
img {
|
|
9
|
+
width: 1em;
|
|
10
|
+
height: 1em;
|
|
11
|
+
vertical-align: -0.125em;
|
|
12
|
+
}
|
|
13
|
+
`;function ce({kind:t,className:n}){const o=t==="mana"?i("currency.polygonMana"):i("currency.credits");return e.jsx(ht,{content:o,children:e.jsx(Mr,{className:n,"aria-label":o,role:"img","data-kind":t,children:t==="mana"?e.jsx("img",{src:Eo,alt:"","aria-hidden":!0}):e.jsx(io,{className:"ccy-mark"})})})}const Ar=c.div`
|
|
14
|
+
display: flex;
|
|
15
|
+
flex-direction: column;
|
|
16
|
+
gap: 12px;
|
|
17
|
+
min-width: 0;
|
|
18
|
+
`,Ir=c.div`
|
|
19
|
+
display: flex;
|
|
20
|
+
flex-wrap: wrap;
|
|
21
|
+
gap: 16px;
|
|
22
|
+
font-family: ${s.font.sans};
|
|
23
|
+
font-size: 12px;
|
|
24
|
+
color: ${s.colors.softWhite};
|
|
25
|
+
`,_n=c.span`
|
|
26
|
+
display: inline-flex;
|
|
27
|
+
align-items: center;
|
|
28
|
+
gap: 8px;
|
|
29
|
+
`,Pn=c.span`
|
|
30
|
+
width: 16px;
|
|
31
|
+
height: 2px;
|
|
32
|
+
border-radius: 1px;
|
|
33
|
+
`,Lr=c.div`
|
|
34
|
+
position: relative;
|
|
35
|
+
width: 100%;
|
|
36
|
+
touch-action: pan-y;
|
|
37
|
+
border-radius: 8px;
|
|
38
|
+
|
|
39
|
+
&:focus-visible {
|
|
40
|
+
outline: 2px solid ${s.colors.softWhite};
|
|
41
|
+
outline-offset: 4px;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
svg {
|
|
45
|
+
display: block;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
.tick {
|
|
49
|
+
fill: rgba(255, 255, 255, 0.6);
|
|
50
|
+
font-family: ${s.font.sans};
|
|
51
|
+
font-size: 11px;
|
|
52
|
+
font-variant-numeric: tabular-nums;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
/* A surface-coloured ring keeps the marker legible where it crosses the other line. */
|
|
56
|
+
.dot {
|
|
57
|
+
stroke: ${s.colors.blackBtn};
|
|
58
|
+
stroke-width: 2;
|
|
59
|
+
}
|
|
60
|
+
`,Tr=c.div`
|
|
61
|
+
position: absolute;
|
|
62
|
+
top: 0;
|
|
63
|
+
transform: translateX(-50%);
|
|
64
|
+
display: flex;
|
|
65
|
+
flex-direction: column;
|
|
66
|
+
gap: 4px;
|
|
67
|
+
padding: 8px 10px;
|
|
68
|
+
border-radius: 8px;
|
|
69
|
+
background: ${s.colors.blackBtn};
|
|
70
|
+
box-shadow: 0 4px 16px rgba(0, 0, 0, 0.35);
|
|
71
|
+
color: ${s.colors.softWhite};
|
|
72
|
+
font-family: ${s.font.sans};
|
|
73
|
+
font-size: 12px;
|
|
74
|
+
white-space: nowrap;
|
|
75
|
+
pointer-events: none;
|
|
76
|
+
`,En=c.span`
|
|
77
|
+
display: flex;
|
|
78
|
+
align-items: center;
|
|
79
|
+
gap: 8px;
|
|
80
|
+
|
|
81
|
+
b {
|
|
82
|
+
font-weight: 700;
|
|
83
|
+
font-variant-numeric: tabular-nums;
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
span {
|
|
87
|
+
color: rgba(255, 255, 255, 0.65);
|
|
88
|
+
}
|
|
89
|
+
`,Dn=c.span`
|
|
90
|
+
width: 12px;
|
|
91
|
+
height: 2px;
|
|
92
|
+
border-radius: 1px;
|
|
93
|
+
`,Wr=c.div`
|
|
94
|
+
position: absolute;
|
|
95
|
+
width: 1px;
|
|
96
|
+
height: 1px;
|
|
97
|
+
overflow: hidden;
|
|
98
|
+
clip-path: inset(50%);
|
|
99
|
+
white-space: nowrap;
|
|
100
|
+
`,Lt=240,ae={top:12,right:12,bottom:28,left:48};function _r(t,n,o=4){if(t<=0)return[0,1];const l=t/o,a=10**Math.floor(Math.log10(l)),d=[1,2,5,10].map($=>$*a).find($=>$>=l)??l,p=n?Math.max(1,d):d,h=Math.ceil(t/p)*p,m=[];for(let $=0;$<=h+p/2;$+=p)m.push(Number($.toFixed(6)));return m}function Pr({current:t,comparison:n,formatValue:o,formatStart:l,formatTick:a,wholeValues:d,ariaLabel:p,roleDescription:h,dateLabel:m}){const $=f.useRef(null),[O,u]=f.useState(640),[j,z]=f.useState(null),B=f.useId();f.useEffect(()=>{const M=$.current;if(!M||typeof ResizeObserver>"u")return;const U=new ResizeObserver(ne=>{var re;const X=Math.round(((re=ne[0])==null?void 0:re.contentRect.width)??0);X>0&&u(X)});return U.observe(M),()=>U.disconnect()},[]);const C=t.values.length,S=j!=null&&j<C?j:null,D=Math.max(1,O-ae.left-ae.right),W=Lt-ae.top-ae.bottom,G=Math.max(0,...t.values,...(n==null?void 0:n.values)??[]),b=f.useMemo(()=>_r(G,!!d),[G,d]),q=b[b.length-1]||1,N=M=>ae.left+(C>1?M/(C-1)*D:D/2),T=M=>ae.top+W-M/q*W,oe=M=>M.slice(0,C).map((U,ne)=>`${ne===0?"M":"L"}${N(ne).toFixed(1)} ${T(U).toFixed(1)}`).join(" "),g=oe(t.values),A=C>0?`${g} L${N(C-1).toFixed(1)} ${T(0)} L${N(0).toFixed(1)} ${T(0)} Z`:"",k=Math.max(1,Math.ceil(C/Math.max(2,Math.floor(D/110)))),v=[];for(let M=0;M<C;M+=k)v.push(M);C>0&&v[v.length-1]!==C-1&&(v.length>1&&C-1-v[v.length-1]<k*.6&&v.pop(),v.push(C-1));const _=v.map(M=>({i:M,start:t.starts[M]}));function I(M){var X;const U=(X=$.current)==null?void 0:X.getBoundingClientRect();if(!U||C===0)return 0;const ne=(M-U.left-ae.left)/D;return Math.min(C-1,Math.max(0,Math.round(ne*(C-1))))}function R(M){z(I(M.clientX))}function Q(M){if(M.key!=="ArrowLeft"&&M.key!=="ArrowRight")return;M.preventDefault();const U=j??(M.key==="ArrowLeft"?C:-1);z(Math.min(C-1,Math.max(0,U+(M.key==="ArrowRight"?1:-1))))}const K=S!=null?Math.min(Math.max(N(S),96),O-96):0;return e.jsxs(Ar,{children:[e.jsxs(Ir,{"aria-hidden":!0,children:[e.jsxs(_n,{children:[e.jsx(Pn,{style:{background:s.colors.dclRed}}),t.label]}),n?e.jsxs(_n,{children:[e.jsx(Pn,{style:{background:s.colors.chartCompare}}),n.label]}):null]}),e.jsxs(Lr,{ref:$,tabIndex:0,role:"group","aria-roledescription":h,"aria-label":p,onPointerMove:R,onPointerDown:R,onPointerLeave:M=>{M.pointerType==="mouse"&&z(null)},onKeyDown:Q,onBlur:()=>z(null),"data-testid":"store-chart",children:[e.jsxs("svg",{width:O,height:Lt,"aria-hidden":!0,children:[e.jsx("defs",{children:e.jsxs("linearGradient",{id:B,x1:"0",y1:"0",x2:"0",y2:"1",children:[e.jsx("stop",{offset:"0",stopColor:s.colors.dclRed,stopOpacity:"0.18"}),e.jsx("stop",{offset:"1",stopColor:s.colors.dclRed,stopOpacity:"0"})]})}),b.map(M=>e.jsxs("g",{children:[e.jsx("line",{x1:ae.left,x2:O-ae.right,y1:T(M),y2:T(M),stroke:s.colors.cardLine}),e.jsx("text",{x:ae.left-8,y:T(M),dy:"0.32em",textAnchor:"end",className:"tick",children:o(M)})]},M)),_.map(({i:M,start:U})=>e.jsx("text",{x:N(M),y:Lt-8,textAnchor:M===0?"start":M===C-1?"end":"middle",className:"tick",children:(a??l)(U)},U)),n?e.jsx("path",{d:oe(n.values),fill:"none",stroke:s.colors.chartCompare,strokeWidth:"2",strokeLinejoin:"round",strokeLinecap:"round"}):null,e.jsx("path",{d:A,fill:`url(#${B})`}),e.jsx("path",{d:g,fill:"none",stroke:s.colors.dclRed,strokeWidth:"2",strokeLinejoin:"round",strokeLinecap:"round"}),S!=null?e.jsxs("g",{children:[e.jsx("line",{x1:N(S),x2:N(S),y1:ae.top,y2:ae.top+W,stroke:s.colors.softWhite,strokeOpacity:"0.5"}),n&&n.values[S]!=null?e.jsx("circle",{cx:N(S),cy:T(n.values[S]),r:"4",fill:s.colors.chartCompare,className:"dot"}):null,e.jsx("circle",{cx:N(S),cy:T(t.values[S]??0),r:"4",fill:s.colors.dclRed,className:"dot"})]}):null]}),S!=null?e.jsxs(Tr,{style:{left:K},"data-testid":"store-chart-tip",children:[e.jsxs(En,{children:[e.jsx(Dn,{style:{background:s.colors.dclRed}}),e.jsx("b",{children:o(t.values[S]??0)}),e.jsx("span",{children:l(t.starts[S])})]}),n&&n.starts[S]!=null?e.jsxs(En,{children:[e.jsx(Dn,{style:{background:s.colors.chartCompare}}),e.jsx("b",{children:o(n.values[S]??0)}),e.jsx("span",{children:l(n.starts[S])})]}):null]}):null]}),e.jsx(Wr,{children:e.jsxs("table",{children:[e.jsx("caption",{children:p}),e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{scope:"col",children:m}),e.jsx("th",{scope:"col",children:t.label}),n?e.jsx("th",{scope:"col",children:n.label}):null]})}),e.jsx("tbody",{children:t.starts.map((M,U)=>e.jsxs("tr",{children:[e.jsx("th",{scope:"row",children:l(M)}),e.jsx("td",{children:o(t.values[U]??0)}),n?e.jsx("td",{children:o(n.values[U]??0)}):null]},M))})]})})]})}const Er=c.div`
|
|
101
|
+
display: flex;
|
|
102
|
+
flex-wrap: wrap;
|
|
103
|
+
align-items: flex-start;
|
|
104
|
+
justify-content: space-between;
|
|
105
|
+
gap: 12px 16px;
|
|
106
|
+
`,Dr=c.div`
|
|
107
|
+
display: flex;
|
|
108
|
+
flex-wrap: wrap;
|
|
109
|
+
align-items: center;
|
|
110
|
+
justify-content: flex-end;
|
|
111
|
+
gap: 8px;
|
|
112
|
+
|
|
113
|
+
${s.media.maxWidth("mobile")} {
|
|
114
|
+
justify-content: flex-start;
|
|
115
|
+
}
|
|
116
|
+
`,Fr=c.div`
|
|
117
|
+
display: flex;
|
|
118
|
+
gap: 4px;
|
|
119
|
+
padding: 4px;
|
|
120
|
+
border-radius: ${s.radius.pill};
|
|
121
|
+
background: rgba(0, 0, 0, 0.22);
|
|
122
|
+
`,Or=c.button`
|
|
123
|
+
border: 0;
|
|
124
|
+
cursor: pointer;
|
|
125
|
+
min-height: 32px;
|
|
126
|
+
padding: 6px 14px;
|
|
127
|
+
border-radius: ${s.radius.pill};
|
|
128
|
+
font-family: ${s.font.sans};
|
|
129
|
+
font-size: 12px;
|
|
130
|
+
font-weight: 600;
|
|
131
|
+
color: rgba(252, 252, 252, 0.62);
|
|
132
|
+
background: transparent;
|
|
133
|
+
|
|
134
|
+
&:hover {
|
|
135
|
+
color: ${s.colors.softWhite};
|
|
136
|
+
}
|
|
137
|
+
&[aria-pressed='true'] {
|
|
138
|
+
background: ${s.colors.softWhite};
|
|
139
|
+
color: ${s.colors.text};
|
|
140
|
+
}
|
|
141
|
+
&:focus-visible {
|
|
142
|
+
outline: 2px solid ${s.colors.softWhite};
|
|
143
|
+
outline-offset: 2px;
|
|
144
|
+
}
|
|
145
|
+
`,Tt=c(ys)`
|
|
146
|
+
> button {
|
|
147
|
+
gap: 16px;
|
|
148
|
+
height: 40px;
|
|
149
|
+
padding: 4px 4px 4px 12px;
|
|
150
|
+
background: transparent;
|
|
151
|
+
border: 0.5px solid ${s.colors.white};
|
|
152
|
+
border-radius: ${s.radius.btn};
|
|
153
|
+
color: ${s.colors.white};
|
|
154
|
+
font-size: 12px;
|
|
155
|
+
font-weight: 500;
|
|
156
|
+
text-transform: uppercase;
|
|
157
|
+
letter-spacing: 0;
|
|
158
|
+
}
|
|
159
|
+
> button:hover {
|
|
160
|
+
border-color: ${s.colors.softWhite};
|
|
161
|
+
background: ${s.colors.glassFaint};
|
|
162
|
+
}
|
|
163
|
+
> button .ico {
|
|
164
|
+
color: ${s.colors.softWhite} !important;
|
|
165
|
+
}
|
|
166
|
+
`,Rr=c.div`
|
|
167
|
+
display: flex;
|
|
168
|
+
flex-wrap: wrap;
|
|
169
|
+
gap: 24px;
|
|
170
|
+
font-family: ${s.font.sans};
|
|
171
|
+
`,Fn=c.div`
|
|
172
|
+
display: flex;
|
|
173
|
+
flex-direction: column;
|
|
174
|
+
gap: 2px;
|
|
175
|
+
|
|
176
|
+
b {
|
|
177
|
+
font-size: 22px;
|
|
178
|
+
font-weight: 700;
|
|
179
|
+
color: ${s.colors.white};
|
|
180
|
+
}
|
|
181
|
+
span {
|
|
182
|
+
font-size: 12px;
|
|
183
|
+
color: ${s.colors.gray4};
|
|
184
|
+
}
|
|
185
|
+
small {
|
|
186
|
+
font-size: 13px;
|
|
187
|
+
font-weight: 600;
|
|
188
|
+
}
|
|
189
|
+
/* The tiles' own delta colours, so a rise reads the same wherever it is shown. */
|
|
190
|
+
small[data-dir='up'] {
|
|
191
|
+
color: ${s.colors.successBorder};
|
|
192
|
+
}
|
|
193
|
+
small[data-dir='down'] {
|
|
194
|
+
color: #ff6b6b;
|
|
195
|
+
}
|
|
196
|
+
`,ot=c.p`
|
|
197
|
+
margin: 0;
|
|
198
|
+
font-family: ${s.font.sans};
|
|
199
|
+
font-size: 12px;
|
|
200
|
+
color: ${s.colors.gray4};
|
|
201
|
+
`,zr=c.div`
|
|
202
|
+
transition: opacity 0.15s ease;
|
|
203
|
+
|
|
204
|
+
&[data-fetching] {
|
|
205
|
+
opacity: 0.55;
|
|
206
|
+
}
|
|
207
|
+
|
|
208
|
+
@media (prefers-reduced-motion: reduce) {
|
|
209
|
+
transition: none;
|
|
210
|
+
}
|
|
211
|
+
`,Nr=864e5;function On(t){return Number(t/10n**14n)/1e4}function Rn(t,n,o){return t.filter(l=>(n==="all"||l.contractAddress.toLowerCase()===n)&&(o==="all"||l.itemId===o))}function Ur(t){return t>=10?Math.round(t).toLocaleString(pe()):t.toFixed(2)}const zn=new Map;function vs(t){const n=pe(),o=`${n}|${JSON.stringify(t)}`;let l=zn.get(o);return l||(l=new Intl.DateTimeFormat(n,t),zn.set(o,l)),l}function Nn(t,n,o){const l=n==="month"?{month:"short",year:"numeric"}:{month:"short",day:"numeric"};return o&&n!=="month"&&(l.year="numeric"),vs(l).format(t)}function Wt(t,n){const o=vs({month:"short",day:"numeric",year:"numeric"});return`${o.format(t)} – ${o.format(n)}`}function Br({address:t,range:n,rows:o,truncated:l,fetching:a,collections:d,onTrack:p,comparisonRows:h,currency:m,rateBook:$,heading:O}){var _e;const[u,j]=f.useState("sales"),[z,B]=f.useState("previous"),[C,S]=f.useState("all"),[D,W]=f.useState("all"),G=C!=="all"?d.find(w=>w.contractAddress.toLowerCase()===C):d.length===1?d[0]:void 0,b=G?G.contractAddress.toLowerCase():"all",q=n.from==null?"none":z,N=f.useMemo(()=>{if(n.from!=null)return n.from;const w=o.reduce((E,ee)=>Math.min(E,ee.timestamp),n.to);return Math.min(w,n.to-29*Nr)},[n,o]),T=ks(n,q),oe=J({queryKey:["store-sales-compare",t,(T==null?void 0:T.from)??null,(T==null?void 0:T.to)??null],enabled:!!t&&!!T&&!h,placeholderData:w=>w,queryFn:()=>bs({seller:t,from:T.from,to:T.to})}),A=f.useMemo(()=>h?{data:{rows:h,truncated:!1},isFetching:!1}:null,[h])??oe,k=jr(N,n.to),v=f.useMemo(()=>{const w=Tn(N,n.to,k);return Wn(Rn(o,b,D),w,n.to,$)},[o,N,n.to,k,b,D,$]),_=T==null?void 0:T.from,I=T==null?void 0:T.to,R=f.useMemo(()=>{if(_==null||I==null||!A.data)return null;const w=Tn(_,I,k).slice(0,v.length);return Wn(Rn(A.data.rows,b,D),w,I,$)},[_,I,A.data,k,v.length,b,D,$]),Q=m==="usd",K=w=>u==="sales"?w.sales:Q?w.earnedUsd:On(w.earnedWei),M=w=>u==="sales"?w.reduce((E,ee)=>E+ee.sales,0):Q?w.reduce((E,ee)=>E+ee.earnedUsd,0):On(w.reduce((E,ee)=>E+ee.earnedWei,0n)),U=w=>u==="sales"?Math.round(w).toLocaleString(pe()):Q?`$${Number.isInteger(w)?w.toLocaleString(pe()):js(w,pe())}`:Ur(w),ne=u==="earnings"&&Q?[...v,...R??[]].reduce((w,E)=>w+E.unpriced,0):0,X=M(v),re=R?M(R):null,we=re!=null&&re>0?Math.round((X-re)/re*100):null,We=l||!!((_e=A.data)!=null&&_e.truncated),He=v.some(w=>w.sales>0)||((R==null?void 0:R.some(w=>w.sales>0))??!1),wt=[{value:"previous",label:i("myStore.chart.comparePrevious")},{value:"year",label:i("myStore.chart.compareYear")},{value:"none",label:i("myStore.chart.compareNone")}],St=[{value:"all",label:i("myStore.chart.allCollections")},...d.map(w=>({value:w.contractAddress.toLowerCase(),label:w.name}))];return e.jsxs(e.Fragment,{children:[e.jsxs(Er,{children:[O,e.jsxs(Dr,{children:[e.jsx(Fr,{role:"group","aria-label":i("myStore.chart.metric"),children:["sales","earnings"].map(w=>e.jsx(Or,{type:"button","aria-pressed":u===w,onClick:()=>{p("Shop Changed Store Chart",{control:"metric",value:w}),j(w)},"data-testid":`store-chart-metric-${w}`,children:i(`myStore.chart.${w}`)},w))}),n.from!=null?e.jsx(Tt,{options:wt,value:q,onChange:w=>{p("Shop Changed Store Chart",{control:"compare",value:w}),B(w)},ariaLabel:i("myStore.chart.compare"),className:"store-chart-compare"}):null,d.length>1?e.jsx(Tt,{options:St,value:C,onChange:w=>{p("Shop Changed Store Chart",{control:"collection",value:w==="all"?"all":"one"}),S(w),W("all")},ariaLabel:i("myStore.chart.collection"),className:"store-chart-collection"}):null,G&&G.items.length>1?e.jsx(Tt,{options:[{value:"all",label:i("myStore.chart.allItems")},...G.items.map(w=>({value:w.itemId,label:w.name}))],value:D,onChange:w=>{p("Shop Changed Store Chart",{control:"item",value:w==="all"?"all":"one"}),W(w)},ariaLabel:i("myStore.chart.item"),className:"store-chart-item"}):null]})]}),e.jsxs(Rr,{children:[e.jsxs(Fn,{"data-testid":"store-chart-total",children:[e.jsxs("b",{children:[u==="earnings"&&!Q?e.jsx(ce,{kind:"mana"}):null,U(X)]}),e.jsx("span",{children:Wt(N,n.to)})]}),R&&T?e.jsxs(Fn,{"data-testid":"store-chart-previous",children:[e.jsxs("b",{children:[u==="earnings"&&!Q?e.jsx(ce,{kind:"mana"}):null,U(re??0),we!=null?e.jsxs("small",{"data-dir":we>=0?"up":"down",children:[" ",i("myStore.chart.change",{pct:`${we>0?"+":""}${we}`})]}):null]}),e.jsx("span",{children:Wt(T.from,T.to)})]}):null]}),e.jsx(zr,{"data-fetching":a||A.isFetching?"":void 0,children:He?e.jsx(Pr,{current:{label:i("myStore.chart.thisPeriod"),values:v.map(K),starts:v.map(w=>w.start)},comparison:R?{label:q==="year"?i("myStore.chart.lastYear"):i("myStore.chart.previousPeriod"),values:R.map(K),starts:R.map(w=>w.start)}:null,formatValue:U,formatStart:w=>Nn(w,k,q==="year"),formatTick:w=>Nn(w,k,!1),wholeValues:u==="sales",ariaLabel:i(u==="sales"?"myStore.chart.ariaSales":"myStore.chart.ariaEarnings",{span:Wt(N,n.to)}),dateLabel:i("myStore.chart.date"),roleDescription:i("myStore.chart.roleDescription")}):e.jsx(ot,{"data-testid":"store-chart-empty",children:i("myStore.chart.empty")})}),We?e.jsx(ot,{children:i("myStore.chart.partial")}):null,ne>0&&!a?e.jsx(ot,{children:i("myStore.chart.unpriced",{count:ne})}):null,k!=="day"?e.jsx(ot,{children:i(k==="week"?"myStore.chart.byWeek":"myStore.chart.byMonth")}):null]})}const qr=c.button`
|
|
212
|
+
display: inline-flex;
|
|
213
|
+
align-items: center;
|
|
214
|
+
gap: 4px;
|
|
215
|
+
max-width: 100%;
|
|
216
|
+
padding: 0;
|
|
217
|
+
white-space: normal;
|
|
218
|
+
text-align: inherit;
|
|
219
|
+
border: 0;
|
|
220
|
+
background: none;
|
|
221
|
+
color: inherit;
|
|
222
|
+
font: inherit;
|
|
223
|
+
letter-spacing: inherit;
|
|
224
|
+
text-transform: inherit;
|
|
225
|
+
cursor: pointer;
|
|
226
|
+
|
|
227
|
+
&[data-align='right'] {
|
|
228
|
+
flex-direction: row-reverse;
|
|
229
|
+
}
|
|
230
|
+
|
|
231
|
+
&:focus-visible {
|
|
232
|
+
outline: 2px solid currentColor;
|
|
233
|
+
outline-offset: 2px;
|
|
234
|
+
border-radius: 4px;
|
|
235
|
+
}
|
|
236
|
+
|
|
237
|
+
[data-testid='sort-header-chevron'] {
|
|
238
|
+
flex: none;
|
|
239
|
+
opacity: 0.35;
|
|
240
|
+
transition: opacity 0.15s;
|
|
241
|
+
}
|
|
242
|
+
|
|
243
|
+
&[data-dir] [data-testid='sort-header-chevron'],
|
|
244
|
+
&:hover [data-testid='sort-header-chevron'] {
|
|
245
|
+
opacity: 1;
|
|
246
|
+
}
|
|
247
|
+
`;function ye({label:t,dir:n,onSort:o,align:l="left",testId:a}){return e.jsxs(qr,{type:"button",onClick:o,"data-dir":n,"data-align":l,"data-testid":a,"aria-label":typeof t=="string"?i(n==="asc"?"common.sortedAsc":n==="desc"?"common.sortedDesc":"common.sortColumn",{column:t}):void 0,children:[t,e.jsx(Do,{up:n==="asc",size:12,"aria-hidden":!0,"data-testid":"sort-header-chevron"})]})}const rt=c.div`
|
|
248
|
+
display: flex;
|
|
249
|
+
flex-direction: column;
|
|
250
|
+
gap: 8px;
|
|
251
|
+
`,at=c.span`
|
|
252
|
+
font-family: ${s.font.sans};
|
|
253
|
+
font-size: 13px;
|
|
254
|
+
font-weight: 600;
|
|
255
|
+
color: ${s.colors.text};
|
|
256
|
+
`,Un=c.div`
|
|
257
|
+
display: flex;
|
|
258
|
+
flex-wrap: wrap;
|
|
259
|
+
gap: 8px;
|
|
260
|
+
`,Bn=c.button`
|
|
261
|
+
min-height: 40px;
|
|
262
|
+
padding: 0 14px;
|
|
263
|
+
border-radius: ${s.radius.pill};
|
|
264
|
+
border: 1px solid rgba(22, 21, 24, 0.16);
|
|
265
|
+
background: ${s.colors.white};
|
|
266
|
+
color: ${s.colors.text};
|
|
267
|
+
font-family: ${s.font.sans};
|
|
268
|
+
font-size: 13px;
|
|
269
|
+
font-weight: 600;
|
|
270
|
+
cursor: pointer;
|
|
271
|
+
|
|
272
|
+
&[aria-pressed='true'] {
|
|
273
|
+
border-color: ${s.colors.accent};
|
|
274
|
+
background: ${s.colors.accent};
|
|
275
|
+
color: ${s.colors.white};
|
|
276
|
+
}
|
|
277
|
+
&:disabled {
|
|
278
|
+
opacity: 0.45;
|
|
279
|
+
cursor: not-allowed;
|
|
280
|
+
}
|
|
281
|
+
&:focus-visible {
|
|
282
|
+
outline: 2px solid ${s.colors.accent};
|
|
283
|
+
outline-offset: 2px;
|
|
284
|
+
}
|
|
285
|
+
`,Hr=c.div`
|
|
286
|
+
display: flex;
|
|
287
|
+
flex-direction: column;
|
|
288
|
+
gap: 6px;
|
|
289
|
+
max-height: 208px;
|
|
290
|
+
overflow-y: auto;
|
|
291
|
+
`,Kr=c.button`
|
|
292
|
+
display: flex;
|
|
293
|
+
align-items: center;
|
|
294
|
+
gap: 10px;
|
|
295
|
+
width: 100%;
|
|
296
|
+
min-height: 48px;
|
|
297
|
+
padding: 6px 10px;
|
|
298
|
+
border: 1px solid rgba(22, 21, 24, 0.12);
|
|
299
|
+
border-radius: 10px;
|
|
300
|
+
background: ${s.colors.white};
|
|
301
|
+
text-align: left;
|
|
302
|
+
cursor: pointer;
|
|
303
|
+
font-family: ${s.font.sans};
|
|
304
|
+
color: ${s.colors.text};
|
|
305
|
+
|
|
306
|
+
&[aria-pressed='true'] {
|
|
307
|
+
border-color: ${s.colors.accent};
|
|
308
|
+
box-shadow: inset 0 0 0 1px ${s.colors.accent};
|
|
309
|
+
}
|
|
310
|
+
&:disabled {
|
|
311
|
+
opacity: 0.45;
|
|
312
|
+
cursor: not-allowed;
|
|
313
|
+
}
|
|
314
|
+
&:focus-visible {
|
|
315
|
+
outline: 2px solid ${s.colors.accent};
|
|
316
|
+
outline-offset: 2px;
|
|
317
|
+
}
|
|
318
|
+
|
|
319
|
+
img {
|
|
320
|
+
width: 36px;
|
|
321
|
+
height: 36px;
|
|
322
|
+
border-radius: 6px;
|
|
323
|
+
object-fit: cover;
|
|
324
|
+
flex: none;
|
|
325
|
+
}
|
|
326
|
+
`,Yr=c.span`
|
|
327
|
+
display: flex;
|
|
328
|
+
flex-direction: column;
|
|
329
|
+
min-width: 0;
|
|
330
|
+
|
|
331
|
+
b {
|
|
332
|
+
font-size: 13px;
|
|
333
|
+
font-weight: 600;
|
|
334
|
+
overflow: hidden;
|
|
335
|
+
text-overflow: ellipsis;
|
|
336
|
+
white-space: nowrap;
|
|
337
|
+
}
|
|
338
|
+
span {
|
|
339
|
+
font-size: 12px;
|
|
340
|
+
color: ${s.colors.muted};
|
|
341
|
+
}
|
|
342
|
+
`,Gr=c.ol`
|
|
343
|
+
margin: 0;
|
|
344
|
+
padding: 0 0 0 20px;
|
|
345
|
+
max-height: 160px;
|
|
346
|
+
overflow-y: auto;
|
|
347
|
+
font-family: ${s.font.sans};
|
|
348
|
+
font-size: 13px;
|
|
349
|
+
color: ${s.colors.text};
|
|
350
|
+
|
|
351
|
+
li {
|
|
352
|
+
padding: 3px 0;
|
|
353
|
+
}
|
|
354
|
+
li span {
|
|
355
|
+
color: ${s.colors.muted};
|
|
356
|
+
}
|
|
357
|
+
/* The dashboard drives the MANA mark white for its dark panels, and this modal opens inside it on white. */
|
|
358
|
+
[data-kind='mana'] img {
|
|
359
|
+
filter: none;
|
|
360
|
+
}
|
|
361
|
+
`;function Vr(t){let n;try{n=Number(BigInt(t)/10n**14n)/1e4}catch{return"0"}return n>=10?Math.round(n).toLocaleString():n.toFixed(2)}const Qr=[5,10,25,Ro],Xr=["nfts","spent","recent"];function Zr({creator:t,ownerCount:n,items:o,loadOwners:l,onContinue:a,onClose:d,onTrack:p}){const h=[...new Set(Qr.map(b=>Math.min(b,n)))],[m,$]=f.useState(()=>Math.min(10,n)),[O,u]=f.useState("nfts"),[j,z]=f.useState(()=>o.find(b=>b.left>=Math.min(10,n))??null),B=f.useRef(null);f.useEffect(()=>{var q;(q=B.current)==null||q.focus();function b(N){N.key==="Escape"&&d()}return window.addEventListener("keydown",b),()=>window.removeEventListener("keydown",b)},[d]);const C=J({queryKey:["reward-recipients",t.toLowerCase(),m,O],queryFn:async()=>(await l(m,O)).filter(b=>b.address.toLowerCase()!==t.toLowerCase()),placeholderData:b=>b}),S=(C.data??[]).map(b=>b.address),D=J({queryKey:["reward-recipient-names",S],enabled:S.length>0,staleTime:5*6e4,queryFn:()=>xs(S)}),W=!!j&&j.left>=S.length,G=!!j&&W&&S.length>0&&!C.isFetching;return e.jsx(zo,{onClick:d,role:"presentation",children:e.jsxs(No,{ref:B,tabIndex:-1,role:"dialog","aria-modal":"true","aria-label":i("reward.title"),onClick:b=>b.stopPropagation(),"data-testid":"reward-modal",children:[e.jsxs(Uo,{children:[e.jsx(Bo,{children:i("reward.title")}),e.jsx(qo,{onClick:d,"aria-label":i("sellModal.cancel"),children:e.jsx(ie,{name:"close",className:"ico"})})]}),e.jsx(Ho,{children:i("reward.subtitle")}),e.jsxs(rt,{children:[e.jsx(at,{id:"reward-count",children:i("reward.howMany")}),e.jsx(Un,{role:"group","aria-labelledby":"reward-count",children:h.map(b=>e.jsx(Bn,{type:"button","aria-pressed":m===b,onClick:()=>$(b),"data-testid":`reward-count-${b}`,children:i("reward.topN",{count:b})},b))})]}),e.jsxs(rt,{children:[e.jsx(at,{id:"reward-ranking",children:i("reward.rankedBy")}),e.jsx(Un,{role:"group","aria-labelledby":"reward-ranking",children:Xr.map(b=>e.jsx(Bn,{type:"button","aria-pressed":O===b,onClick:()=>u(b),"data-testid":`reward-ranking-${b}`,children:i(`reward.ranking.${b}`)},b))})]}),e.jsxs(rt,{children:[e.jsx(at,{id:"reward-item",children:i("reward.item")}),o.length===0?e.jsx(Mn,{children:i("reward.noItems")}):e.jsx(Hr,{role:"group","aria-labelledby":"reward-item",children:o.map(b=>{const q=`${b.contractAddress}-${b.itemId}`;return e.jsxs(Kr,{type:"button","aria-pressed":(j==null?void 0:j.contractAddress)===b.contractAddress&&j.itemId===b.itemId,disabled:b.left<m,onClick:()=>z(b),"data-testid":"reward-item",children:[b.thumbnail?e.jsx("img",{src:b.thumbnail,alt:"",loading:"lazy"}):null,e.jsxs(Yr,{children:[e.jsx("b",{children:b.name}),e.jsx("span",{children:i("reward.itemLeft",{collection:b.collectionName,left:b.left})})]})]},q)})})]}),e.jsxs(rt,{children:[e.jsx(at,{children:i("reward.recipients",{count:S.length})}),e.jsx(Gr,{"data-testid":"reward-recipients",children:(C.data??[]).map(b=>{var N,T;const q=(T=(N=D.data)==null?void 0:N.get(b.address.toLowerCase()))==null?void 0:T.name;return e.jsxs("li",{children:[q?Qt(q):fs(b.address)," ",e.jsx("span",{children:O==="spent"?e.jsxs(e.Fragment,{children:["· ",e.jsx(ce,{kind:"mana"}),Vr(b.spentWei)]}):i("reward.heldLine",{count:b.nfts})})]},b.address)})})]}),j?e.jsx(Mn,{"data-testid":"reward-stock",children:W?i("reward.stock",{count:S.length,name:j.name,left:j.left}):i("reward.notEnough",{name:j.name,left:j.left})}):null,e.jsxs(Ko,{children:[e.jsx(Yo,{type:"button",onClick:d,children:i("sellModal.cancel")}),e.jsx(Go,{type:"button",disabled:!G,onClick:()=>{j&&(p("Shop Chose Store Reward",{recipients:S.length,ranking:O,contract_address:j.contractAddress}),a({item:j,recipients:S}))},"data-testid":"reward-continue",children:i("reward.continue")})]})]})})}const Jr=c.div`
|
|
362
|
+
position: absolute;
|
|
363
|
+
top: calc(100% + 8px);
|
|
364
|
+
right: 0;
|
|
365
|
+
z-index: 40;
|
|
366
|
+
display: flex;
|
|
367
|
+
flex-direction: column;
|
|
368
|
+
max-width: calc(100vw - 32px);
|
|
369
|
+
background: ${s.colors.white};
|
|
370
|
+
border-radius: 12px;
|
|
371
|
+
box-shadow: 0 12px 32px rgba(22, 21, 24, 0.24);
|
|
372
|
+
overflow: hidden;
|
|
373
|
+
|
|
374
|
+
${Co}
|
|
375
|
+
|
|
376
|
+
.react-datepicker {
|
|
377
|
+
border: 0;
|
|
378
|
+
box-shadow: none;
|
|
379
|
+
border-radius: 0;
|
|
380
|
+
display: flex;
|
|
381
|
+
justify-content: center;
|
|
382
|
+
}
|
|
383
|
+
.react-datepicker__month-container + .react-datepicker__month-container {
|
|
384
|
+
border-left: 1px solid rgba(22, 21, 24, 0.1);
|
|
385
|
+
}
|
|
386
|
+
.react-datepicker__day {
|
|
387
|
+
width: 2rem;
|
|
388
|
+
line-height: 2rem;
|
|
389
|
+
margin: 0.1rem 0;
|
|
390
|
+
border-radius: 0;
|
|
391
|
+
}
|
|
392
|
+
.react-datepicker__day--in-range,
|
|
393
|
+
.react-datepicker__day--in-selecting-range {
|
|
394
|
+
background: rgba(105, 31, 169, 0.12);
|
|
395
|
+
color: ${s.colors.text};
|
|
396
|
+
}
|
|
397
|
+
.react-datepicker__day--range-start,
|
|
398
|
+
.react-datepicker__day--range-end,
|
|
399
|
+
.react-datepicker__day--selecting-range-start,
|
|
400
|
+
.react-datepicker__day--selected {
|
|
401
|
+
background: ${s.colors.accent};
|
|
402
|
+
color: ${s.colors.white};
|
|
403
|
+
}
|
|
404
|
+
.react-datepicker__day--range-start,
|
|
405
|
+
.react-datepicker__day--selecting-range-start {
|
|
406
|
+
border-radius: 8px 0 0 8px;
|
|
407
|
+
}
|
|
408
|
+
.react-datepicker__day--range-end {
|
|
409
|
+
border-radius: 0 8px 8px 0;
|
|
410
|
+
}
|
|
411
|
+
.react-datepicker__day--range-start.react-datepicker__day--range-end {
|
|
412
|
+
border-radius: 8px;
|
|
413
|
+
}
|
|
414
|
+
.react-datepicker__day--outside-month {
|
|
415
|
+
visibility: hidden;
|
|
416
|
+
}
|
|
417
|
+
`,ea=c.div`
|
|
418
|
+
display: flex;
|
|
419
|
+
align-items: center;
|
|
420
|
+
justify-content: space-between;
|
|
421
|
+
gap: 12px;
|
|
422
|
+
padding: 10px 12px;
|
|
423
|
+
border-top: 1px solid rgba(22, 21, 24, 0.1);
|
|
424
|
+
font-family: ${s.font.sans};
|
|
425
|
+
font-size: 13px;
|
|
426
|
+
color: ${s.colors.text};
|
|
427
|
+
|
|
428
|
+
${s.media.maxWidth("mobile")} {
|
|
429
|
+
font-size: 12px;
|
|
430
|
+
}
|
|
431
|
+
`,ta=c.div`
|
|
432
|
+
display: flex;
|
|
433
|
+
gap: 8px;
|
|
434
|
+
`,qn=c.button`
|
|
435
|
+
min-height: 36px;
|
|
436
|
+
padding: 0 14px;
|
|
437
|
+
border-radius: ${s.radius.btn};
|
|
438
|
+
border: 1px solid rgba(22, 21, 24, 0.16);
|
|
439
|
+
background: ${s.colors.white};
|
|
440
|
+
color: ${s.colors.text};
|
|
441
|
+
font-family: ${s.font.sans};
|
|
442
|
+
font-size: 13px;
|
|
443
|
+
font-weight: 600;
|
|
444
|
+
cursor: pointer;
|
|
445
|
+
|
|
446
|
+
&[data-variant='primary'] {
|
|
447
|
+
border-color: ${s.colors.accent};
|
|
448
|
+
background: ${s.colors.accent};
|
|
449
|
+
color: ${s.colors.white};
|
|
450
|
+
}
|
|
451
|
+
&:disabled {
|
|
452
|
+
opacity: 0.45;
|
|
453
|
+
cursor: default;
|
|
454
|
+
}
|
|
455
|
+
&:focus-visible {
|
|
456
|
+
outline: 2px solid ${s.colors.accent};
|
|
457
|
+
outline-offset: 2px;
|
|
458
|
+
}
|
|
459
|
+
`,Hn=`(min-width: ${lo.sm}px)`,na=new Date(2020,0,1);function sa(){const[t,n]=f.useState(()=>{var o;return typeof window<"u"&&((o=window.matchMedia)==null?void 0:o.call(window,Hn).matches)});return f.useEffect(()=>{var a;const o=(a=window.matchMedia)==null?void 0:a.call(window,Hn);if(!o)return;const l=()=>n(o.matches);return o.addEventListener("change",l),()=>o.removeEventListener("change",l)},[]),!!t}function oa(t,n){return n?new Date(t.getFullYear(),t.getMonth()-1,1):t}function ra({from:t,to:n,max:o,onApply:l,onClose:a}){const[d,p]=f.useState(t!=null?new Date(t):null),[h,m]=f.useState(n!=null?new Date(n):null),$=f.useRef(null),O=sa();f.useEffect(()=>{function z(C){var D,W;const S=C.target;(D=$.current)!=null&&D.contains(S)||(W=S.closest)!=null&&W.call(S,"[data-range-trigger]")||a()}function B(C){if(C.key==="Escape"&&a(),C.key!=="Tab"||!$.current)return;const S=[...$.current.querySelectorAll('button:not([disabled]), [tabindex="0"]')];if(S.length===0)return;const D=S[0],W=S[S.length-1];C.shiftKey&&document.activeElement===D?(C.preventDefault(),W.focus()):!C.shiftKey&&document.activeElement===W&&(C.preventDefault(),D.focus())}return document.addEventListener("pointerdown",z),document.addEventListener("keydown",B),()=>{document.removeEventListener("pointerdown",z),document.removeEventListener("keydown",B)}},[a]),f.useEffect(()=>{var C,S;const z=document.activeElement;return(S=((C=$.current)==null?void 0:C.querySelector('.react-datepicker__day[tabindex="0"]'))??$.current)==null||S.focus(),()=>{var W;const D=document.querySelector("[data-range-trigger]");(W=z!=null&&z.isConnected?z:D)==null||W.focus()}},[]);const u=new Intl.DateTimeFormat(pe(),{month:"short",day:"numeric",year:"numeric"}),j=d?h?`${u.format(d)} – ${u.format(h)}`:i("myStore.rangePickEnd",{from:u.format(d)}):i("myStore.rangePickStart");return e.jsxs(Jr,{ref:$,role:"dialog","aria-modal":"true","aria-label":i("myStore.rangeDialog"),tabIndex:-1,"data-testid":"store-range-picker",children:[e.jsx(Mo,{inline:!0,selectsRange:!0,startDate:d,endDate:h,onChange:([z,B])=>{p(z),m(B)},maxDate:new Date(o),minDate:na,monthsShown:O?2:1,openToDate:oa(h??d??new Date(o),O),calendarStartDay:1}),e.jsxs(ea,{children:[e.jsx("span",{"data-testid":"store-range-summary",children:j}),e.jsxs(ta,{children:[e.jsx(qn,{type:"button",onClick:a,children:i("myStore.rangeCancel")}),e.jsx(qn,{type:"button","data-variant":"primary",disabled:!d||!h,onClick:()=>d&&h&&l(d.getTime(),h.getTime()),"data-testid":"store-range-apply",children:i("myStore.rangeApply")})]})]})]})}function it(t,n,o){return(t==null?void 0:t.key)===n?{key:n,dir:t.dir==="asc"?"desc":"asc"}:{key:n,dir:o}}function Ne(t,n,o){const l=o==="asc"?1:-1;return t.map((a,d)=>({row:a,index:d,v:n(a)})).sort((a,d)=>{const p=a.v==null,h=d.v==null;return p||h?p===h?a.index-d.index:p?1:-1:l*aa(a.v,d.v)||a.index-d.index}).map(a=>a.row)}function aa(t,n){return typeof t=="string"&&typeof n=="string"?t.localeCompare(n,void 0,{sensitivity:"base"}):t===n?0:t<n?-1:1}const ia=7;function la(t,n){if(n<=ia)return Array.from({length:n},(a,d)=>d);const o=n-1,l=Math.min(Math.max(0,t),o);return l<=3?[0,1,2,3,4,"gap",o]:l>=o-3?[0,"gap",o-4,o-3,o-2,o-1,o]:[0,"gap",l-1,l,l+1,"gap",o]}class ft extends Error{constructor(){super("fetchTopOwners 503"),this.name="TopOwnersUnavailableError"}}class Cs extends Error{constructor(n){super(`fetchTopOwners ${n}`),this.status=n,this.name="TopOwnersReadError"}}async function Kn(t,{sortBy:n,orderDirection:o,first:l,skip:a}){var m;const d=new URLSearchParams({creator:t,first:String(l),skip:String(a)});n&&d.set("sortBy",n),o&&d.set("orderDirection",o);const p=await fetch(`${me.marketplaceServerUrl}/v1/owners/top?${d.toString()}`);if(!p.ok)throw await((m=p.body)==null?void 0:m.cancel()),p.status===503?new ft:new Cs(p.status);const h=await p.json();return{data:h.data??[],total:h.total??0}}const ue=864e5,en=.093,le=Date.now(),ca=(t,n,o,l,a)=>({key:`0xmock${t}-${t}`,itemId:String(t),name:n,thumbnail:"",rarity:["epic","legendary","rare","mythic","unique"][t%5],left:l-o,minted:o,sold:Math.round(o/6),earnedWei:BigInt(Math.round(o/6)*(3+t%5))*10n**18n,lifetimeSold:o,priceCredits:a==="classic"?null:20+t*5,manaWei:a==="classic"?"5000000000000000000":null,createdAt:le-t*11*ue,state:a}),da=[[0,1,1,2,3,3,5,6,8,9,11,13,16,21],[2,9,1,0,7,2,11,1,0,6,14,2,8,3],[18,16,14,11,9,8,6,5,3,2,2,1,1,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0]],ha=[{name:"Neon Runners",items:[["Neon Runner Boots",340,1e3,"discounted"],["Neon Runner Jacket",210,1e3,"discounted"],["Neon Runner Visor",95,1e3,"discounted"]],trend:0,earnings:1840,sold:128},{name:"Founders Edition",items:[["Founders Cloak",1,1,"soldout"],["Founders Crown",1,1,"soldout"]],trend:3,earnings:0,sold:0},{name:"Midnight Capsule",items:[["Midnight Scarf",0,500,"unlisted"],["Midnight Mittens",0,500,"unlisted"],["Midnight Parka",0,500,"unlisted"]],trend:3,earnings:0,sold:0},{name:"Classic Collection",items:[["Classic Tee",60,200,"classic"],["Classic Cap",44,200,"classic"]],trend:2,earnings:310,sold:12},{name:"Summer Drop",items:[["Summer Shades",480,1e3,"discounted"],["Summer Sandals",300,1e3,"discounted"]],trend:1,earnings:920,sold:71},{name:"Studio Basics",items:[["Studio Hoodie",12,100,"unknown"]],trend:3,earnings:0,sold:0}];function pa(t,n){const o=t.items.map(([a,d,p,h],m)=>ca(n*10+m,a,d,p,h)),l=o.reduce((a,d)=>a+d.minted,0);return{contractAddress:`0xmock${n.toString().padStart(36,"0")}`,collectionId:`mock-${n}`,name:t.name,items:o,listed:o.filter(a=>a.state==="discounted").length,classic:o.filter(a=>a.state==="classic").length,soldOut:o.filter(a=>a.state==="soldout").length,sold:t.sold,earningsWei:BigInt(t.earnings)*10n**18n,earningsUsd:t.earnings*en,createdAt:le-n*30*ue,trend:da[t.trend],claimed:l,runTotal:o.reduce((a,d)=>a+d.minted+d.left,0),exhausted:o.length>0&&o.every(a=>a.state==="soldout")}}const tn=(()=>{const t=ha.map(pa);return{collections:t,sold:211,mints:198,resales:13,earningsWei:3070n*10n**18n,earningsUsd:3070*en,unpricedSales:0,partial:!1,breakdownPartial:!1,fetched:211,unattributed:6,trendDays:30,unknownCollections:1,royalties:{resales:41,volumeWei:2140n*10n**18n},listed:t.reduce((n,o)=>n+o.listed,0),neverListed:t.reduce((n,o)=>n+o.items.filter(l=>l.state==="unlisted").length,0),classic:t.reduce((n,o)=>n+o.classic,0),soldOut:t.reduce((n,o)=>n+o.soldOut,0)}})(),ua={total:74,repeat:29,repeatPct:39.19,topSharePct:21.3},ma=Array.from({length:12},(t,n)=>({address:`0x${(n+1).toString(16).repeat(40).slice(0,40)}`,bought:12-n,items:Math.max(1,8-n),collections:Math.max(1,5-Math.floor(n/2)),spentWei:BigInt(900-n*62)*10n**18n,lastAt:le-(n+1)*9*36e5})),fa=Array.from({length:23},(t,n)=>({address:`0x${(n+7).toString(16).padStart(2,"0").repeat(20)}`,nfts:Math.max(1,31-n*2+n%3),items:Math.max(1,12-n),collections:Math.max(1,6-Math.floor(n/3)),lastAcquiredAt:le-n*7%23*ue-n*36e5,spentWei:String(BigInt(n===5?2400:1200-n*45)*10n**18n)}));function Yn(t,n,o){const l=p=>t.key==="items"?p.items:t.key==="collections"?p.collections:t.key==="recent"?p.lastAcquiredAt:t.key==="spent"?Number(BigInt(p.spentWei)/10n**18n):p.nfts,a=t.dir==="asc"?1:-1,d=[...fa].sort((p,h)=>a*(l(p)-l(h))||h.nfts-p.nfts);return{data:d.slice(n*o,(n+1)*o),total:d.length}}const Gn=(t,n,o,l,a,d)=>({id:`mock-coupon-${t}`,signer:"0xmockcreator0000000000000000000000000001",chainId:137,network:"MATIC",checks:{uses:50,expiration:le+a,effective:le-l,salt:`0x${t.toString().repeat(64).slice(0,64)}`,contractSignatureIndex:0,signerSignatureIndex:0,allowedRoot:"0x",externalChecks:[],allowedProof:[]},couponManager:"0x6c956587d9fe70032781edcdc626310648575382",couponAddress:"0x4ee8f6b87f4917a3bbc7c8bb3a06db8555f83db9",discountType:1,discount:o*1e4,root:`0x${"44".repeat(32)}`,collections:[n],signature:`0x${"cd".repeat(65)}`,proof:[],createdAt:le-l,state:{uses:d,cancelled:!1,revoked:!1,checkedAt:le},status:"active"}),xa=[Gn(1,`0xmock${"0".repeat(36)}`,25,3*ue,3*ue,18),Gn(2,`0xmock${"1".padStart(36,"0")}`,15,12*36e5,9*ue,0)],ga=new Map(tn.collections.flatMap(t=>t.items.map((n,o)=>[n.key,[41,3,128,0,17,6,92,1][o%8]]))),Vt=tn.collections.flatMap(t=>t.items.map(n=>[t.contractAddress,n])),ya=Vt.slice(0,5).map(([t,n],o)=>({id:`mock-sale-${o}`,itemId:o===3?null:n.itemId,contractAddress:t,buyer:`0x${(o+3).toString(16).repeat(40).slice(0,40)}`,seller:"0xmockcreator0000000000000000000000000001",price:String(BigInt(40+o*17)*10n**18n),timestamp:le-(o===0?8*6e4:o*19*36e5),type:o===3?"order":"mint",network:"MATIC",tokenId:o===3?"1042":null})),Vn=(()=>{const t=[];let n=7;const o=()=>(n=n*16807%2147483647,n/2147483647);for(let l=0;l<730;l++){const a=le-l*ue,d=new Date(a).getMonth(),p=d>=5&&d<=7?.4:d>=8&&d<=10?1.8:1,h=Math.round(o()*4*p);for(let m=0;m<h;m++){const[$,O]=Vt[Math.floor(o()*Vt.length)];t.push({id:`mock-chart-${l}-${m}`,itemId:O.itemId,contractAddress:$,buyer:`0x${Math.floor(o()*16777215).toString(16).padStart(40,"0")}`,seller:"0xmockcreator0000000000000000000000000001",price:String(BigInt(5+Math.floor(o()*60))*10n**18n),timestamp:a-Math.floor(o()*ue),type:"mint",network:"MATIC",tokenId:null})}}return t})(),ba=(()=>{const t=new Map;for(let n=0;n<740;n++){const o=le-n*ue;t.set(new Date(o).toISOString().slice(0,10),en*(1+.35*Math.sin(n/60)+n/1500))}return t})(),wa=c.div`
|
|
460
|
+
display: flex;
|
|
461
|
+
flex-direction: column;
|
|
462
|
+
gap: 22px;
|
|
463
|
+
|
|
464
|
+
/* The credits mark is pinned near-black globally (Icon.css) so a coloured total never tints it. Every
|
|
465
|
+
surface on this page is dark, so the whole page opts out once rather than each panel in turn. */
|
|
466
|
+
.ccy-mark,
|
|
467
|
+
.ccy {
|
|
468
|
+
color: ${s.colors.softWhite};
|
|
469
|
+
}
|
|
470
|
+
|
|
471
|
+
/* MANA's mark is an image, not a masked glyph, so no colour reaches it: the token's own artwork is dark
|
|
472
|
+
and vanished into every panel on this page. Driven to white instead. */
|
|
473
|
+
[data-kind='mana'] img {
|
|
474
|
+
filter: brightness(0) invert(1);
|
|
475
|
+
}
|
|
476
|
+
`,Sa=c.header`
|
|
477
|
+
display: flex;
|
|
478
|
+
align-items: flex-start;
|
|
479
|
+
justify-content: space-between;
|
|
480
|
+
gap: 20px;
|
|
481
|
+
flex-wrap: wrap;
|
|
482
|
+
/* The rule that closes the identity block off from the figures under it. */
|
|
483
|
+
padding-bottom: 24px;
|
|
484
|
+
border-bottom: 0.5px solid rgba(255, 255, 255, 0.3);
|
|
485
|
+
`,ja=c.div`
|
|
486
|
+
display: flex;
|
|
487
|
+
align-items: center;
|
|
488
|
+
gap: 12px;
|
|
489
|
+
min-width: 0;
|
|
490
|
+
`,ka=c.div`
|
|
491
|
+
display: flex;
|
|
492
|
+
flex-direction: column;
|
|
493
|
+
align-items: flex-start;
|
|
494
|
+
justify-content: center;
|
|
495
|
+
gap: 4px;
|
|
496
|
+
padding-bottom: 8px;
|
|
497
|
+
min-width: 0;
|
|
498
|
+
`,$a=c.span`
|
|
499
|
+
flex: none;
|
|
500
|
+
display: block;
|
|
501
|
+
width: 84px;
|
|
502
|
+
height: 84px;
|
|
503
|
+
border-radius: 50%;
|
|
504
|
+
background-color: rgba(0, 0, 0, 0.22);
|
|
505
|
+
background-size: cover;
|
|
506
|
+
background-position: center top;
|
|
507
|
+
border: 2px solid rgba(252, 252, 252, 0.22);
|
|
508
|
+
|
|
509
|
+
${s.media.maxWidth("mobile")} {
|
|
510
|
+
width: 56px;
|
|
511
|
+
height: 56px;
|
|
512
|
+
}
|
|
513
|
+
`,va=c.p`
|
|
514
|
+
margin: 0;
|
|
515
|
+
font-family: ${s.font.sans};
|
|
516
|
+
font-size: 14px;
|
|
517
|
+
font-weight: 600;
|
|
518
|
+
line-height: 1.6;
|
|
519
|
+
color: ${s.colors.softWhite};
|
|
520
|
+
overflow: hidden;
|
|
521
|
+
text-overflow: ellipsis;
|
|
522
|
+
white-space: nowrap;
|
|
523
|
+
max-width: 100%;
|
|
524
|
+
`,Ca=c.h1`
|
|
525
|
+
margin: 0;
|
|
526
|
+
font-family: ${s.font.sans};
|
|
527
|
+
font-size: 32px;
|
|
528
|
+
font-weight: 700;
|
|
529
|
+
line-height: 1.2;
|
|
530
|
+
letter-spacing: 0.46px;
|
|
531
|
+
color: ${s.colors.white};
|
|
532
|
+
|
|
533
|
+
${s.media.maxWidth("mobile")} {
|
|
534
|
+
font-size: 26px;
|
|
535
|
+
}
|
|
536
|
+
`,Ma=c.div`
|
|
537
|
+
display: flex;
|
|
538
|
+
flex-direction: column;
|
|
539
|
+
align-items: flex-start;
|
|
540
|
+
gap: 8px;
|
|
541
|
+
min-width: 0;
|
|
542
|
+
`,Qn=c.p`
|
|
543
|
+
margin: 0;
|
|
544
|
+
display: flex;
|
|
545
|
+
align-items: center;
|
|
546
|
+
gap: 12px;
|
|
547
|
+
font-family: ${s.font.sans};
|
|
548
|
+
font-size: 12px;
|
|
549
|
+
line-height: 1;
|
|
550
|
+
color: ${s.colors.softWhite};
|
|
551
|
+
`,Aa=c.div`
|
|
552
|
+
display: flex;
|
|
553
|
+
align-items: center;
|
|
554
|
+
justify-content: flex-end;
|
|
555
|
+
flex-wrap: wrap;
|
|
556
|
+
gap: 12px;
|
|
557
|
+
|
|
558
|
+
/* Two uppercase buttons that cannot shrink below their labels. On a phone they fit side by side in
|
|
559
|
+
Inter with a few pixels to spare, and in any wider fallback font they did not: the second one ran
|
|
560
|
+
15px off a 390px screen. Wrapping puts it on its own line instead. */
|
|
561
|
+
${s.media.maxWidth("mobile")} {
|
|
562
|
+
justify-content: flex-start;
|
|
563
|
+
width: 100%;
|
|
564
|
+
}
|
|
565
|
+
`,Ia=c.a`
|
|
566
|
+
display: inline-flex;
|
|
567
|
+
align-items: center;
|
|
568
|
+
justify-content: center;
|
|
569
|
+
gap: 8px;
|
|
570
|
+
height: 46px;
|
|
571
|
+
padding: 0 12px;
|
|
572
|
+
border-radius: ${s.radius.card};
|
|
573
|
+
color: ${s.colors.white};
|
|
574
|
+
font-family: ${s.font.sans};
|
|
575
|
+
font-size: 13px;
|
|
576
|
+
font-weight: 600;
|
|
577
|
+
line-height: 24px;
|
|
578
|
+
letter-spacing: 0.46px;
|
|
579
|
+
text-transform: uppercase;
|
|
580
|
+
text-decoration: underline;
|
|
581
|
+
white-space: nowrap;
|
|
582
|
+
|
|
583
|
+
&:hover {
|
|
584
|
+
color: ${s.colors.navViolet};
|
|
585
|
+
}
|
|
586
|
+
.ico {
|
|
587
|
+
width: 22px;
|
|
588
|
+
height: 22px;
|
|
589
|
+
}
|
|
590
|
+
|
|
591
|
+
${s.media.maxWidth("mobile")} {
|
|
592
|
+
padding: 0 8px;
|
|
593
|
+
}
|
|
594
|
+
`,La=c(qe)`
|
|
595
|
+
display: inline-flex;
|
|
596
|
+
align-items: center;
|
|
597
|
+
justify-content: center;
|
|
598
|
+
gap: 8px;
|
|
599
|
+
height: 46px;
|
|
600
|
+
padding: 0 24px;
|
|
601
|
+
border-radius: ${s.radius.card};
|
|
602
|
+
background: ${s.colors.overlay};
|
|
603
|
+
color: ${s.colors.white};
|
|
604
|
+
font-family: ${s.font.sans};
|
|
605
|
+
font-size: 13px;
|
|
606
|
+
font-weight: 600;
|
|
607
|
+
line-height: 24px;
|
|
608
|
+
letter-spacing: 0.46px;
|
|
609
|
+
text-transform: uppercase;
|
|
610
|
+
text-decoration: none;
|
|
611
|
+
white-space: nowrap;
|
|
612
|
+
transition: background 0.15s ease;
|
|
613
|
+
|
|
614
|
+
&:hover {
|
|
615
|
+
background: ${s.colors.overlayHover};
|
|
616
|
+
}
|
|
617
|
+
&:focus-visible {
|
|
618
|
+
outline: 2px solid ${s.colors.softWhite};
|
|
619
|
+
outline-offset: 2px;
|
|
620
|
+
}
|
|
621
|
+
.ico {
|
|
622
|
+
width: 20px;
|
|
623
|
+
height: 20px;
|
|
624
|
+
}
|
|
625
|
+
|
|
626
|
+
${s.media.maxWidth("mobile")} {
|
|
627
|
+
padding: 0 16px;
|
|
628
|
+
}
|
|
629
|
+
`,Ta=c.span`
|
|
630
|
+
display: inline-flex;
|
|
631
|
+
align-items: center;
|
|
632
|
+
gap: 8px;
|
|
633
|
+
margin-left: 12px;
|
|
634
|
+
padding-left: 12px;
|
|
635
|
+
border-left: 1px solid rgba(255, 255, 255, 0.3);
|
|
636
|
+
`,Wa=c.a`
|
|
637
|
+
display: inline-flex;
|
|
638
|
+
align-items: center;
|
|
639
|
+
justify-content: center;
|
|
640
|
+
color: ${s.colors.softWhite};
|
|
641
|
+
transition: color 0.15s ease;
|
|
642
|
+
|
|
643
|
+
&:hover {
|
|
644
|
+
color: ${s.colors.navViolet};
|
|
645
|
+
}
|
|
646
|
+
.ico {
|
|
647
|
+
width: 15px;
|
|
648
|
+
height: 15px;
|
|
649
|
+
}
|
|
650
|
+
`,_a=c.div`
|
|
651
|
+
display: flex;
|
|
652
|
+
align-items: center;
|
|
653
|
+
justify-content: space-between;
|
|
654
|
+
gap: 16px;
|
|
655
|
+
flex-wrap: wrap;
|
|
656
|
+
`,Pa=c.h2`
|
|
657
|
+
margin: 0;
|
|
658
|
+
font-family: ${s.font.sans};
|
|
659
|
+
font-size: 24px;
|
|
660
|
+
font-weight: 700;
|
|
661
|
+
line-height: 1.2;
|
|
662
|
+
color: ${s.colors.white};
|
|
663
|
+
`,Ea=c.div`
|
|
664
|
+
display: flex;
|
|
665
|
+
gap: 4px;
|
|
666
|
+
max-width: 100%;
|
|
667
|
+
padding: 4px;
|
|
668
|
+
border-radius: ${s.radius.pill};
|
|
669
|
+
background: rgba(0, 0, 0, 0.22);
|
|
670
|
+
/* Six presets outgrow a phone: the row scrolls rather than wrapping into a second pill. */
|
|
671
|
+
overflow-x: auto;
|
|
672
|
+
scrollbar-width: none;
|
|
673
|
+
|
|
674
|
+
&::-webkit-scrollbar {
|
|
675
|
+
display: none;
|
|
676
|
+
}
|
|
677
|
+
`,Da=c.div`
|
|
678
|
+
display: flex;
|
|
679
|
+
align-items: center;
|
|
680
|
+
flex-wrap: wrap;
|
|
681
|
+
justify-content: flex-end;
|
|
682
|
+
gap: 8px;
|
|
683
|
+
max-width: 100%;
|
|
684
|
+
`,Fa=c.div`
|
|
685
|
+
display: flex;
|
|
686
|
+
flex: none;
|
|
687
|
+
gap: 4px;
|
|
688
|
+
padding: 4px;
|
|
689
|
+
border-radius: ${s.radius.pill};
|
|
690
|
+
background: rgba(0, 0, 0, 0.22);
|
|
691
|
+
|
|
692
|
+
button {
|
|
693
|
+
display: inline-flex;
|
|
694
|
+
align-items: center;
|
|
695
|
+
justify-content: center;
|
|
696
|
+
min-width: 40px;
|
|
697
|
+
}
|
|
698
|
+
/* The page drives the MANA mark white for its dark panels; on the selected, white pill it vanished. */
|
|
699
|
+
button[aria-pressed='true'] [data-kind='mana'] img {
|
|
700
|
+
filter: none;
|
|
701
|
+
}
|
|
702
|
+
`,Xn=c.p`
|
|
703
|
+
margin: -12px 0 0;
|
|
704
|
+
font-family: ${s.font.sans};
|
|
705
|
+
font-size: 12px;
|
|
706
|
+
color: ${s.colors.gray4};
|
|
707
|
+
text-align: right;
|
|
708
|
+
`,Oa=c.span`
|
|
709
|
+
margin-right: 1px;
|
|
710
|
+
opacity: 0.8;
|
|
711
|
+
`,Ra=c.div`
|
|
712
|
+
position: relative;
|
|
713
|
+
max-width: 100%;
|
|
714
|
+
`,Zn=c.button`
|
|
715
|
+
flex: none;
|
|
716
|
+
white-space: nowrap;
|
|
717
|
+
border: 0;
|
|
718
|
+
cursor: pointer;
|
|
719
|
+
font-family: ${s.font.sans};
|
|
720
|
+
padding: 7px 15px;
|
|
721
|
+
border-radius: ${s.radius.pill};
|
|
722
|
+
font-size: 13px;
|
|
723
|
+
font-weight: 600;
|
|
724
|
+
color: rgba(252, 252, 252, 0.62);
|
|
725
|
+
background: transparent;
|
|
726
|
+
transition:
|
|
727
|
+
color 0.15s ease,
|
|
728
|
+
background 0.15s ease;
|
|
729
|
+
|
|
730
|
+
&:hover {
|
|
731
|
+
color: ${s.colors.softWhite};
|
|
732
|
+
}
|
|
733
|
+
&[aria-pressed='true'] {
|
|
734
|
+
background: ${s.colors.softWhite};
|
|
735
|
+
color: ${s.colors.text};
|
|
736
|
+
}
|
|
737
|
+
&:focus-visible {
|
|
738
|
+
outline: 2px solid ${s.colors.softWhite};
|
|
739
|
+
outline-offset: 2px;
|
|
740
|
+
}
|
|
741
|
+
|
|
742
|
+
@media (prefers-reduced-motion: reduce) {
|
|
743
|
+
transition: none;
|
|
744
|
+
}
|
|
745
|
+
`,Ms=c.section`
|
|
746
|
+
display: grid;
|
|
747
|
+
/* Five tiles when the store has resales to report, four when it does not — auto-fit rather than a fixed
|
|
748
|
+
count so neither case leaves a hole. */
|
|
749
|
+
grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
|
|
750
|
+
gap: 14px;
|
|
751
|
+
|
|
752
|
+
${s.media.maxWidth("lg")} {
|
|
753
|
+
grid-template-columns: repeat(2, minmax(0, 1fr));
|
|
754
|
+
}
|
|
755
|
+
${s.media.maxWidth("mobile")} {
|
|
756
|
+
grid-template-columns: minmax(0, 1fr);
|
|
757
|
+
}
|
|
758
|
+
`,be=c.div`
|
|
759
|
+
background: ${s.colors.overlay};
|
|
760
|
+
color: ${s.colors.softWhite};
|
|
761
|
+
border-radius: ${s.radius.modal};
|
|
762
|
+
padding: 12px 24px;
|
|
763
|
+
display: flex;
|
|
764
|
+
flex-direction: column;
|
|
765
|
+
gap: 12px;
|
|
766
|
+
min-width: 0;
|
|
767
|
+
/* The credits mark is pinned near-black globally (Icon.css) so a coloured total never tints it. That
|
|
768
|
+
was chosen for a white card and disappears into this one. */
|
|
769
|
+
.ccy-mark,
|
|
770
|
+
.ccy {
|
|
771
|
+
color: ${s.colors.softWhite};
|
|
772
|
+
}
|
|
773
|
+
`,ke=c.span`
|
|
774
|
+
display: flex;
|
|
775
|
+
align-items: center;
|
|
776
|
+
justify-content: flex-start;
|
|
777
|
+
gap: 8px;
|
|
778
|
+
/* The tiles carrying a tooltip button stand 3px taller than the rest, and in a grid that is 3px of dead
|
|
779
|
+
space under every other card. Held to the taller of the two. */
|
|
780
|
+
min-height: 18px;
|
|
781
|
+
font-family: ${s.font.sans};
|
|
782
|
+
font-size: 12px;
|
|
783
|
+
font-weight: 400;
|
|
784
|
+
line-height: 1;
|
|
785
|
+
letter-spacing: 1px;
|
|
786
|
+
text-transform: uppercase;
|
|
787
|
+
color: ${s.colors.gray4};
|
|
788
|
+
`,$e=c.span`
|
|
789
|
+
/* Ahead of the label, as the design has it. Ordered rather than moved in the markup, because the mark is
|
|
790
|
+
the last child in every tile and reordering five sets of markup would buy nothing. */
|
|
791
|
+
order: -1;
|
|
792
|
+
font-size: 16px;
|
|
793
|
+
line-height: 1;
|
|
794
|
+
filter: saturate(0.9);
|
|
795
|
+
`,ve=c.span`
|
|
796
|
+
display: flex;
|
|
797
|
+
align-items: baseline;
|
|
798
|
+
gap: 8px;
|
|
799
|
+
|
|
800
|
+
/* The currency mark is a box, not a glyph with a baseline: sized to the digits' cap height and centred
|
|
801
|
+
against them, rather than left to sit on the line's bottom edge. */
|
|
802
|
+
[data-kind] {
|
|
803
|
+
align-self: center;
|
|
804
|
+
margin-right: 6px;
|
|
805
|
+
}
|
|
806
|
+
[data-kind] img,
|
|
807
|
+
[data-kind] .ico {
|
|
808
|
+
width: 0.74em;
|
|
809
|
+
height: 0.74em;
|
|
810
|
+
vertical-align: baseline;
|
|
811
|
+
}
|
|
812
|
+
font-family: ${s.font.sans};
|
|
813
|
+
font-size: 32px;
|
|
814
|
+
font-weight: 600;
|
|
815
|
+
line-height: 1.235;
|
|
816
|
+
letter-spacing: -0.02em;
|
|
817
|
+
font-variant-numeric: tabular-nums;
|
|
818
|
+
`,za=c.span`
|
|
819
|
+
font-size: 20px;
|
|
820
|
+
font-weight: 600;
|
|
821
|
+
color: ${s.colors.gray4};
|
|
822
|
+
margin-right: -2px;
|
|
823
|
+
`,Jn=c.span`
|
|
824
|
+
font-size: 15px;
|
|
825
|
+
font-weight: 600;
|
|
826
|
+
letter-spacing: 0;
|
|
827
|
+
color: ${s.colors.gray4};
|
|
828
|
+
`,Ce=c.span`
|
|
829
|
+
display: flex;
|
|
830
|
+
align-items: center;
|
|
831
|
+
flex-wrap: wrap;
|
|
832
|
+
gap: 4px 6px;
|
|
833
|
+
min-width: 0;
|
|
834
|
+
min-height: 16px;
|
|
835
|
+
font-family: ${s.font.sans};
|
|
836
|
+
font-size: 12px;
|
|
837
|
+
line-height: 1.35;
|
|
838
|
+
color: ${s.colors.gray4};
|
|
839
|
+
`,es=c.span`
|
|
840
|
+
display: inline-flex;
|
|
841
|
+
align-items: center;
|
|
842
|
+
gap: 4px;
|
|
843
|
+
font-size: 11px;
|
|
844
|
+
font-weight: 600;
|
|
845
|
+
text-transform: uppercase;
|
|
846
|
+
letter-spacing: 0.04em;
|
|
847
|
+
color: ${s.colors.gray4};
|
|
848
|
+
border: 1px dashed ${s.colors.cardLine};
|
|
849
|
+
border-radius: ${s.radius.chip};
|
|
850
|
+
padding: 1px 5px;
|
|
851
|
+
`,he=c.section`
|
|
852
|
+
display: flex;
|
|
853
|
+
flex-direction: column;
|
|
854
|
+
gap: 12px;
|
|
855
|
+
padding: 16px;
|
|
856
|
+
background: ${s.colors.overlayLight};
|
|
857
|
+
color: ${s.colors.softWhite};
|
|
858
|
+
border-radius: ${s.radius.banner};
|
|
859
|
+
min-width: 0;
|
|
860
|
+
/* The credits mark is pinned near-black globally (Icon.css) so a coloured total never tints it. That
|
|
861
|
+
was chosen for a white card and disappears into this one. */
|
|
862
|
+
.ccy-mark,
|
|
863
|
+
.ccy {
|
|
864
|
+
color: ${s.colors.softWhite};
|
|
865
|
+
}
|
|
866
|
+
`,Ue=c.div`
|
|
867
|
+
display: flex;
|
|
868
|
+
align-items: baseline;
|
|
869
|
+
justify-content: space-between;
|
|
870
|
+
gap: 12px;
|
|
871
|
+
`,Me=c.h2`
|
|
872
|
+
margin: 0;
|
|
873
|
+
font-family: ${s.font.sans};
|
|
874
|
+
font-size: 15px;
|
|
875
|
+
font-weight: 700;
|
|
876
|
+
letter-spacing: -0.01em;
|
|
877
|
+
`,Na=c.div`
|
|
878
|
+
display: flex;
|
|
879
|
+
align-items: center;
|
|
880
|
+
gap: 12px;
|
|
881
|
+
`,Ua=c(ys)`
|
|
882
|
+
/* Direct child only: the menu's options are buttons as well, and a descendant rule turned them white
|
|
883
|
+
on the white menu, which is a menu you cannot read. */
|
|
884
|
+
> button {
|
|
885
|
+
gap: 24px;
|
|
886
|
+
height: 40px;
|
|
887
|
+
padding: 4px 4px 4px 12px;
|
|
888
|
+
background: transparent;
|
|
889
|
+
border: 0.5px solid ${s.colors.white};
|
|
890
|
+
border-radius: ${s.radius.btn};
|
|
891
|
+
color: ${s.colors.white};
|
|
892
|
+
font-size: 12px;
|
|
893
|
+
font-weight: 500;
|
|
894
|
+
text-transform: uppercase;
|
|
895
|
+
letter-spacing: 0;
|
|
896
|
+
}
|
|
897
|
+
> button:hover {
|
|
898
|
+
border-color: ${s.colors.softWhite};
|
|
899
|
+
background: ${s.colors.glassFaint};
|
|
900
|
+
color: ${s.colors.softWhite};
|
|
901
|
+
}
|
|
902
|
+
/* The chevron's colour is an inline style on the shared component, so a class cannot reach it — this
|
|
903
|
+
is the one place that has to shout. */
|
|
904
|
+
> button .ico {
|
|
905
|
+
color: ${s.colors.softWhite} !important;
|
|
906
|
+
}
|
|
907
|
+
`,ts=c.span`
|
|
908
|
+
font-family: ${s.font.sans};
|
|
909
|
+
font-size: 12px;
|
|
910
|
+
color: ${s.colors.gray4};
|
|
911
|
+
`,As="24px 56px minmax(170px, 1fr) minmax(236px, 1.34fr) minmax(140px, 1fr) minmax(140px, 1fr) minmax(150px, 1fr) 158px",Is=c.div`
|
|
912
|
+
display: grid;
|
|
913
|
+
grid-template-columns: ${As};
|
|
914
|
+
align-items: center;
|
|
915
|
+
gap: 12px;
|
|
916
|
+
padding: 12px 24px 12px 12px;
|
|
917
|
+
min-width: min-content;
|
|
918
|
+
background: ${s.colors.overlayStrong};
|
|
919
|
+
border-radius: ${s.radius.card} ${s.radius.card} 0 0;
|
|
920
|
+
font-family: ${s.font.sans};
|
|
921
|
+
font-size: 14px;
|
|
922
|
+
color: ${s.colors.softWhite};
|
|
923
|
+
|
|
924
|
+
/* Each label sits the way its column's content sits, so a header never points at the wrong figure. */
|
|
925
|
+
> *:nth-child(4),
|
|
926
|
+
> *:nth-child(5),
|
|
927
|
+
> *:nth-child(6),
|
|
928
|
+
> *:nth-child(7) {
|
|
929
|
+
text-align: center;
|
|
930
|
+
}
|
|
931
|
+
/* The label sits over the middle of the action, not over its right edge: in the design both occupy the
|
|
932
|
+
same box, so the header stretches across the track and centres inside it. */
|
|
933
|
+
> *:last-child {
|
|
934
|
+
justify-self: stretch;
|
|
935
|
+
text-align: center;
|
|
936
|
+
}
|
|
937
|
+
|
|
938
|
+
${s.media.maxWidth("mobile")} {
|
|
939
|
+
display: none;
|
|
940
|
+
}
|
|
941
|
+
`,Ls=c.div`
|
|
942
|
+
display: flex;
|
|
943
|
+
flex-direction: column;
|
|
944
|
+
gap: 2px;
|
|
945
|
+
min-width: 0;
|
|
946
|
+
/*
|
|
947
|
+
* The run scrolls sideways rather than crushing its own columns.
|
|
948
|
+
*
|
|
949
|
+
* The tracks need 1158px before the grid starts taking room from them, and the panel used to clip what
|
|
950
|
+
* did not fit. It does not any more, and a clipped row is worse than a scrolling one: the action is the
|
|
951
|
+
* last column, so on a 1024px tablet "Manage" simply left the screen with no way to reach it.
|
|
952
|
+
*/
|
|
953
|
+
overflow-x: auto;
|
|
954
|
+
|
|
955
|
+
> *:last-child {
|
|
956
|
+
border-radius: 0 0 ${s.radius.card} ${s.radius.card};
|
|
957
|
+
}
|
|
958
|
+
`,Ts=c.div`
|
|
959
|
+
display: grid;
|
|
960
|
+
grid-template-columns: ${As};
|
|
961
|
+
align-items: center;
|
|
962
|
+
gap: 12px;
|
|
963
|
+
padding: 12px 24px 12px 12px;
|
|
964
|
+
min-width: min-content;
|
|
965
|
+
background: ${s.colors.overlay};
|
|
966
|
+
|
|
967
|
+
/* A fixed track keeps every row's action in the same place, centred under its column's label. */
|
|
968
|
+
> *:last-child {
|
|
969
|
+
justify-self: center;
|
|
970
|
+
}
|
|
971
|
+
|
|
972
|
+
/**
|
|
973
|
+
* A collection with no copies left, set back from the ones that still have something to sell.
|
|
974
|
+
*
|
|
975
|
+
* Muted rather than faded: opacity would take the row's one action down with it, and a creator who wants
|
|
976
|
+
* to look at a finished run should not have to fight the styling to click into it. The thumbnail loses
|
|
977
|
+
* its colour, the figures lose their weight, and the row still reads.
|
|
978
|
+
*/
|
|
979
|
+
&[data-exhausted] {
|
|
980
|
+
background: rgba(0, 0, 0, 0.55);
|
|
981
|
+
color: ${s.colors.gray4};
|
|
982
|
+
|
|
983
|
+
[data-testid='store-collection-thumb'] img {
|
|
984
|
+
filter: grayscale(0.75);
|
|
985
|
+
opacity: 0.72;
|
|
986
|
+
}
|
|
987
|
+
/* The collection's own name follows the row; the action at the end keeps its colour, because a
|
|
988
|
+
finished run is still one a creator opens, and a button that reads disabled invites nobody. */
|
|
989
|
+
[data-testid='store-collection-name'] {
|
|
990
|
+
color: inherit;
|
|
991
|
+
}
|
|
992
|
+
}
|
|
993
|
+
|
|
994
|
+
/**
|
|
995
|
+
* On a phone the seven columns become two rows: identity and figure on the first, the discount and the
|
|
996
|
+
* action on the second. Placed explicitly rather than left to auto-flow, which dropped both of them
|
|
997
|
+
* into the first two narrow tracks on top of each other.
|
|
998
|
+
*/
|
|
999
|
+
/*
|
|
1000
|
+
* Three lines on a phone: who it is and what to do about it, then the two figures, then the discount.
|
|
1001
|
+
*
|
|
1002
|
+
* Every cell is placed explicitly rather than left to auto-flow, because the columns changed order once
|
|
1003
|
+
* already and an auto-placed grid answers that by putting a sparkline where a button used to be.
|
|
1004
|
+
*/
|
|
1005
|
+
${s.media.maxWidth("mobile")} {
|
|
1006
|
+
grid-template-columns: 24px 56px minmax(0, 1fr) auto;
|
|
1007
|
+
row-gap: 12px;
|
|
1008
|
+
|
|
1009
|
+
> *:nth-child(1) {
|
|
1010
|
+
grid-area: 1 / 1;
|
|
1011
|
+
}
|
|
1012
|
+
> *:nth-child(2) {
|
|
1013
|
+
grid-area: 1 / 2;
|
|
1014
|
+
}
|
|
1015
|
+
/* The name takes the whole of its line. Sharing it with the action left "Founders Edition" as an
|
|
1016
|
+
ellipsis and a chip, which is the one cell on the row that has to be readable. */
|
|
1017
|
+
> *:nth-child(3) {
|
|
1018
|
+
grid-area: 1 / 3 / 1 / 5;
|
|
1019
|
+
}
|
|
1020
|
+
> *:nth-child(5) {
|
|
1021
|
+
grid-area: 2 / 1 / 2 / 3;
|
|
1022
|
+
justify-self: start;
|
|
1023
|
+
}
|
|
1024
|
+
> *:nth-child(6) {
|
|
1025
|
+
grid-area: 2 / 3;
|
|
1026
|
+
justify-self: start;
|
|
1027
|
+
}
|
|
1028
|
+
> *:nth-child(8) {
|
|
1029
|
+
grid-area: 2 / 4;
|
|
1030
|
+
justify-self: end;
|
|
1031
|
+
}
|
|
1032
|
+
> *:nth-child(4) {
|
|
1033
|
+
grid-area: 3 / 1 / 3 / 5;
|
|
1034
|
+
justify-self: start;
|
|
1035
|
+
align-items: flex-start;
|
|
1036
|
+
text-align: left;
|
|
1037
|
+
}
|
|
1038
|
+
}
|
|
1039
|
+
`,Ba=c.button`
|
|
1040
|
+
position: relative;
|
|
1041
|
+
display: grid;
|
|
1042
|
+
place-items: center;
|
|
1043
|
+
width: 24px;
|
|
1044
|
+
height: 24px;
|
|
1045
|
+
padding: 0;
|
|
1046
|
+
border: 0;
|
|
1047
|
+
border-radius: ${s.radius.btn};
|
|
1048
|
+
background: none;
|
|
1049
|
+
cursor: pointer;
|
|
1050
|
+
color: ${s.colors.gray4};
|
|
1051
|
+
|
|
1052
|
+
&:hover {
|
|
1053
|
+
background: ${s.colors.glassFaint};
|
|
1054
|
+
color: ${s.colors.softWhite};
|
|
1055
|
+
}
|
|
1056
|
+
&:focus-visible {
|
|
1057
|
+
outline: 2px solid ${s.colors.navViolet};
|
|
1058
|
+
outline-offset: 2px;
|
|
1059
|
+
}
|
|
1060
|
+
|
|
1061
|
+
/* A finger needs more than the 24px the glyph occupies, and the row has that much clear space around it. */
|
|
1062
|
+
&::after {
|
|
1063
|
+
content: '';
|
|
1064
|
+
position: absolute;
|
|
1065
|
+
inset: -10px;
|
|
1066
|
+
}
|
|
1067
|
+
|
|
1068
|
+
.ico {
|
|
1069
|
+
width: 16px;
|
|
1070
|
+
height: 16px;
|
|
1071
|
+
transition: transform 0.18s ease;
|
|
1072
|
+
}
|
|
1073
|
+
&[aria-expanded='true'] .ico {
|
|
1074
|
+
transform: rotate(180deg);
|
|
1075
|
+
}
|
|
1076
|
+
|
|
1077
|
+
@media (prefers-reduced-motion: reduce) {
|
|
1078
|
+
.ico {
|
|
1079
|
+
transition: none;
|
|
1080
|
+
}
|
|
1081
|
+
}
|
|
1082
|
+
`,qa=c.span`
|
|
1083
|
+
width: 56px;
|
|
1084
|
+
height: 56px;
|
|
1085
|
+
border-radius: ${s.radius.btn};
|
|
1086
|
+
overflow: hidden;
|
|
1087
|
+
background: ${s.colors.overlayLight};
|
|
1088
|
+
`,Ha=c.span`
|
|
1089
|
+
flex: none;
|
|
1090
|
+
display: inline-flex;
|
|
1091
|
+
align-items: center;
|
|
1092
|
+
font-family: ${s.font.sans};
|
|
1093
|
+
font-size: 10px;
|
|
1094
|
+
font-weight: 700;
|
|
1095
|
+
letter-spacing: 0.06em;
|
|
1096
|
+
text-transform: uppercase;
|
|
1097
|
+
padding: 3px 7px;
|
|
1098
|
+
border-radius: ${s.radius.pill};
|
|
1099
|
+
color: ${s.colors.gray4};
|
|
1100
|
+
background: ${s.colors.glassFaint};
|
|
1101
|
+
`,Ka=c.span`
|
|
1102
|
+
display: flex;
|
|
1103
|
+
align-items: center;
|
|
1104
|
+
flex-wrap: wrap;
|
|
1105
|
+
gap: 4px 8px;
|
|
1106
|
+
min-width: 0;
|
|
1107
|
+
|
|
1108
|
+
/*
|
|
1109
|
+
* The chip yields before the name does, which is the opposite of what it used to do.
|
|
1110
|
+
*
|
|
1111
|
+
* With a wide name column the name could ellipsise and keep "sold out" beside it. The columns are even
|
|
1112
|
+
* now, so that column is 176px, and yielding the name first left "Founders Ed…" next to a chip: the row
|
|
1113
|
+
* lost the one thing it has to say to save the one thing that repeats on every sold-out row.
|
|
1114
|
+
*/
|
|
1115
|
+
a {
|
|
1116
|
+
min-width: 0;
|
|
1117
|
+
flex: 0 1 auto;
|
|
1118
|
+
}
|
|
1119
|
+
`,Ya=c.span`
|
|
1120
|
+
min-width: 0;
|
|
1121
|
+
|
|
1122
|
+
a {
|
|
1123
|
+
display: block;
|
|
1124
|
+
color: inherit;
|
|
1125
|
+
text-decoration: none;
|
|
1126
|
+
font-family: ${s.font.sans};
|
|
1127
|
+
font-size: 14px;
|
|
1128
|
+
font-weight: 600;
|
|
1129
|
+
overflow: hidden;
|
|
1130
|
+
text-overflow: ellipsis;
|
|
1131
|
+
white-space: nowrap;
|
|
1132
|
+
}
|
|
1133
|
+
a:hover,
|
|
1134
|
+
a:focus-visible {
|
|
1135
|
+
text-decoration: underline;
|
|
1136
|
+
}
|
|
1137
|
+
`,Ga=c.span`
|
|
1138
|
+
display: block;
|
|
1139
|
+
font-family: ${s.font.sans};
|
|
1140
|
+
font-size: 12px;
|
|
1141
|
+
color: ${s.colors.gray4};
|
|
1142
|
+
overflow: hidden;
|
|
1143
|
+
text-overflow: ellipsis;
|
|
1144
|
+
white-space: nowrap;
|
|
1145
|
+
`;c.span`
|
|
1146
|
+
font-family: ${s.font.sans};
|
|
1147
|
+
font-size: 15px;
|
|
1148
|
+
font-weight: 700;
|
|
1149
|
+
font-variant-numeric: tabular-nums;
|
|
1150
|
+
text-align: right;
|
|
1151
|
+
|
|
1152
|
+
small {
|
|
1153
|
+
display: block;
|
|
1154
|
+
font-size: 11px;
|
|
1155
|
+
font-weight: 500;
|
|
1156
|
+
color: ${s.colors.gray4};
|
|
1157
|
+
text-transform: uppercase;
|
|
1158
|
+
letter-spacing: 0.04em;
|
|
1159
|
+
}
|
|
1160
|
+
|
|
1161
|
+
${s.media.maxWidth("mobile")} {
|
|
1162
|
+
display: none;
|
|
1163
|
+
}
|
|
1164
|
+
`;const Va=c.span`
|
|
1165
|
+
min-width: 0;
|
|
1166
|
+
|
|
1167
|
+
${s.media.maxWidth("mobile")} {
|
|
1168
|
+
display: none;
|
|
1169
|
+
}
|
|
1170
|
+
`,ns=c.svg`
|
|
1171
|
+
display: block;
|
|
1172
|
+
width: 100%;
|
|
1173
|
+
height: 34px;
|
|
1174
|
+
`,Qa=c.div`
|
|
1175
|
+
/* A shade deeper than the row it belongs to, not lighter. The rows carry their own dark fill now, and a
|
|
1176
|
+
translucent white panel between them read as a different surface breaking the run in half. */
|
|
1177
|
+
background: ${s.colors.overlayStrong};
|
|
1178
|
+
padding: 4px 24px 10px 48px;
|
|
1179
|
+
|
|
1180
|
+
${s.media.maxWidth("mobile")} {
|
|
1181
|
+
padding-left: 32px;
|
|
1182
|
+
}
|
|
1183
|
+
`,Xa=c.div`
|
|
1184
|
+
display: flex;
|
|
1185
|
+
flex-wrap: wrap;
|
|
1186
|
+
gap: 8px 26px;
|
|
1187
|
+
padding: 12px 0 13px;
|
|
1188
|
+
border-bottom: 1px solid ${s.colors.cardLine};
|
|
1189
|
+
|
|
1190
|
+
span {
|
|
1191
|
+
display: flex;
|
|
1192
|
+
align-items: baseline;
|
|
1193
|
+
gap: 6px;
|
|
1194
|
+
font-family: ${s.font.sans};
|
|
1195
|
+
font-size: 11px;
|
|
1196
|
+
font-weight: 600;
|
|
1197
|
+
letter-spacing: 0.04em;
|
|
1198
|
+
text-transform: uppercase;
|
|
1199
|
+
color: ${s.colors.gray4};
|
|
1200
|
+
}
|
|
1201
|
+
b {
|
|
1202
|
+
/* The currency mark is its own inline-flex element, so the figure needs a row of its own or the two
|
|
1203
|
+
break onto separate lines. */
|
|
1204
|
+
display: inline-flex;
|
|
1205
|
+
align-items: center;
|
|
1206
|
+
gap: 3px;
|
|
1207
|
+
white-space: nowrap;
|
|
1208
|
+
font-size: 15px;
|
|
1209
|
+
font-weight: 700;
|
|
1210
|
+
letter-spacing: 0;
|
|
1211
|
+
text-transform: none;
|
|
1212
|
+
color: ${s.colors.softWhite};
|
|
1213
|
+
font-variant-numeric: tabular-nums;
|
|
1214
|
+
}
|
|
1215
|
+
`,Za=c.div`
|
|
1216
|
+
display: grid;
|
|
1217
|
+
/* The stock track is fixed rather than max-content: each row is its own grid, so a content-sized last
|
|
1218
|
+
track let every row measure itself and none of them lined up. 124px clears the widest figure the page
|
|
1219
|
+
renders (105px) with room to spare, without leaving a hand's width between the bar and the number. */
|
|
1220
|
+
grid-template-columns: 40px minmax(0, 1fr) 72px 64px 152px 124px;
|
|
1221
|
+
align-items: center;
|
|
1222
|
+
gap: 22px;
|
|
1223
|
+
padding: 13px 0;
|
|
1224
|
+
|
|
1225
|
+
> *:last-child {
|
|
1226
|
+
justify-self: end;
|
|
1227
|
+
}
|
|
1228
|
+
|
|
1229
|
+
& + & {
|
|
1230
|
+
border-top: 1px solid ${s.colors.cardLine};
|
|
1231
|
+
}
|
|
1232
|
+
|
|
1233
|
+
/*
|
|
1234
|
+
* Two lines on a phone: the item, then its figures under the name.
|
|
1235
|
+
*
|
|
1236
|
+
* Placed explicitly. With three tracks and six cells the browser auto-flowed the stock figure into the
|
|
1237
|
+
* 40px thumbnail track on the second row, where justify-self: end right-aligned 105px of text inside
|
|
1238
|
+
* 40px of column and pushed its left edge a pixel off the card.
|
|
1239
|
+
*/
|
|
1240
|
+
${s.media.maxWidth("mobile")} {
|
|
1241
|
+
grid-template-columns: 40px minmax(0, 1fr) auto;
|
|
1242
|
+
column-gap: 12px;
|
|
1243
|
+
row-gap: 8px;
|
|
1244
|
+
|
|
1245
|
+
> *:nth-child(3) {
|
|
1246
|
+
grid-area: 2 / 2;
|
|
1247
|
+
justify-self: start;
|
|
1248
|
+
}
|
|
1249
|
+
> *:last-child {
|
|
1250
|
+
grid-area: 2 / 3;
|
|
1251
|
+
justify-self: end;
|
|
1252
|
+
}
|
|
1253
|
+
}
|
|
1254
|
+
`,Ja=c.span`
|
|
1255
|
+
display: block;
|
|
1256
|
+
width: 40px;
|
|
1257
|
+
height: 40px;
|
|
1258
|
+
border-radius: ${s.radius.btn};
|
|
1259
|
+
overflow: hidden;
|
|
1260
|
+
/* The rarity wash is a gradient of ALPHAS, drawn for a white card. Composited over a dark panel instead
|
|
1261
|
+
it turns muddy, so the base it was measured against is put back under it. */
|
|
1262
|
+
background-color: ${s.colors.white};
|
|
1263
|
+
|
|
1264
|
+
img {
|
|
1265
|
+
width: 100%;
|
|
1266
|
+
height: 100%;
|
|
1267
|
+
object-fit: contain;
|
|
1268
|
+
}
|
|
1269
|
+
`,ei=c.span`
|
|
1270
|
+
min-width: 0;
|
|
1271
|
+
display: flex;
|
|
1272
|
+
flex-direction: column;
|
|
1273
|
+
gap: 2px;
|
|
1274
|
+
`,ti=c.span`
|
|
1275
|
+
display: flex;
|
|
1276
|
+
flex-wrap: wrap;
|
|
1277
|
+
align-items: center;
|
|
1278
|
+
gap: 6px;
|
|
1279
|
+
min-width: 0;
|
|
1280
|
+
`,ni=c.button`
|
|
1281
|
+
flex: none;
|
|
1282
|
+
margin: -8px 0;
|
|
1283
|
+
padding: 8px 4px;
|
|
1284
|
+
border: 0;
|
|
1285
|
+
background: none;
|
|
1286
|
+
color: ${s.colors.white};
|
|
1287
|
+
font-family: ${s.font.sans};
|
|
1288
|
+
font-size: 11px;
|
|
1289
|
+
font-weight: 600;
|
|
1290
|
+
letter-spacing: 0.04em;
|
|
1291
|
+
text-transform: uppercase;
|
|
1292
|
+
text-decoration: underline;
|
|
1293
|
+
cursor: pointer;
|
|
1294
|
+
|
|
1295
|
+
&:hover {
|
|
1296
|
+
color: ${s.colors.navViolet};
|
|
1297
|
+
}
|
|
1298
|
+
|
|
1299
|
+
&:focus-visible {
|
|
1300
|
+
outline: 2px solid currentColor;
|
|
1301
|
+
outline-offset: -2px;
|
|
1302
|
+
border-radius: 4px;
|
|
1303
|
+
}
|
|
1304
|
+
`,si=c.span`
|
|
1305
|
+
flex: none;
|
|
1306
|
+
display: inline-flex;
|
|
1307
|
+
align-items: center;
|
|
1308
|
+
height: 15px;
|
|
1309
|
+
padding: 0 6px;
|
|
1310
|
+
border-radius: 5px;
|
|
1311
|
+
font-family: ${s.font.sans};
|
|
1312
|
+
font-size: 9px;
|
|
1313
|
+
font-weight: 700;
|
|
1314
|
+
letter-spacing: 0.02em;
|
|
1315
|
+
text-transform: uppercase;
|
|
1316
|
+
color: ${s.colors.softWhite};
|
|
1317
|
+
`,oi=c(qe)`
|
|
1318
|
+
font-family: ${s.font.sans};
|
|
1319
|
+
font-size: 13px;
|
|
1320
|
+
color: inherit;
|
|
1321
|
+
text-decoration: none;
|
|
1322
|
+
overflow: hidden;
|
|
1323
|
+
text-overflow: ellipsis;
|
|
1324
|
+
white-space: nowrap;
|
|
1325
|
+
|
|
1326
|
+
&:hover,
|
|
1327
|
+
&:focus-visible {
|
|
1328
|
+
text-decoration: underline;
|
|
1329
|
+
}
|
|
1330
|
+
`,ri=c.span`
|
|
1331
|
+
font-family: ${s.font.sans};
|
|
1332
|
+
font-size: 13px;
|
|
1333
|
+
white-space: nowrap;
|
|
1334
|
+
font-weight: 600;
|
|
1335
|
+
font-variant-numeric: tabular-nums;
|
|
1336
|
+
text-align: right;
|
|
1337
|
+
color: ${s.colors.softWhite};
|
|
1338
|
+
|
|
1339
|
+
small {
|
|
1340
|
+
color: ${s.colors.gray4};
|
|
1341
|
+
font-weight: 500;
|
|
1342
|
+
}
|
|
1343
|
+
|
|
1344
|
+
${s.media.maxWidth("mobile")} {
|
|
1345
|
+
text-align: left;
|
|
1346
|
+
}
|
|
1347
|
+
`,ai=c.span`
|
|
1348
|
+
display: block;
|
|
1349
|
+
width: 96px;
|
|
1350
|
+
height: 6px;
|
|
1351
|
+
border-radius: 100px;
|
|
1352
|
+
/* White, not the near-black this started as: the track was a 10% dark fill chosen for a white card, and
|
|
1353
|
+
on the row's own dark surface it was the same colour as the row. */
|
|
1354
|
+
background: rgba(255, 255, 255, 0.1);
|
|
1355
|
+
overflow: hidden;
|
|
1356
|
+
/* Pushed to the end of its track, so it sits with the stock figure it measures rather than crowding the
|
|
1357
|
+
saves count next to it. */
|
|
1358
|
+
margin-left: auto;
|
|
1359
|
+
|
|
1360
|
+
i {
|
|
1361
|
+
display: block;
|
|
1362
|
+
height: 6px;
|
|
1363
|
+
border-radius: 100px;
|
|
1364
|
+
background: ${s.colors.navViolet};
|
|
1365
|
+
}
|
|
1366
|
+
|
|
1367
|
+
${s.media.maxWidth("mobile")} {
|
|
1368
|
+
display: none;
|
|
1369
|
+
}
|
|
1370
|
+
`,ii=c.span`
|
|
1371
|
+
font-family: ${s.font.sans};
|
|
1372
|
+
font-size: 11px;
|
|
1373
|
+
font-weight: 600;
|
|
1374
|
+
letter-spacing: 0.04em;
|
|
1375
|
+
text-transform: uppercase;
|
|
1376
|
+
white-space: nowrap;
|
|
1377
|
+
color: ${s.colors.gray4};
|
|
1378
|
+
|
|
1379
|
+
&[data-state='soldout'] {
|
|
1380
|
+
color: ${s.colors.navViolet};
|
|
1381
|
+
}
|
|
1382
|
+
/* A listed item shows its price rather than a label, so it takes the ink prices take. */
|
|
1383
|
+
&[data-state='classic'],
|
|
1384
|
+
&[data-state='discounted'] {
|
|
1385
|
+
display: inline-flex;
|
|
1386
|
+
align-items: center;
|
|
1387
|
+
gap: 2px;
|
|
1388
|
+
font-size: 12px;
|
|
1389
|
+
letter-spacing: 0;
|
|
1390
|
+
text-transform: none;
|
|
1391
|
+
color: ${s.colors.softWhite};
|
|
1392
|
+
}
|
|
1393
|
+
`,li=c.span`
|
|
1394
|
+
display: flex;
|
|
1395
|
+
flex-direction: column;
|
|
1396
|
+
align-items: flex-end;
|
|
1397
|
+
gap: 4px;
|
|
1398
|
+
line-height: 1.25;
|
|
1399
|
+
`,ci=c.span`
|
|
1400
|
+
font-size: 10px;
|
|
1401
|
+
font-weight: 600;
|
|
1402
|
+
letter-spacing: 0.04em;
|
|
1403
|
+
text-transform: uppercase;
|
|
1404
|
+
color: ${s.colors.gray4};
|
|
1405
|
+
margin-right: 4px;
|
|
1406
|
+
`,di=c.span`
|
|
1407
|
+
font-family: ${s.font.sans};
|
|
1408
|
+
font-size: 10px;
|
|
1409
|
+
opacity: 0.85;
|
|
1410
|
+
font-weight: 600;
|
|
1411
|
+
letter-spacing: 0.03em;
|
|
1412
|
+
text-transform: uppercase;
|
|
1413
|
+
white-space: nowrap;
|
|
1414
|
+
color: ${s.colors.gray4};
|
|
1415
|
+
`,hi=c.span`
|
|
1416
|
+
font-family: ${s.font.sans};
|
|
1417
|
+
font-size: 11px;
|
|
1418
|
+
font-weight: 600;
|
|
1419
|
+
letter-spacing: 0.04em;
|
|
1420
|
+
text-transform: uppercase;
|
|
1421
|
+
white-space: nowrap;
|
|
1422
|
+
text-align: right;
|
|
1423
|
+
color: ${s.colors.gray4};
|
|
1424
|
+
font-variant-numeric: tabular-nums;
|
|
1425
|
+
|
|
1426
|
+
b {
|
|
1427
|
+
color: ${s.colors.softWhite};
|
|
1428
|
+
font-weight: 700;
|
|
1429
|
+
}
|
|
1430
|
+
&[data-out='true'] {
|
|
1431
|
+
color: ${s.colors.navViolet};
|
|
1432
|
+
}
|
|
1433
|
+
`;c.div`
|
|
1434
|
+
display: grid;
|
|
1435
|
+
grid-template-columns: 3px minmax(0, 1fr) auto;
|
|
1436
|
+
gap: 12px;
|
|
1437
|
+
align-items: center;
|
|
1438
|
+
padding: 13px 18px;
|
|
1439
|
+
border-top: 1px solid ${s.colors.cardLine};
|
|
1440
|
+
`;c.span`
|
|
1441
|
+
align-self: stretch;
|
|
1442
|
+
border-radius: 2px;
|
|
1443
|
+
background: ${s.colors.cardLine};
|
|
1444
|
+
|
|
1445
|
+
&[data-sev='act'] {
|
|
1446
|
+
background: ${s.colors.dclRed};
|
|
1447
|
+
}
|
|
1448
|
+
&[data-sev='soon'] {
|
|
1449
|
+
background: ${s.colors.flareAmber};
|
|
1450
|
+
}
|
|
1451
|
+
`;const ss=c.button`
|
|
1452
|
+
display: inline-grid;
|
|
1453
|
+
place-items: center;
|
|
1454
|
+
width: 16px;
|
|
1455
|
+
height: 16px;
|
|
1456
|
+
margin-left: 5px;
|
|
1457
|
+
padding: 0;
|
|
1458
|
+
border: 0;
|
|
1459
|
+
background: none;
|
|
1460
|
+
cursor: help;
|
|
1461
|
+
color: ${s.colors.gray4};
|
|
1462
|
+
|
|
1463
|
+
&:hover,
|
|
1464
|
+
&:focus-visible {
|
|
1465
|
+
color: ${s.colors.softWhite};
|
|
1466
|
+
}
|
|
1467
|
+
.ico {
|
|
1468
|
+
width: 14px;
|
|
1469
|
+
height: 14px;
|
|
1470
|
+
}
|
|
1471
|
+
`;c.span`
|
|
1472
|
+
b {
|
|
1473
|
+
display: flex;
|
|
1474
|
+
align-items: center;
|
|
1475
|
+
font-family: ${s.font.sans};
|
|
1476
|
+
font-size: 13px;
|
|
1477
|
+
font-weight: 600;
|
|
1478
|
+
}
|
|
1479
|
+
span {
|
|
1480
|
+
display: block;
|
|
1481
|
+
margin-top: 2px;
|
|
1482
|
+
font-family: ${s.font.sans};
|
|
1483
|
+
font-size: 12px;
|
|
1484
|
+
color: ${s.colors.gray4};
|
|
1485
|
+
}
|
|
1486
|
+
`;c(qe)`
|
|
1487
|
+
display: inline-block;
|
|
1488
|
+
margin-top: 4px;
|
|
1489
|
+
font-family: ${s.font.sans};
|
|
1490
|
+
font-size: 12px;
|
|
1491
|
+
font-weight: 600;
|
|
1492
|
+
color: ${s.colors.navViolet};
|
|
1493
|
+
text-decoration: none;
|
|
1494
|
+
|
|
1495
|
+
&:hover,
|
|
1496
|
+
&:focus-visible {
|
|
1497
|
+
text-decoration: underline;
|
|
1498
|
+
}
|
|
1499
|
+
`;c.span`
|
|
1500
|
+
font-family: ${s.font.sans};
|
|
1501
|
+
font-size: 18px;
|
|
1502
|
+
font-weight: 700;
|
|
1503
|
+
font-variant-numeric: tabular-nums;
|
|
1504
|
+
`;const lt=c.div`
|
|
1505
|
+
overflow-x: auto;
|
|
1506
|
+
`,bt=c.table`
|
|
1507
|
+
width: 100%;
|
|
1508
|
+
/* Fixed, so a page of short names and one of long ones lay their columns out identically — the widths
|
|
1509
|
+
come from the header row rather than from whatever this page happens to hold. */
|
|
1510
|
+
table-layout: fixed;
|
|
1511
|
+
|
|
1512
|
+
thead th:nth-of-type(1) {
|
|
1513
|
+
width: 36%;
|
|
1514
|
+
}
|
|
1515
|
+
thead th:nth-of-type(2) {
|
|
1516
|
+
width: 24%;
|
|
1517
|
+
}
|
|
1518
|
+
thead th:nth-of-type(3) {
|
|
1519
|
+
width: 120px;
|
|
1520
|
+
}
|
|
1521
|
+
thead th:nth-of-type(4) {
|
|
1522
|
+
width: 14%;
|
|
1523
|
+
}
|
|
1524
|
+
thead th:nth-of-type(5) {
|
|
1525
|
+
width: 110px;
|
|
1526
|
+
}
|
|
1527
|
+
tbody td {
|
|
1528
|
+
overflow: hidden;
|
|
1529
|
+
text-overflow: ellipsis;
|
|
1530
|
+
}
|
|
1531
|
+
font-family: ${s.font.sans};
|
|
1532
|
+
font-size: 13px;
|
|
1533
|
+
min-width: 520px;
|
|
1534
|
+
|
|
1535
|
+
/* The same band and the same separated rows the collections table wears, so the three tables on this
|
|
1536
|
+
page read as siblings rather than as one design and two others. The 2px gap is a transparent border
|
|
1537
|
+
over a clipped background, which is how a table draws the design's gaps without losing its columns. */
|
|
1538
|
+
border-collapse: separate;
|
|
1539
|
+
border-spacing: 0;
|
|
1540
|
+
|
|
1541
|
+
thead th {
|
|
1542
|
+
text-align: left;
|
|
1543
|
+
padding: 12px 18px;
|
|
1544
|
+
background: ${s.colors.overlayStrong};
|
|
1545
|
+
font-size: 14px;
|
|
1546
|
+
font-weight: 400;
|
|
1547
|
+
color: ${s.colors.softWhite};
|
|
1548
|
+
white-space: nowrap;
|
|
1549
|
+
}
|
|
1550
|
+
thead th:first-of-type {
|
|
1551
|
+
border-radius: ${s.radius.card} 0 0 0;
|
|
1552
|
+
}
|
|
1553
|
+
thead th:last-of-type {
|
|
1554
|
+
border-radius: 0 ${s.radius.card} 0 0;
|
|
1555
|
+
}
|
|
1556
|
+
tbody td {
|
|
1557
|
+
padding: 12px 18px;
|
|
1558
|
+
background: ${s.colors.overlay};
|
|
1559
|
+
border-top: 2px solid transparent;
|
|
1560
|
+
background-clip: padding-box;
|
|
1561
|
+
vertical-align: middle;
|
|
1562
|
+
}
|
|
1563
|
+
tbody tr:last-of-type td:first-of-type {
|
|
1564
|
+
border-radius: 0 0 0 ${s.radius.card};
|
|
1565
|
+
}
|
|
1566
|
+
tbody tr:last-of-type td:last-of-type {
|
|
1567
|
+
border-radius: 0 0 ${s.radius.card} 0;
|
|
1568
|
+
}
|
|
1569
|
+
tbody tr:hover td {
|
|
1570
|
+
background: ${s.colors.overlayHover};
|
|
1571
|
+
}
|
|
1572
|
+
td[data-money] {
|
|
1573
|
+
text-align: right;
|
|
1574
|
+
font-weight: 700;
|
|
1575
|
+
font-variant-numeric: tabular-nums;
|
|
1576
|
+
white-space: nowrap;
|
|
1577
|
+
}
|
|
1578
|
+
td[data-dim] {
|
|
1579
|
+
color: ${s.colors.gray4};
|
|
1580
|
+
font-variant-numeric: tabular-nums;
|
|
1581
|
+
white-space: nowrap;
|
|
1582
|
+
}
|
|
1583
|
+
`,os=c.span`
|
|
1584
|
+
display: flex;
|
|
1585
|
+
align-items: center;
|
|
1586
|
+
gap: 10px;
|
|
1587
|
+
min-width: 0;
|
|
1588
|
+
color: inherit;
|
|
1589
|
+
text-decoration: none;
|
|
1590
|
+
|
|
1591
|
+
span {
|
|
1592
|
+
overflow: hidden;
|
|
1593
|
+
text-overflow: ellipsis;
|
|
1594
|
+
white-space: nowrap;
|
|
1595
|
+
}
|
|
1596
|
+
&:hover span,
|
|
1597
|
+
&:focus-visible span {
|
|
1598
|
+
text-decoration: underline;
|
|
1599
|
+
}
|
|
1600
|
+
`,rs=c.span`
|
|
1601
|
+
flex: none;
|
|
1602
|
+
display: block;
|
|
1603
|
+
width: 32px;
|
|
1604
|
+
height: 32px;
|
|
1605
|
+
border-radius: ${s.radius.chip};
|
|
1606
|
+
overflow: hidden;
|
|
1607
|
+
/* Same rarity wash, same reason it needs a white base under it — see ItemThumb. */
|
|
1608
|
+
background-color: ${s.colors.white};
|
|
1609
|
+
|
|
1610
|
+
img {
|
|
1611
|
+
width: 100%;
|
|
1612
|
+
height: 100%;
|
|
1613
|
+
object-fit: contain;
|
|
1614
|
+
}
|
|
1615
|
+
`,_t=c.a`
|
|
1616
|
+
max-width: 100%;
|
|
1617
|
+
white-space: nowrap;
|
|
1618
|
+
display: inline-flex;
|
|
1619
|
+
align-items: center;
|
|
1620
|
+
gap: 8px;
|
|
1621
|
+
color: inherit;
|
|
1622
|
+
text-decoration: none;
|
|
1623
|
+
|
|
1624
|
+
&:hover,
|
|
1625
|
+
&:focus-visible {
|
|
1626
|
+
text-decoration: underline;
|
|
1627
|
+
}
|
|
1628
|
+
`,pi=c.span`
|
|
1629
|
+
display: inline-flex;
|
|
1630
|
+
align-items: center;
|
|
1631
|
+
gap: 8px;
|
|
1632
|
+
|
|
1633
|
+
i {
|
|
1634
|
+
display: block;
|
|
1635
|
+
width: 24px;
|
|
1636
|
+
height: 24px;
|
|
1637
|
+
border-radius: 50%;
|
|
1638
|
+
background: #ededed;
|
|
1639
|
+
}
|
|
1640
|
+
b {
|
|
1641
|
+
display: block;
|
|
1642
|
+
width: 84px;
|
|
1643
|
+
height: 10px;
|
|
1644
|
+
border-radius: 100px;
|
|
1645
|
+
background: #ededed;
|
|
1646
|
+
}
|
|
1647
|
+
`,Pt=c.span`
|
|
1648
|
+
flex: none;
|
|
1649
|
+
display: block;
|
|
1650
|
+
width: 24px;
|
|
1651
|
+
height: 24px;
|
|
1652
|
+
border-radius: 50%;
|
|
1653
|
+
background-color: ${s.colors.overlayLight};
|
|
1654
|
+
background-size: cover;
|
|
1655
|
+
background-position: center top;
|
|
1656
|
+
`,ui=c.nav`
|
|
1657
|
+
display: flex;
|
|
1658
|
+
align-items: center;
|
|
1659
|
+
justify-content: flex-end;
|
|
1660
|
+
gap: 12px;
|
|
1661
|
+
font-variant-numeric: tabular-nums;
|
|
1662
|
+
|
|
1663
|
+
/* Nine controls in a phone's width: tighter, but never wrapping, which would move the arrows too. */
|
|
1664
|
+
${s.media.maxWidth("mobile")} {
|
|
1665
|
+
gap: 6px;
|
|
1666
|
+
}
|
|
1667
|
+
`,Ws=`
|
|
1668
|
+
flex: none;
|
|
1669
|
+
display: inline-flex;
|
|
1670
|
+
align-items: center;
|
|
1671
|
+
justify-content: center;
|
|
1672
|
+
width: 32px;
|
|
1673
|
+
height: 32px;
|
|
1674
|
+
padding: 0;
|
|
1675
|
+
border: 0.5px solid rgba(255, 255, 255, 0.5);
|
|
1676
|
+
border-radius: ${s.radius.btn};
|
|
1677
|
+
background: transparent;
|
|
1678
|
+
font-family: ${s.font.sans};
|
|
1679
|
+
font-size: 13px;
|
|
1680
|
+
font-weight: 600;
|
|
1681
|
+
letter-spacing: 0.46px;
|
|
1682
|
+
color: ${s.colors.softWhite};
|
|
1683
|
+
cursor: pointer;
|
|
1684
|
+
|
|
1685
|
+
&:hover:not(:disabled) {
|
|
1686
|
+
border-color: ${s.colors.softWhite};
|
|
1687
|
+
background: ${s.colors.glassFaint};
|
|
1688
|
+
}
|
|
1689
|
+
&:focus-visible {
|
|
1690
|
+
outline: 2px solid ${s.colors.softWhite};
|
|
1691
|
+
outline-offset: 2px;
|
|
1692
|
+
}
|
|
1693
|
+
&:disabled {
|
|
1694
|
+
opacity: 0.35;
|
|
1695
|
+
cursor: default;
|
|
1696
|
+
}
|
|
1697
|
+
`,as=c.button`
|
|
1698
|
+
${Ws}
|
|
1699
|
+
`,mi=c.button`
|
|
1700
|
+
${Ws}
|
|
1701
|
+
|
|
1702
|
+
/* The page you are on is the one solid control in the row, which is how the design marks it. */
|
|
1703
|
+
&[aria-current='page'] {
|
|
1704
|
+
background: ${s.colors.softWhite};
|
|
1705
|
+
border-color: ${s.colors.softWhite};
|
|
1706
|
+
color: ${s.colors.text};
|
|
1707
|
+
cursor: default;
|
|
1708
|
+
}
|
|
1709
|
+
&[aria-current='page']:hover {
|
|
1710
|
+
background: ${s.colors.softWhite};
|
|
1711
|
+
color: ${s.colors.text};
|
|
1712
|
+
}
|
|
1713
|
+
`,fi=c.span`
|
|
1714
|
+
display: inline-flex;
|
|
1715
|
+
align-items: center;
|
|
1716
|
+
justify-content: center;
|
|
1717
|
+
width: 32px;
|
|
1718
|
+
flex: none;
|
|
1719
|
+
font-family: ${s.font.sans};
|
|
1720
|
+
font-size: 12px;
|
|
1721
|
+
color: ${s.colors.gray4};
|
|
1722
|
+
`;c.span`
|
|
1723
|
+
display: inline-flex;
|
|
1724
|
+
align-items: center;
|
|
1725
|
+
gap: 2px;
|
|
1726
|
+
`;const xi=c.span`
|
|
1727
|
+
font-size: 11px;
|
|
1728
|
+
font-weight: 700;
|
|
1729
|
+
letter-spacing: 0.04em;
|
|
1730
|
+
text-transform: uppercase;
|
|
1731
|
+
border-radius: ${s.radius.chip};
|
|
1732
|
+
padding: 2px 7px;
|
|
1733
|
+
white-space: nowrap;
|
|
1734
|
+
color: ${s.colors.gray4};
|
|
1735
|
+
background: ${s.colors.overlayLight};
|
|
1736
|
+
|
|
1737
|
+
&[data-kind='mint'] {
|
|
1738
|
+
color: ${s.colors.navViolet};
|
|
1739
|
+
background: rgba(105, 31, 169, 0.1);
|
|
1740
|
+
}
|
|
1741
|
+
`;c.img`
|
|
1742
|
+
width: 1em;
|
|
1743
|
+
height: 1em;
|
|
1744
|
+
vertical-align: -0.125em;
|
|
1745
|
+
margin-right: 3px;
|
|
1746
|
+
`;const gi=c.button`
|
|
1747
|
+
display: block;
|
|
1748
|
+
width: 100%;
|
|
1749
|
+
padding: 13px 18px;
|
|
1750
|
+
border: 0;
|
|
1751
|
+
border-top: 1px solid ${s.colors.cardLine};
|
|
1752
|
+
background: none;
|
|
1753
|
+
cursor: pointer;
|
|
1754
|
+
font-family: ${s.font.sans};
|
|
1755
|
+
font-size: 13px;
|
|
1756
|
+
font-weight: 600;
|
|
1757
|
+
color: ${s.colors.navViolet};
|
|
1758
|
+
|
|
1759
|
+
&:hover {
|
|
1760
|
+
background: ${s.colors.glassFaint};
|
|
1761
|
+
}
|
|
1762
|
+
&:focus-visible {
|
|
1763
|
+
outline: 2px solid ${s.colors.navViolet};
|
|
1764
|
+
outline-offset: -2px;
|
|
1765
|
+
}
|
|
1766
|
+
`;c.div`
|
|
1767
|
+
display: flex;
|
|
1768
|
+
flex-direction: column;
|
|
1769
|
+
gap: 4px;
|
|
1770
|
+
padding: 10px 18px 14px;
|
|
1771
|
+
border-top: 1px solid ${s.colors.cardLine};
|
|
1772
|
+
`;c.p`
|
|
1773
|
+
margin: 0;
|
|
1774
|
+
font-family: ${s.font.sans};
|
|
1775
|
+
font-size: 11px;
|
|
1776
|
+
line-height: 1.45;
|
|
1777
|
+
color: ${s.colors.muted2};
|
|
1778
|
+
`;const _s=`
|
|
1779
|
+
background: linear-gradient(100deg, var(--skeleton-lo) 30%, var(--skeleton-hi) 50%, var(--skeleton-lo) 70%);
|
|
1780
|
+
background-size: 200% 100%;
|
|
1781
|
+
animation: shimmer 1.3s infinite linear;
|
|
1782
|
+
|
|
1783
|
+
@media (prefers-reduced-motion: reduce) {
|
|
1784
|
+
animation: none;
|
|
1785
|
+
}
|
|
1786
|
+
`,P=c.span`
|
|
1787
|
+
display: block;
|
|
1788
|
+
height: 12px;
|
|
1789
|
+
border-radius: 100px;
|
|
1790
|
+
${_s}
|
|
1791
|
+
`,yi=c.span`
|
|
1792
|
+
display: block;
|
|
1793
|
+
width: 40px;
|
|
1794
|
+
height: 40px;
|
|
1795
|
+
border-radius: ${s.radius.btn};
|
|
1796
|
+
${_s}
|
|
1797
|
+
`,is=c.div`
|
|
1798
|
+
display: grid;
|
|
1799
|
+
grid-template-columns: minmax(0, 1fr) minmax(0, 0.7fr) 100px minmax(0, 0.5fr) 70px;
|
|
1800
|
+
align-items: center;
|
|
1801
|
+
gap: 12px;
|
|
1802
|
+
padding: 0 18px 10px;
|
|
1803
|
+
|
|
1804
|
+
> *:last-child {
|
|
1805
|
+
justify-self: end;
|
|
1806
|
+
}
|
|
1807
|
+
background: ${s.colors.overlayStrong};
|
|
1808
|
+
border-radius: ${s.radius.card} ${s.radius.card} 0 0;
|
|
1809
|
+
`,ls=c.div`
|
|
1810
|
+
display: grid;
|
|
1811
|
+
grid-template-columns: minmax(0, 1fr) minmax(0, 0.7fr) 100px minmax(0, 0.5fr) 70px;
|
|
1812
|
+
align-items: center;
|
|
1813
|
+
gap: 12px;
|
|
1814
|
+
height: 57px;
|
|
1815
|
+
padding: 0 18px;
|
|
1816
|
+
background: ${s.colors.overlay};
|
|
1817
|
+
border-top: 2px solid transparent;
|
|
1818
|
+
background-clip: padding-box;
|
|
1819
|
+
|
|
1820
|
+
> *:last-child {
|
|
1821
|
+
justify-self: end;
|
|
1822
|
+
}
|
|
1823
|
+
`,Ae=c.p`
|
|
1824
|
+
margin: 0;
|
|
1825
|
+
font-family: ${s.font.sans};
|
|
1826
|
+
font-size: 13px;
|
|
1827
|
+
color: ${s.colors.gray4};
|
|
1828
|
+
`,bi=c(ie)`
|
|
1829
|
+
width: 16px;
|
|
1830
|
+
height: 16px;
|
|
1831
|
+
`,Et=c.span`
|
|
1832
|
+
display: inline-flex;
|
|
1833
|
+
align-items: center;
|
|
1834
|
+
gap: 4px;
|
|
1835
|
+
font-family: ${s.font.sans};
|
|
1836
|
+
font-size: 12px;
|
|
1837
|
+
font-weight: 600;
|
|
1838
|
+
line-height: 1.3;
|
|
1839
|
+
flex-wrap: wrap;
|
|
1840
|
+
color: ${s.colors.gray4};
|
|
1841
|
+
|
|
1842
|
+
&[data-dir='up'] {
|
|
1843
|
+
color: ${s.colors.successBorder};
|
|
1844
|
+
}
|
|
1845
|
+
&[data-dir='down'] {
|
|
1846
|
+
color: #ff6b6b;
|
|
1847
|
+
}
|
|
1848
|
+
|
|
1849
|
+
/* Grey whichever way the figure went: it is the label, not the reading. */
|
|
1850
|
+
.delta__against {
|
|
1851
|
+
font-size: 10px;
|
|
1852
|
+
font-weight: 400;
|
|
1853
|
+
color: ${s.colors.gray4};
|
|
1854
|
+
}
|
|
1855
|
+
.delta__arrow {
|
|
1856
|
+
font-size: 10px;
|
|
1857
|
+
line-height: 1;
|
|
1858
|
+
}
|
|
1859
|
+
`,wi=c.div`
|
|
1860
|
+
margin: 10px 0 -4px;
|
|
1861
|
+
`,Si=c.h2`
|
|
1862
|
+
margin: 0;
|
|
1863
|
+
font-family: ${s.font.sans};
|
|
1864
|
+
font-size: 19px;
|
|
1865
|
+
font-weight: 700;
|
|
1866
|
+
letter-spacing: -0.01em;
|
|
1867
|
+
color: ${s.colors.softWhite};
|
|
1868
|
+
`,ji=c.p`
|
|
1869
|
+
margin: 4px 0 0;
|
|
1870
|
+
font-family: ${s.font.sans};
|
|
1871
|
+
font-size: 13px;
|
|
1872
|
+
color: rgba(252, 252, 252, 0.62);
|
|
1873
|
+
`,ki=c.div`
|
|
1874
|
+
display: grid;
|
|
1875
|
+
grid-template-columns: repeat(auto-fit, minmax(210px, 300px));
|
|
1876
|
+
gap: 14px;
|
|
1877
|
+
align-items: start;
|
|
1878
|
+
|
|
1879
|
+
${s.media.maxWidth("mobile")} {
|
|
1880
|
+
grid-template-columns: minmax(0, 1fr);
|
|
1881
|
+
}
|
|
1882
|
+
`,$i=c(bt)`
|
|
1883
|
+
thead th:nth-of-type(1) {
|
|
1884
|
+
width: 40%;
|
|
1885
|
+
}
|
|
1886
|
+
thead th:nth-of-type(2) {
|
|
1887
|
+
width: 16%;
|
|
1888
|
+
}
|
|
1889
|
+
thead th:nth-of-type(3) {
|
|
1890
|
+
width: 20%;
|
|
1891
|
+
}
|
|
1892
|
+
thead th:nth-of-type(4) {
|
|
1893
|
+
width: 12%;
|
|
1894
|
+
}
|
|
1895
|
+
thead th:nth-of-type(5) {
|
|
1896
|
+
width: 12%;
|
|
1897
|
+
}
|
|
1898
|
+
`,vi=c(bt)`
|
|
1899
|
+
thead th:nth-of-type(1) {
|
|
1900
|
+
width: 30%;
|
|
1901
|
+
}
|
|
1902
|
+
thead th:nth-of-type(2) {
|
|
1903
|
+
width: 10%;
|
|
1904
|
+
}
|
|
1905
|
+
thead th:nth-of-type(3) {
|
|
1906
|
+
width: 14%;
|
|
1907
|
+
}
|
|
1908
|
+
thead th:nth-of-type(4) {
|
|
1909
|
+
width: 16%;
|
|
1910
|
+
}
|
|
1911
|
+
thead th:nth-of-type(5) {
|
|
1912
|
+
width: 14%;
|
|
1913
|
+
}
|
|
1914
|
+
thead th:nth-of-type(6) {
|
|
1915
|
+
width: 16%;
|
|
1916
|
+
}
|
|
1917
|
+
`;c.div`
|
|
1918
|
+
display: grid;
|
|
1919
|
+
grid-template-columns: minmax(0, 1.55fr) minmax(0, 1fr);
|
|
1920
|
+
gap: 14px;
|
|
1921
|
+
align-items: start;
|
|
1922
|
+
|
|
1923
|
+
${s.media.maxWidth("lg")} {
|
|
1924
|
+
grid-template-columns: minmax(0, 1fr);
|
|
1925
|
+
}
|
|
1926
|
+
`;c.div`
|
|
1927
|
+
display: flex;
|
|
1928
|
+
flex-direction: column;
|
|
1929
|
+
gap: 14px;
|
|
1930
|
+
`;const ct=c.span`
|
|
1931
|
+
display: inline-flex;
|
|
1932
|
+
align-items: center;
|
|
1933
|
+
justify-content: flex-end;
|
|
1934
|
+
|
|
1935
|
+
[data-kind] img,
|
|
1936
|
+
[data-kind] .ico {
|
|
1937
|
+
vertical-align: baseline;
|
|
1938
|
+
}
|
|
1939
|
+
`,Ci=c.span`
|
|
1940
|
+
font-family: ${s.font.sans};
|
|
1941
|
+
font-size: 14px;
|
|
1942
|
+
font-weight: 600;
|
|
1943
|
+
font-variant-numeric: tabular-nums;
|
|
1944
|
+
white-space: nowrap;
|
|
1945
|
+
text-align: center;
|
|
1946
|
+
|
|
1947
|
+
/* One weight and one colour, as the design draws it: the pair is a single reading ("80 of 250"), and
|
|
1948
|
+
dimming the denominator made the two halves look like different figures. */
|
|
1949
|
+
small {
|
|
1950
|
+
font-size: inherit;
|
|
1951
|
+
font-weight: inherit;
|
|
1952
|
+
}
|
|
1953
|
+
`,Mi=c.span`
|
|
1954
|
+
display: flex;
|
|
1955
|
+
flex-direction: column;
|
|
1956
|
+
align-items: center;
|
|
1957
|
+
justify-content: center;
|
|
1958
|
+
gap: 4px;
|
|
1959
|
+
min-width: 0;
|
|
1960
|
+
font-family: ${s.font.sans};
|
|
1961
|
+
font-size: 12px;
|
|
1962
|
+
color: ${s.colors.gray4};
|
|
1963
|
+
text-align: center;
|
|
1964
|
+
`,Ai=c.span`
|
|
1965
|
+
display: inline-flex;
|
|
1966
|
+
flex-wrap: wrap;
|
|
1967
|
+
justify-content: center;
|
|
1968
|
+
gap: 8px;
|
|
1969
|
+
`,Ii=c(co)`
|
|
1970
|
+
align-self: center;
|
|
1971
|
+
gap: 4px;
|
|
1972
|
+
padding: 2px 4px;
|
|
1973
|
+
border: 0;
|
|
1974
|
+
border-radius: 6px;
|
|
1975
|
+
background: ${s.colors.saleTag};
|
|
1976
|
+
line-height: 20px;
|
|
1977
|
+
|
|
1978
|
+
b,
|
|
1979
|
+
span {
|
|
1980
|
+
font-size: 14px;
|
|
1981
|
+
line-height: 20px;
|
|
1982
|
+
}
|
|
1983
|
+
`,Li=c(Ao)`
|
|
1984
|
+
align-self: center;
|
|
1985
|
+
gap: 4px;
|
|
1986
|
+
padding: 4px 8px;
|
|
1987
|
+
border-radius: 6px;
|
|
1988
|
+
background: ${s.colors.glass};
|
|
1989
|
+
color: ${s.colors.white};
|
|
1990
|
+
|
|
1991
|
+
b {
|
|
1992
|
+
color: ${s.colors.white};
|
|
1993
|
+
font-size: 12px;
|
|
1994
|
+
line-height: 16px;
|
|
1995
|
+
}
|
|
1996
|
+
`,Ti=c.span`
|
|
1997
|
+
color: ${s.colors.muted2};
|
|
1998
|
+
|
|
1999
|
+
b {
|
|
2000
|
+
font-weight: 600;
|
|
2001
|
+
}
|
|
2002
|
+
/* Whether it is selling faster carries the only colour in the cell, since it is the only judgement. */
|
|
2003
|
+
&[data-dir='up'] b {
|
|
2004
|
+
color: #2ecc71;
|
|
2005
|
+
}
|
|
2006
|
+
&[data-dir='down'] b {
|
|
2007
|
+
color: #ff6b6b;
|
|
2008
|
+
}
|
|
2009
|
+
`,Oe=c.div`
|
|
2010
|
+
display: flex;
|
|
2011
|
+
align-items: center;
|
|
2012
|
+
justify-content: space-between;
|
|
2013
|
+
gap: 12px;
|
|
2014
|
+
font-family: ${s.font.sans};
|
|
2015
|
+
font-size: 13px;
|
|
2016
|
+
color: ${s.colors.gray4};
|
|
2017
|
+
|
|
2018
|
+
${s.media.maxWidth("mobile")} {
|
|
2019
|
+
flex-direction: column;
|
|
2020
|
+
align-items: stretch;
|
|
2021
|
+
}
|
|
2022
|
+
`,Wi=c.div`
|
|
2023
|
+
display: flex;
|
|
2024
|
+
align-items: center;
|
|
2025
|
+
justify-content: space-between;
|
|
2026
|
+
gap: 12px;
|
|
2027
|
+
|
|
2028
|
+
${s.media.maxWidth("mobile")} {
|
|
2029
|
+
flex-wrap: wrap;
|
|
2030
|
+
}
|
|
2031
|
+
`,_i=c.div`
|
|
2032
|
+
display: flex;
|
|
2033
|
+
align-items: center;
|
|
2034
|
+
gap: 10px;
|
|
2035
|
+
min-width: 0;
|
|
2036
|
+
`,Pi=c(qt)`
|
|
2037
|
+
display: inline-flex;
|
|
2038
|
+
align-items: center;
|
|
2039
|
+
justify-content: center;
|
|
2040
|
+
gap: 8px;
|
|
2041
|
+
height: 36px;
|
|
2042
|
+
padding: 0 12px;
|
|
2043
|
+
border: 0.5px solid ${s.colors.white};
|
|
2044
|
+
border-radius: 12px;
|
|
2045
|
+
background: transparent;
|
|
2046
|
+
color: ${s.colors.softWhite};
|
|
2047
|
+
font-size: 13px;
|
|
2048
|
+
font-weight: 600;
|
|
2049
|
+
letter-spacing: 0.46px;
|
|
2050
|
+
text-transform: uppercase;
|
|
2051
|
+
|
|
2052
|
+
&:hover:not(:disabled) {
|
|
2053
|
+
background: ${s.colors.glassFaint};
|
|
2054
|
+
color: ${s.colors.softWhite};
|
|
2055
|
+
}
|
|
2056
|
+
`,Ei=c.span`
|
|
2057
|
+
display: inline-flex;
|
|
2058
|
+
align-items: center;
|
|
2059
|
+
justify-content: center;
|
|
2060
|
+
gap: 6px;
|
|
2061
|
+
font-family: ${s.font.sans};
|
|
2062
|
+
font-size: 14px;
|
|
2063
|
+
font-weight: 600;
|
|
2064
|
+
font-variant-numeric: tabular-nums;
|
|
2065
|
+
white-space: nowrap;
|
|
2066
|
+
`,Di=c.span`
|
|
2067
|
+
display: inline-flex;
|
|
2068
|
+
align-items: center;
|
|
2069
|
+
justify-content: flex-end;
|
|
2070
|
+
gap: 5px;
|
|
2071
|
+
font-family: ${s.font.sans};
|
|
2072
|
+
font-size: 13px;
|
|
2073
|
+
font-variant-numeric: tabular-nums;
|
|
2074
|
+
color: ${s.colors.gray4};
|
|
2075
|
+
white-space: nowrap;
|
|
2076
|
+
|
|
2077
|
+
.ico {
|
|
2078
|
+
width: 14px;
|
|
2079
|
+
height: 14px;
|
|
2080
|
+
}
|
|
2081
|
+
`,Ps=c.div`
|
|
2082
|
+
display: grid;
|
|
2083
|
+
grid-template-columns: repeat(2, minmax(0, 1fr));
|
|
2084
|
+
gap: 14px;
|
|
2085
|
+
/* Stretched rather than start-aligned: the sales rows carry a second line and the best sellers do not,
|
|
2086
|
+
so the two will never end together on their own, and two cards of different heights side by side read
|
|
2087
|
+
as one of them having failed to load. */
|
|
2088
|
+
|
|
2089
|
+
${s.media.maxWidth("lg")} {
|
|
2090
|
+
grid-template-columns: minmax(0, 1fr);
|
|
2091
|
+
}
|
|
2092
|
+
`,Dt=c.p`
|
|
2093
|
+
margin: 2px 0 0;
|
|
2094
|
+
font-family: ${s.font.sans};
|
|
2095
|
+
font-size: 13px;
|
|
2096
|
+
color: ${s.colors.gray4};
|
|
2097
|
+
`,cs=c.div`
|
|
2098
|
+
display: flex;
|
|
2099
|
+
align-items: flex-start;
|
|
2100
|
+
justify-content: space-between;
|
|
2101
|
+
gap: 12px;
|
|
2102
|
+
`,Fi=c(qe)`
|
|
2103
|
+
display: inline-flex;
|
|
2104
|
+
align-items: center;
|
|
2105
|
+
gap: 6px;
|
|
2106
|
+
flex: none;
|
|
2107
|
+
color: ${s.colors.white};
|
|
2108
|
+
font-family: ${s.font.sans};
|
|
2109
|
+
font-size: 12px;
|
|
2110
|
+
font-weight: 600;
|
|
2111
|
+
letter-spacing: 0.04em;
|
|
2112
|
+
text-transform: uppercase;
|
|
2113
|
+
text-decoration: underline;
|
|
2114
|
+
|
|
2115
|
+
&:hover {
|
|
2116
|
+
color: ${s.colors.navViolet};
|
|
2117
|
+
}
|
|
2118
|
+
`,ds=c.span`
|
|
2119
|
+
display: inline-block;
|
|
2120
|
+
min-width: 12px;
|
|
2121
|
+
font-weight: 700;
|
|
2122
|
+
font-variant-numeric: tabular-nums;
|
|
2123
|
+
color: ${s.colors.gray4};
|
|
2124
|
+
`,hs=c.span`
|
|
2125
|
+
display: flex;
|
|
2126
|
+
align-items: center;
|
|
2127
|
+
gap: 12px;
|
|
2128
|
+
min-width: 0;
|
|
2129
|
+
`,Es=`
|
|
2130
|
+
thead th,
|
|
2131
|
+
tbody td {
|
|
2132
|
+
padding-left: 12px;
|
|
2133
|
+
padding-right: 12px;
|
|
2134
|
+
}
|
|
2135
|
+
`,Oi=c(bt)`
|
|
2136
|
+
min-width: 500px;
|
|
2137
|
+
${Es}
|
|
2138
|
+
|
|
2139
|
+
thead th:nth-of-type(1) {
|
|
2140
|
+
width: 46%;
|
|
2141
|
+
}
|
|
2142
|
+
thead th:nth-of-type(2) {
|
|
2143
|
+
width: 26%;
|
|
2144
|
+
}
|
|
2145
|
+
thead th:nth-of-type(3) {
|
|
2146
|
+
width: 72px;
|
|
2147
|
+
}
|
|
2148
|
+
thead th:nth-of-type(4) {
|
|
2149
|
+
width: 96px;
|
|
2150
|
+
}
|
|
2151
|
+
`,Ri=c(bt)`
|
|
2152
|
+
min-width: 580px;
|
|
2153
|
+
${Es}
|
|
2154
|
+
|
|
2155
|
+
thead th:nth-of-type(1) {
|
|
2156
|
+
width: 34%;
|
|
2157
|
+
}
|
|
2158
|
+
thead th:nth-of-type(2) {
|
|
2159
|
+
width: 22%;
|
|
2160
|
+
}
|
|
2161
|
+
thead th:nth-of-type(3) {
|
|
2162
|
+
width: 70px;
|
|
2163
|
+
}
|
|
2164
|
+
thead th:nth-of-type(4) {
|
|
2165
|
+
width: 140px;
|
|
2166
|
+
}
|
|
2167
|
+
thead th:nth-of-type(5) {
|
|
2168
|
+
width: 76px;
|
|
2169
|
+
}
|
|
2170
|
+
`,zi=c.span`
|
|
2171
|
+
display: flex;
|
|
2172
|
+
flex-direction: column;
|
|
2173
|
+
gap: 3px;
|
|
2174
|
+
min-width: 0;
|
|
2175
|
+
`,xt=8,gt=5,Ft=5,dt=5,Ni=new Map,ps=.093,Ui=[{key:"nfts",label:"myStore.colOwned",first:"desc"},{key:"items",label:"myStore.colItems",first:"desc"},{key:"collections",label:"myStore.colCollections",first:"desc"},{key:"recent",label:"myStore.colAcquired",first:"desc"},{key:"spent",label:"myStore.colSpent",first:"desc"}],Ds="shop.my-store.sort",Bi=["sold","earned","newest","name"];function qi(){try{const t=localStorage.getItem(Ds);return Bi.includes(t)?t:"sold"}catch{return"sold"}}function Hi(t){try{localStorage.setItem(Ds,t)}catch{}}function Ki(t,n){const o=new Date(t).getFullYear()===new Date(n).getFullYear(),l=new Intl.DateTimeFormat(pe(),{month:"short",day:"numeric",...o?{}:{year:"numeric"}}),a=new Intl.DateTimeFormat(pe(),{month:"short",day:"numeric",year:"numeric"});return`${l.format(t)} – ${a.format(n)}`}function Ie(t){return t==="asc"?"ascending":t==="desc"?"descending":void 0}function se(t,n){return(t==null?void 0:t.key)===n?t.dir:void 0}function Yi(t,n,o="mana"){const l=[...t];return n==="name"?l.sort((a,d)=>a.name.localeCompare(d.name)):n==="earned"?Ne(l,a=>o==="usd"?a.earningsUsd:a.earningsWei,"desc"):n==="newest"?l.sort((a,d)=>(d.createdAt??0)-(a.createdAt??0)):l.sort((a,d)=>d.sold-a.sold||a.name.localeCompare(d.name))}function us(t,n,o){return Te(`/item/${t}/${n}`,o)}function Te(t,n){return n?`${t}${t.includes("?")?"&":"?"}env=${n}`:t}function Gi(t,n){if(n==null)return null;const o=t.minted-n;return o>0?o:null}const Vi={website:"website",twitter:"x-twitter",discord:"discord",facebook:"facebook"},yt=5;function Re({page:t,pages:n,onChange:o,name:l}){return n<=1?null:e.jsxs(ui,{"aria-label":i("myStore.pagination"),children:[e.jsx(as,{type:"button",onClick:()=>o(Math.max(0,t-1)),disabled:t===0,"aria-label":i("myStore.prev"),"data-testid":`store-${l}-prev`,children:e.jsx(ie,{name:"chevron-down",size:16,"aria-hidden":!0,style:{transform:"rotate(90deg)"}})}),la(t,n).map((a,d)=>a==="gap"?e.jsx(fi,{children:"…"},`gap-${d}`):e.jsx(mi,{type:"button","aria-current":a===t?"page":void 0,onClick:()=>o(a),"data-testid":`store-${l}-page-${a+1}`,children:(a+1).toLocaleString()},a)),e.jsx(as,{type:"button",onClick:()=>o(Math.min(n-1,t+1)),disabled:t>=n-1,"aria-label":i("myStore.next"),"data-testid":`store-${l}-next`,children:e.jsx(ie,{name:"chevron-down",size:16,"aria-hidden":!0,style:{transform:"rotate(-90deg)"}})})]})}function Qi(t,n,o){var h,m;const{from:l,to:a}=n,d=J({queryKey:["store-sales-page",t,l??null,a,o],enabled:!!t,placeholderData:$=>$,queryFn:()=>tr({seller:t,from:l,to:a},{first:yt,skip:o*yt})}),p=((h=d.data)==null?void 0:h.total)??0;return{rows:((m=d.data)==null?void 0:m.rows)??[],total:p,pages:Math.ceil(p/yt)}}function Ot(t){return J({queryKey:["store-buyers",t],enabled:t.length>0,staleTime:5*6e4,queryFn:()=>xs(t)})}function Rt(t){return`${me.marketplaceUrl}/accounts/${t.toLowerCase()}`}function zt(t,n){var l;const o=(l=n==null?void 0:n.get(t.toLowerCase()))==null?void 0:l.name;return o?Qt(o):fs(t)}function Xi(t){return me.previewHost&&t==="1"}const Zi=25000n;function Ji(t){return t*Zi/1000000n}function ze(t,n){const o=f.useRef(null),[l,a]=f.useState(0);return f.useEffect(()=>a(0),[n]),f.useLayoutEffect(()=>{if(!t||!o.current)return;const d=o.current.offsetHeight;d>l&&a(d)}),{ref:o,style:t&&l>0?{minHeight:l}:void 0}}const Fs=f.createContext("mana");function Le({wei:t,usd:n}){return f.useContext(Fs)==="usd"?n==null?e.jsx("span",{title:i("myStore.noUsd"),children:"—"}):e.jsxs(e.Fragment,{children:[e.jsx(Oa,{"aria-hidden":!0,children:"$"}),js(n,pe())]}):e.jsxs(e.Fragment,{children:[e.jsx(ce,{kind:"mana"}),Be(t)]})}function Be(t){const n=Number(t/10n**14n)/1e4;return n>=10?Math.round(n).toLocaleString():n.toFixed(2)}function Nt(t){const n=Math.max(1,Math.round((Date.now()-t)/6e4));if(n<60)return i("myStore.agoMinutes",{n});const o=Math.round(n/60);return o<24?i("myStore.agoHours",{n:o}):i("myStore.agoDays",{n:Math.round(o/24)})}function el({series:t}){const n=f.useId(),o=Math.max(...t,0),l=t.length>1?92/(t.length-1):0,a=h=>o===0?27:27-h/o*22,p=t.map((h,m)=>`${(2+m*l).toFixed(1)} ${a(h).toFixed(1)}`).join(" L ");return o===0?e.jsx(ns,{viewBox:"0 0 96 30",role:"img","aria-label":i("myStore.trendNone"),children:e.jsx("path",{d:"M2 27 L94 27",fill:"none",stroke:s.colors.cardLine,strokeWidth:"2",strokeLinecap:"round"})}):e.jsxs(ns,{viewBox:"0 0 96 30",role:"img","aria-label":i("myStore.trendAria",{n:o}),children:[e.jsxs("defs",{children:[e.jsxs("linearGradient",{id:n,gradientUnits:"userSpaceOnUse",x1:"78.9",y1:"-19.5",x2:"35.3",y2:"40.4",children:[e.jsx("stop",{stopColor:s.colors.dclRed}),e.jsx("stop",{offset:"1",stopColor:s.colors.flareAmber})]}),e.jsxs("linearGradient",{id:`${n}-fill`,x1:"0",y1:"0",x2:"0",y2:"1",children:[e.jsx("stop",{offset:"0",stopColor:s.colors.dclRed,stopOpacity:"0.26"}),e.jsx("stop",{offset:"1",stopColor:s.colors.dclRed,stopOpacity:"0"})]})]}),e.jsx("path",{d:`M ${p} L 94 29 L 2 29 Z`,fill:`url(#${n}-fill)`}),e.jsx("path",{d:`M ${p}`,fill:"none",stroke:`url(#${n})`,strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})]})}function tl({collection:t,discount:n,savesByKey:o,open:l,onToggle:a,onManage:d,onIssue:p,env:h}){var $,O;const m=`store-items-${t.contractAddress}`;return e.jsxs(e.Fragment,{children:[e.jsxs(Ts,{"data-testid":"store-collection","data-exhausted":t.exhausted||void 0,children:[e.jsx(Ba,{type:"button","aria-expanded":l,"aria-controls":m,"aria-label":i(l?"myStore.collapse":"myStore.expand",{name:t.name}),onClick:a,"data-testid":"store-collection-toggle",children:e.jsx(bi,{name:"chevron-down",className:"ico","aria-hidden":!0})}),e.jsx(qa,{"data-testid":"store-collection-thumb",children:e.jsx(wo,{contractAddress:t.contractAddress})}),e.jsxs(Ya,{children:[e.jsxs(Ka,{children:[e.jsx(qe,{to:Te(`/collection/${t.contractAddress}`,h),"data-testid":"store-collection-name",children:t.name}),t.exhausted?e.jsx(Ha,{"data-testid":"store-collection-soldout",children:i("myStore.collExhausted")}):null]}),e.jsxs(Ga,{children:[i("myStore.itemsCount",{count:t.items.length}),t.listed>0?` · ${i("myStore.listedCount",{count:t.listed})}`:"",!t.exhausted&&t.soldOut>0?` · ${i("myStore.soldOutCount",{count:t.soldOut})}`:""]})]}),e.jsx(Mi,{"data-testid":"store-collection-discount",children:n?e.jsxs(e.Fragment,{children:[e.jsxs(Ai,{children:[e.jsx(Ii,{pct:n.discount/1e4}),e.jsx(Li,{until:n.checks.expiration})]}),e.jsx(Ti,{children:Po(n)?i("myStore.discountUsed",{used:(($=n.state)==null?void 0:$.uses)??0,total:n.checks.uses}):i("myStore.discountUsedUncapped",{used:((O=n.state)==null?void 0:O.uses)??0})})]}):i("myStore.noDiscountShort")}),e.jsxs(Ci,{"data-testid":"store-collection-claimed",children:[t.claimed.toLocaleString(),e.jsxs("small",{children:["/",t.runTotal.toLocaleString()]})]}),e.jsx(Ei,{"data-testid":"store-collection-earned",children:e.jsx(Le,{wei:t.earningsWei,usd:t.earningsUsd})}),e.jsx(Va,{children:e.jsx(el,{series:t.trend})}),e.jsxs(Pi,{as:"a",href:`${me.builderUrl}/collections${t.collectionId?`/${t.collectionId}`:""}`,target:"_blank",rel:"noopener noreferrer",onClick:d,"data-testid":"store-manage",children:[i("myStore.manage"),e.jsx(ie,{name:"external-link",size:14,"aria-hidden":!0})]})]}),l?e.jsxs(Qa,{id:m,"data-testid":"store-items",children:[e.jsxs(Xa,{"data-testid":"store-collection-stats",children:[e.jsxs("span",{children:[e.jsx("b",{children:e.jsx(Le,{wei:t.earningsWei,usd:t.earningsUsd})}),i("myStore.collEarned")]}),e.jsxs("span",{children:[e.jsx("b",{children:t.sold.toLocaleString()}),i("myStore.collSold")]}),e.jsxs("span",{children:[e.jsx("b",{children:t.items.length}),i("myStore.collItems",{count:t.items.length})]}),e.jsxs("span",{children:[e.jsx("b",{children:t.listed+t.classic}),i("myStore.collListed")]})]}),t.items.map(u=>{const j=Gi(u,u.lifetimeSold);return e.jsxs(Za,{"data-testid":"store-item",children:[e.jsx(Ja,{style:{backgroundImage:Ht(u.rarity)},children:u.thumbnail?e.jsx("img",{src:u.thumbnail,alt:"",loading:"lazy"}):null}),e.jsxs(ei,{children:[e.jsx(oi,{to:Te(`/item/${t.contractAddress}/${u.itemId}`,h),title:u.name,children:u.name}),e.jsxs(ti,{children:[e.jsx(si,{style:{background:ko(u.rarity)},title:jo(u.rarity),children:So(u.rarity)}),e.jsx(ii,{"data-state":u.state,children:u.state==="soldout"?null:u.state==="unlisted"?i("myStore.stateUnlisted"):u.state==="unknown"?i("myStore.stateUnknown"):e.jsxs(e.Fragment,{children:[e.jsx(ci,{children:i("myStore.onSaleFor")}),u.manaWei?e.jsxs(e.Fragment,{children:[e.jsx(ce,{kind:"mana"}),Be(te(u.manaWei))]}):e.jsxs(e.Fragment,{children:[e.jsx(ce,{kind:"credits"}),e.jsx($o,{credits:u.priceCredits??0})]})]})}),p&&u.left>0?e.jsx(ni,{type:"button",onClick:()=>p(u),"data-testid":"store-item-issue",children:i("myStore.issueCopies")}):null]})]}),e.jsxs(ri,{children:[u.sold.toLocaleString(),e.jsxs("small",{children:[" ",i("myStore.sold")]})]}),e.jsxs(Di,{"data-testid":"store-item-saves",title:i("myStore.savesHint",{count:o.get(u.key)??0}),children:[e.jsx(ie,{name:"heart",className:"ico","aria-hidden":!0}),(o.get(u.key)??0).toLocaleString()]}),e.jsx(ai,{role:"progressbar","aria-valuemin":0,"aria-valuemax":u.minted+u.left,"aria-valuenow":u.minted,"aria-label":i("myStore.runAria",{minted:u.minted,total:u.minted+u.left}),children:e.jsx("i",{style:{width:`${Math.round(u.minted/Math.max(1,u.minted+u.left)*100)}%`}})}),e.jsxs(li,{title:u.lifetimeSold==null?void 0:i("myStore.runBreakdown",{total:u.minted+u.left,sold:u.lifetimeSold,sent:u.minted-u.lifetimeSold,left:u.left}),children:[e.jsx(hi,{"data-out":u.left===0,"data-testid":"store-item-stock",children:gs(u.left===0?"myStore.stockNone":"myStore.stockLeft",{b:z=>e.jsx("b",{children:z}),left:u.left.toLocaleString(),total:(u.minted+u.left).toLocaleString()})}),j?e.jsx(di,{"data-testid":"store-item-issued",children:i("myStore.sentDirectly",{count:j.toLocaleString()})}):null]})]},u.key)})]}):null]})}function Ut(t){return!!t&&!(t.current===0&&t.previous===0)}function Bt({delta:t,period:n}){if(!t||t.current===0&&t.previous===0)return null;const o=n==="all"?"":n==="7d"||n==="30d"||n==="90d"?i(`myStore.vs${n}`):i("myStore.vsPrevious");if(t.pct===null)return e.jsxs(Et,{"data-dir":"new","data-testid":"store-delta",children:[i("myStore.deltaNew"),o?e.jsx("span",{className:"delta__against",children:o}):null]});const l=Math.round(t.pct);if(l===0)return e.jsxs(Et,{"data-dir":"flat","data-testid":"store-delta",children:[i("myStore.deltaFlat"),o?e.jsx("span",{className:"delta__against",children:o}):null]});const a=l>0,p=l>=1e3?i("myStore.deltaTimes",{times:Math.round(l/100+1).toLocaleString()}):`${Math.abs(l)}%`;return e.jsxs(Et,{"data-dir":a?"up":"down","data-testid":"store-delta","aria-label":i(a?"myStore.deltaUpAria":"myStore.deltaDownAria",{pct:p,against:o}),children:[e.jsx("span",{className:"delta__arrow","aria-hidden":!0,children:a?"▲":"▼"}),p,o?e.jsx("span",{className:"delta__against",children:o}):null]})}function nl(){return e.jsxs("div",{"data-testid":"store-skeleton","aria-hidden":!0,children:[e.jsx(Ms,{children:[0,1,2,3].map(t=>e.jsxs(be,{children:[e.jsx(P,{style:{width:"46%"}}),e.jsx(P,{style:{width:"32%",height:38}}),e.jsx(P,{style:{width:"64%",height:15}})]},t))}),e.jsxs(he,{style:{marginTop:22},children:[e.jsxs(Ue,{children:[e.jsx(P,{style:{width:96,height:14}}),e.jsx(P,{style:{width:120}})]}),e.jsxs(Ls,{children:[e.jsxs(Is,{"aria-hidden":!0,children:[e.jsx("span",{}),e.jsx("span",{}),e.jsx(P,{style:{width:84,height:12}}),e.jsx(P,{style:{width:74,height:12}}),e.jsx(P,{style:{width:62,height:12}}),e.jsx(P,{style:{width:68,height:12}}),e.jsx(P,{style:{width:82,height:12}}),e.jsx(P,{style:{width:60,height:12}})]}),Array.from({length:xt},(t,n)=>e.jsxs(Ts,{children:[e.jsx("span",{}),e.jsx(yi,{}),e.jsx(P,{style:{width:"82%",height:14}}),e.jsx(P,{style:{width:"70%",height:20}}),e.jsx(P,{style:{width:72}}),e.jsx(P,{style:{width:76}}),e.jsx(P,{style:{height:20}}),e.jsx(P,{style:{width:96,height:32,borderRadius:8}})]},n))]}),e.jsx(gi,{as:"div",children:e.jsx(P,{style:{width:150,height:13,margin:"0 auto"}})})]}),e.jsx(Ps,{style:{marginTop:22},children:[0,1].map(t=>e.jsxs(he,{children:[e.jsxs(Ue,{children:[e.jsx(P,{style:{width:110,height:14}}),e.jsx(P,{style:{width:80}})]}),e.jsx(is,{children:[0,1,2,3].map(n=>e.jsx(P,{style:{width:46,height:9}},n))}),Array.from({length:yt},(n,o)=>e.jsxs(ls,{children:[e.jsx(P,{style:{width:"38%"}}),e.jsx(P,{style:{width:"24%"}}),e.jsx(P,{style:{width:56}}),e.jsx(P,{style:{width:64}})]},o))]},t))}),e.jsxs(he,{style:{marginTop:22},children:[e.jsxs(Ue,{children:[e.jsx(P,{style:{width:104,height:14}}),e.jsx(P,{style:{width:90}})]}),e.jsx(is,{children:[0,1,2,3,4].map(t=>e.jsx(P,{style:{width:46,height:9}},t))}),Array.from({length:gt},(t,n)=>e.jsxs(ls,{children:[e.jsx(P,{style:{width:"30%"}}),e.jsx(P,{style:{width:"18%"}}),e.jsx(P,{style:{width:72,height:18}}),e.jsx(P,{style:{width:"14%"}}),e.jsx(P,{style:{width:54}})]},n))]})]})}function $l(){var kn,$n;ho({title:i("myStore.title"),noindex:!0});const{session:t,error:n,signIn:o}=po(),[l]=to(),[a,d]=f.useState({key:"30d"}),[p,h]=f.useState(!1),[m,$]=f.useState(xr),O=f.useCallback(()=>h(!1),[]),u=a.key,j=f.useMemo(()=>Sr(a,Date.now()),[a]),[z,B]=f.useState(()=>new Set),[C,S]=f.useState(0),[D,W]=f.useState(0),[G,b]=f.useState(!1),[q,N]=f.useState(qi),[T,oe]=f.useState(0),[g,A]=f.useState(null),[k,v]=f.useState(null),[_,I]=f.useState(0),[R,Q]=f.useState(null),[K,M]=f.useState({key:"nfts",dir:"desc"}),[U,ne]=f.useState(0),[X,re]=f.useState(null),[we,We]=f.useState(!1),He=uo(),[wt,St]=f.useState(!1),_e=mo(),w=fo(),E=Xi(l.get("mock")),ee=l.get("env"),Os=no("/").replace(/\/$/,""),jt=r=>`${Os}${r}`,nn=E;function F(r,x={}){nn||bo(r,x)}const{data:fe}=xo(t==null?void 0:t.address),kt=t==null?void 0:t.address,{data:Se}=Qo(kt),sn=Xo.filter(r=>Se==null?void 0:Se.links[r]),on=($n=(kn=fe==null?void 0:fe.avatar)==null?void 0:kn.snapshots)==null?void 0:$n.face256,rn=fe!=null&&fe.name?Qt(fe.name):null,{stats:Rs,trend:an,savesByKey:zs,saleable:ln,sales:xe,previousEarnedUsd:cn,isLoading:Ns,error:Us}=Cr(t,j),y=E?tn:Rs,Z=E?{...an,collectors:ua,buyers:ma}:an,Bs=E?!1:Ns,qs=E?ga:zs,Pe=Qi(t==null?void 0:t.address,j,D),Ke=E?ya:Pe.rows,Hs=E?Vn:xe.rows,dn=(j.from??Date.parse("2021-07-08T00:00:00Z"))-Math.max(400,(j.days??0)+31)*864e5,$t=J({queryKey:["mana-usd-rates",dn,j.to],enabled:m==="usd"&&!E,staleTime:60*6e4,queryFn:()=>fr(dn,j.to)}),je=E?ba:$t.data??Ni,vt=f.useMemo(()=>E?new Map(((y==null?void 0:y.collections)??[]).flatMap(r=>r.items.map(x=>[x.key.toLowerCase(),Gt(x.earnedWei,ps)]))):In(xe.rows,je,r=>r.itemId===null||r.type!=="mint"?null:`${r.contractAddress.toLowerCase()}-${r.itemId}`).totals,[E,y,xe.rows,je]),Ks=f.useMemo(()=>In(xe.rows,je,r=>r.buyer.toLowerCase()).totals,[xe.rows,je]),hn=m==="usd"?(y==null?void 0:y.earningsUsd)!=null&&cn!=null?Kt(y.earningsUsd,cn):null:Z.earnings,Ys=r=>E?Gt(r.spentWei,ps):Ks.get(r.address.toLowerCase())??null,Gs=f.useMemo(()=>[...new Set(Ke.map(r=>r.buyer.toLowerCase()))].sort(),[Ke]),{data:Ye,isLoading:Vs}=Ot(Gs),Ee=Math.max(1,Math.ceil(Z.buyers.length/gt)),Ge=Math.min(T,Ee-1),pn=f.useMemo(()=>{if(!R)return Z.buyers;const r={items:x=>x.items,collections:x=>x.collections,last:x=>x.lastAt,spent:x=>x.spentWei}[R.key];return Ne(Z.buyers,r,R.dir)},[Z.buyers,R]),Ct=f.useMemo(()=>pn.slice(Ge*gt,(Ge+1)*gt),[pn,Ge]),Qs=f.useMemo(()=>Ct.map(r=>r.address).sort(),[Ct]),{data:Ve}=Ot(Qs),Qe=J({queryKey:["store-top-owners",t==null?void 0:t.address,K.key,K.dir,U],enabled:!E&&!!t,staleTime:5*6e4,placeholderData:r=>r,retry:(r,x)=>!(x instanceof ft)&&r<1,queryFn:()=>Kn(t.address,{sortBy:K.key,orderDirection:K.dir,first:dt,skip:U*dt})});f.useEffect(()=>{const r=Qe.error;!r||r instanceof ft||r instanceof Cs&&r.status<500||ms(r,{flow:"my_store",step:"top_owners"})},[Qe.error]);const V=E?Yn(K,U,dt):Qe.data,ge=Math.max(1,Math.ceil(((V==null?void 0:V.total)??0)/dt)),Xs=f.useMemo(()=>((y==null?void 0:y.collections)??[]).flatMap(r=>r.items.filter(x=>x.left>0).map(x=>({contractAddress:r.contractAddress,itemId:x.itemId,name:x.name,thumbnail:x.thumbnail,collectionName:r.name,left:x.left}))).sort((r,x)=>x.left-r.left),[y]);f.useEffect(()=>{U>ge-1&&ne(ge-1)},[U,ge]);const Zs=f.useMemo(()=>((V==null?void 0:V.data)??[]).map(r=>r.address).sort(),[V]),{data:Xe}=Ot(Zs),{data:Js}=To(t==null?void 0:t.address,_e&&!!t),Ze=Math.max(1,Math.ceil(((y==null?void 0:y.collections.length)??0)/xt)),un=f.useMemo(()=>{const r=(y==null?void 0:y.collections)??[];if(!g)return Yi(r,q,m);const x={name:L=>L.name,claimed:L=>L.claimed,earnings:L=>m==="usd"?L.earningsUsd:L.earningsWei,sold:L=>L.sold}[g.key];return Ne(r,x,g.dir)},[y,q,g,m]),de=k??(u==="all"?{key:"earnings",dir:"desc"}:null),De=f.useMemo(()=>{const r=ir((y==null?void 0:y.collections)??[],1/0),x={name:Y=>Y.name,collection:Y=>Y.collectionName,sold:Y=>Y.sold,earnings:Y=>m==="usd"?vt.get(Y.key.toLowerCase())??null:Y.earnedWei},H=(u==="all"?Ne(r,x.earnings,"desc"):r).map((Y,st)=>({...Y,rank:st+1}));return k?Ne(H,x[k.key],k.dir):H},[y,k,m,vt,u]);function Je(r,x){const L=it(de,r,x);F("Shop Sorted Store Table",{table:"best_sellers",column:L.key,direction:L.dir}),v(L),I(0)}const Fe=Math.max(1,Math.ceil(De.length/Ft)),et=Math.min(_,Fe-1),eo=f.useMemo(()=>De.slice(et*Ft,(et+1)*Ft),[De,et]),tt=Math.min(C,Ze-1),mn=f.useMemo(()=>un.slice(tt*xt,(tt+1)*xt),[un,tt]),nt=`${j.from??"all"}-${j.to}`,fn=ze(Ze>1,`${nt}-${Ze}`),xn=ze(Fe>1,`${nt}-${Fe}`),gn=ze((E?1:Pe.pages)>1,`${nt}-${Pe.pages}`),yn=ze(Ee>1,`${nt}-${Ee}`),bn=ze(ge>1,`${K.key}-${ge}`);if(w==="off")return e.jsx(so,{to:"/",replace:!0});if(!t&&!E)return e.jsxs(go,{children:[e.jsx(yo,{testId:"my-store-signin",icon:Zo,title:i("myStore.signInTitle"),body:i("myStore.signInBody"),cta:{label:i("storeSettings.signIn"),onClick:()=>o()},ctaVariant:"solid",fill:!0}),e.jsx(Cn,{message:n})]});const wn=E?xa:Js,Mt=new Map;for(const r of wn??[])if(!(r.status!=="active"&&r.status!=="scheduled"))for(const x of r.collections)Mt.set(x.toLowerCase(),r);const Sn=(wn??[]).filter(r=>r.status==="active"||r.status==="scheduled"),jn=j.days,At=((y==null?void 0:y.collections)??[]).reduce((r,x)=>r+x.items.length,0);return e.jsx(Fo,{children:e.jsx(Oo,{children:e.jsx(Fs.Provider,{value:m,children:e.jsxs(wa,{"data-testid":"my-store",children:[we&&V?e.jsx(Zr,{creator:(t==null?void 0:t.address)??"mock",ownerCount:V.total,items:Xs,loadOwners:async(r,x)=>E?Yn({key:x,dir:"desc"},0,r).data:(await Kn(t.address,{sortBy:x,orderDirection:"desc",first:r,skip:0})).data,onClose:()=>We(!1),onTrack:F,onContinue:({item:r,recipients:x})=>{We(!1),t&&re({item:r,contractAddress:r.contractAddress,recipients:x})}}):null,X&&t?e.jsx(Vo,{item:{contractAddress:X.contractAddress,chainId:me.chainId,itemId:X.item.itemId,name:X.item.name,thumbnail:X.item.thumbnail,available:X.item.left},session:t,initialRecipients:X.recipients,onClose:()=>{re(null),He.invalidateQueries({queryKey:["store-catalogue"]}),He.invalidateQueries({queryKey:["store-public-catalogue"]})}}):null,G&&t?e.jsx(Wo,{session:t,collections:ln,onClose:()=>b(!1),source:"my_store",silent:nn}):null,e.jsxs(Sa,{children:[e.jsxs(ja,{children:[e.jsx($a,{style:on?{backgroundImage:`url(${on})`}:void 0,"data-testid":"store-avatar","aria-hidden":!0}),e.jsxs(ka,{children:[rn?e.jsx(va,{children:rn}):null,e.jsxs(Ma,{children:[e.jsx(Ca,{children:i("myStore.title")}),y?e.jsxs(Qn,{children:[i("myStore.summary",{collections:y.collections.length,items:At}),sn.length>0?e.jsx(Ta,{"data-testid":"store-socials",children:sn.map(r=>e.jsx(Wa,{href:(Se==null?void 0:Se.links[r])??"",target:"_blank",rel:"noopener noreferrer",onClick:()=>F("Shop Clicked Store Action",{action:"social_link",link_type:r}),title:i(`creator.link.${r}`),"aria-label":i(`creator.link.${r}`),children:e.jsx(ie,{name:Vi[r],className:"ico","aria-hidden":!0})},r))}):null]}):e.jsx(Qn,{children:e.jsx(P,{style:{width:170,background:"rgba(252, 252, 252, 0.18)",animation:"none"}})})]})]})]}),e.jsxs(Aa,{children:[kt?e.jsxs(Ia,{href:jt(Te(`/items/creator/${kt}`,ee)),target:"_blank",rel:"noopener noreferrer",onClick:()=>F("Shop Clicked Store Action",{action:"view_public_store"}),"data-testid":"store-view-public",children:[i("myStore.viewPublicStore"),e.jsx(ie,{name:"external-link",className:"ico","aria-hidden":!0})]}):null,e.jsxs(La,{to:Te("/store-settings",ee),state:{from:"/my-store"},onClick:()=>F("Shop Clicked Store Action",{action:"edit_store"}),"data-testid":"store-edit",children:[e.jsx(ie,{name:"pen",className:"ico","aria-hidden":!0}),i("myStore.editStore")]})]})]}),e.jsxs(_a,{children:[e.jsx(Pa,{children:i("myStore.performance")}),e.jsxs(Da,{children:[e.jsx(Fa,{role:"group","aria-label":i("myStore.currency"),children:["mana","usd"].map(r=>e.jsx(Zn,{type:"button","aria-pressed":m===r,"aria-label":i(r==="usd"?"myStore.currencyUsd":"myStore.currencyPaid"),title:i(r==="usd"?"myStore.currencyUsd":"myStore.currencyPaid"),onClick:()=>{r!==m&&(F("Shop Changed Store Currency",{currency:r}),$(r),gr(r))},"data-testid":`store-currency-${r}`,children:r==="usd"?"$":e.jsx(ce,{kind:"mana"})},r))}),e.jsxs(Ra,{children:[e.jsx(Ea,{role:"group","aria-label":i("myStore.period"),children:yr.map(r=>e.jsx(Zn,{type:"button","aria-pressed":u===r,...r==="custom"?{"aria-expanded":p,"aria-haspopup":"dialog","data-range-trigger":""}:{},onClick:()=>{if(r==="custom"){h(x=>!x);return}r!==u&&F("Shop Changed Store Period",{period:r,previous_period:u}),d({key:r}),h(!1),W(0)},"data-testid":`store-period-${r}`,children:r==="custom"&&u==="custom"&&j.from!=null?Ki(j.from,j.to):i(`myStore.period${r}`)},r))}),p?e.jsx(ra,{from:j.from??j.to-29*864e5,to:j.to,max:Date.now(),onClose:O,onApply:(r,x)=>{F("Shop Changed Store Period",{period:"custom",previous_period:u,days:Math.round((x-r)/864e5)+1}),d({key:"custom",from:r,to:x}),h(!1),W(0)}}):null]})]})]}),m==="usd"&&!E&&$t.isError?e.jsx(Xn,{"data-testid":"store-usd-unavailable",children:i("myStore.usdUnavailable")}):m==="usd"&&y&&y.unpricedSales>0?e.jsx(Xn,{"data-testid":"store-usd-unpriced",children:i("myStore.usdUnpriced",{count:y.unpricedSales})}):null,e.jsx(Cn,{message:Us?i("myStore.error"):null,testId:"my-store-error"}),Bs||!y?e.jsx(nl,{}):e.jsxs(e.Fragment,{children:[e.jsxs(Ms,{"aria-label":i("myStore.summaryAria"),children:[e.jsxs(be,{children:[e.jsxs(ke,{children:[i("myStore.tileSold"),e.jsx($e,{"aria-hidden":!0,children:"🛍️"})]}),e.jsx(ve,{children:e.jsx("span",{"data-testid":"store-sold",children:y.sold.toLocaleString()})}),e.jsxs(Ce,{children:[e.jsx(Bt,{delta:Z.sold,period:u}),!Ut(Z.sold)&&(y.sold===0?i("myStore.tileSoldNone"):y.resales===0?i("myStore.tileSoldFootMintsOnly",{mints:y.mints}):i("myStore.tileSoldFoot",{mints:y.mints,resales:y.resales}))]})]}),e.jsxs(be,{children:[e.jsxs(ke,{children:[i("myStore.tileEarnings"),e.jsx($e,{"aria-hidden":!0,children:"💰"})]}),e.jsxs(ve,{"data-testid":"store-earnings",children:[e.jsx(Le,{wei:y.earningsWei,usd:y.earningsUsd}),m==="usd"?null:e.jsx(Jn,{children:i("myStore.manaUnit")})]}),e.jsxs(Ce,{children:[e.jsx(Bt,{delta:hn,period:u}),y.partial?e.jsxs(e.Fragment,{children:[e.jsx(es,{children:i("myStore.estimate")})," ",i("myStore.tileEarningsPartial")]}):Ut(hn)?null:i("myStore.tileEarningsFoot")]})]}),e.jsxs(be,{children:[e.jsxs(ke,{children:[i("myStore.tileListed"),e.jsx($e,{"aria-hidden":!0,children:"🏷️"})]}),e.jsxs(ve,{children:[y.listed+y.classic,e.jsx(Jn,{children:i("myStore.ofTotal",{n:At})})]}),e.jsx(Ce,{children:At===0?i("myStore.tileListedNone"):i("myStore.tileListedFoot",{count:y.neverListed})})]}),e.jsxs(be,{children:[e.jsxs(ke,{children:[i("myStore.tileDiscounts"),e.jsx($e,{"aria-hidden":!0,children:"🔥"})]}),e.jsx(ve,{"data-testid":"store-discounts",children:Sn.length}),e.jsx(Ce,{children:Sn.length>0?i("myStore.tileDiscountsFoot"):i("myStore.tileDiscountsNone")})]})]}),e.jsx(he,{"aria-labelledby":"store-chart-h","data-testid":"store-chart-panel",children:e.jsx(Br,{heading:e.jsxs("div",{children:[e.jsx(Me,{id:"store-chart-h",children:i("myStore.chart.title")}),e.jsx(Dt,{children:i("myStore.chart.sub")})]}),address:t==null?void 0:t.address,range:j,rows:Hs,truncated:xe.truncated,fetching:xe.isFetching||m==="usd"&&!E&&$t.isFetching,collections:y.collections,onTrack:F,comparisonRows:E?Vn:void 0,currency:m,rateBook:je})}),y.classic>0&&!wt?e.jsx(_o,{count:y.classic,reason:"discounts",to:Te("/activity?section=listings",ee),onDismiss:()=>{F("Shop Clicked Store Action",{action:"dismiss_pricing_banner",classic_items:y.classic}),St(!0)},onCta:()=>F("Shop Clicked Store Action",{action:"update_prices",classic_items:y.classic})}):null,e.jsxs(he,{"aria-labelledby":"store-coll-h",children:[e.jsxs(Wi,{children:[e.jsx(Me,{id:"store-coll-h",children:i("myStore.collectionsCount",{count:y.collections.length})}),e.jsxs(_i,{children:[y.collections.length>1?e.jsx(Ua,{options:[{value:"sold",label:i("myStore.sortSold")},{value:"earned",label:i("myStore.sortEarned")},...y.collections.some(r=>r.createdAt)?[{value:"newest",label:i("myStore.sortNewest")}]:[],{value:"name",label:i("myStore.sortName")}],value:g?void 0:q,placeholder:i("myStore.sortCustom"),onChange:r=>{F("Shop Sorted Store Collections",{sort:r}),N(r),A(null),S(0),Hi(r)},align:"right",ariaLabel:i("myStore.sortBy"),className:"store-sort"}):null,E||_e&&t&&ln.length>0?e.jsxs(qt,{variant:"red",size:"sm",onClick:()=>b(!0),"data-testid":"store-new-discount",children:[e.jsx("span",{"aria-hidden":!0,children:"🔥"}),i("myStore.newDiscount")]}):null]})]}),y.collections.length===0?e.jsx(Ae,{children:i("myStore.noCollections")}):e.jsx(e.Fragment,{children:e.jsxs(Ls,{ref:fn.ref,style:fn.style,children:[e.jsxs(Is,{children:[e.jsx("span",{}),e.jsx("span",{}),[["name",i("myStore.colCollection"),"asc"],null,["claimed",i("myStore.colClaimed"),"desc"],["earnings",i("myStore.colEarnings"),"desc"],["sold",jn?i("myStore.colTrend",{days:jn}):i("myStore.colTrendAll"),"desc"]].map((r,x)=>r?e.jsx("span",{children:e.jsx(ye,{label:r[1],dir:se(g,r[0]),testId:`store-sort-collections-${r[0]}`,onSort:()=>{const L=it(g,r[0],r[2]);F("Shop Sorted Store Table",{table:"collections",column:L.key,direction:L.dir}),A(L),S(0)}})},r[0]):e.jsx("span",{children:i("myStore.colDiscounts")},`plain-${x}`)),e.jsx("span",{children:i("myStore.colActions")})]}),mn.map(r=>e.jsx(tl,{collection:r,discount:Mt.get(r.contractAddress)??null,savesByKey:qs,env:ee,open:z.has(r.contractAddress),onToggle:()=>{z.has(r.contractAddress)||F("Shop Expanded Store Collection",{contract_address:r.contractAddress,items:r.items.length,exhausted:r.exhausted,has_discount:Mt.has(r.contractAddress)}),B(x=>{const L=new Set(x);return L.delete(r.contractAddress)||L.add(r.contractAddress),L})},onManage:()=>F("Shop Clicked Store Action",{action:"manage_collection",contract_address:r.contractAddress}),onIssue:t?x=>{F("Shop Clicked Store Action",{action:"issue_copies",contract_address:r.contractAddress}),re({item:x,contractAddress:r.contractAddress})}:void 0},r.contractAddress))]})}),y.collections.length>0?e.jsxs(Oe,{children:[e.jsxs("span",{"data-testid":"store-showing",children:[i("myStore.showingOf",{shown:mn.length.toLocaleString(),total:y.collections.length.toLocaleString()}),y.breakdownPartial?e.jsxs(e.Fragment,{children:[" · ",i("myStore.soldPartial",{n:y.fetched.toLocaleString()})]}):null]}),e.jsx(Re,{page:tt,pages:Ze,onChange:r=>{F("Shop Paged Store Table",{table:"collections",page:r+1}),S(r)},name:"collections"})]}):null]}),e.jsxs(Ps,{children:[e.jsxs(he,{"aria-labelledby":"store-best-h",children:[e.jsx(cs,{children:e.jsxs("div",{children:[e.jsx(Me,{id:"store-best-h",children:i("myStore.bestSellers")}),e.jsxs(Dt,{children:[i("myStore.bestSellersSub",{n:De.length}),y.breakdownPartial?e.jsxs(e.Fragment,{children:[" · ",i("myStore.soldPartial",{n:y.fetched.toLocaleString()})]}):null]})]})}),De.length===0?e.jsx(Ae,{children:i("myStore.noBestSellers")}):e.jsx(lt,{ref:xn.ref,style:xn.style,children:e.jsxs(Oi,{children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{scope:"col","aria-sort":Ie(se(de,"name")),children:e.jsxs(hs,{children:[e.jsx(ds,{"aria-hidden":!0,children:"#"}),e.jsx(ye,{label:i("myStore.colItem"),dir:se(de,"name"),testId:"store-sort-best-name",onSort:()=>Je("name","asc")})]})}),e.jsx("th",{scope:"col","aria-sort":Ie(se(de,"collection")),children:e.jsx(ye,{label:i("myStore.colCollection"),dir:se(de,"collection"),testId:"store-sort-best-collection",onSort:()=>Je("collection","asc")})}),e.jsx("th",{scope:"col",style:{textAlign:"center"},"aria-sort":Ie(se(de,"sold")),children:e.jsx(ye,{label:i("myStore.colSold"),dir:se(de,"sold"),testId:"store-sort-best-sold",onSort:()=>Je("sold","desc")})}),e.jsx("th",{scope:"col",style:{textAlign:"right"},"aria-sort":Ie(se(de,"earnings")),children:e.jsx(ye,{label:i("myStore.colEarnings"),dir:se(de,"earnings"),align:"right",testId:"store-sort-best-earnings",onSort:()=>Je("earnings","desc")})})]})}),e.jsx("tbody",{children:eo.map(r=>e.jsxs("tr",{"data-testid":"store-best",children:[e.jsx("td",{children:e.jsxs(hs,{children:[e.jsx(ds,{children:r.rank}),e.jsxs(os,{as:"a",href:jt(us(r.contractAddress,r.itemId,ee)),target:"_blank",rel:"noopener noreferrer",onClick:()=>F("Shop Clicked Store Action",{action:"open_item",table:"best_sellers",rank:r.rank}),"data-testid":"store-best-item",children:[e.jsx(rs,{style:{backgroundImage:Ht(r.rarity)},children:r.thumbnail?e.jsx("img",{src:r.thumbnail,alt:"",loading:"lazy"}):null}),e.jsx("span",{children:r.name})]})]})}),e.jsx("td",{"data-dim":!0,children:r.collectionName}),e.jsx("td",{style:{textAlign:"center",fontWeight:600},"data-testid":"store-best-sold",children:r.sold.toLocaleString()}),e.jsx("td",{"data-money":!0,children:e.jsx(ct,{children:e.jsx(Le,{wei:r.earnedWei,usd:vt.get(r.key.toLowerCase())??null})})})]},r.key))})]})}),Fe>1?e.jsxs(Oe,{children:[e.jsx("span",{}),e.jsx(Re,{page:et,pages:Fe,onChange:r=>{F("Shop Paged Store Table",{table:"best_sellers",page:r+1}),I(r)},name:"best"})]}):null]}),e.jsxs(he,{"aria-labelledby":"store-feed-h",children:[e.jsxs(cs,{children:[e.jsxs("div",{children:[e.jsx(Me,{id:"store-feed-h",children:i("myStore.recentSales")}),e.jsx(Dt,{children:i("myStore.recentSalesSub")})]}),e.jsxs(Fi,{to:"/activity",onClick:()=>F("Shop Clicked Store Action",{action:"view_all_sales"}),children:[i("myStore.viewAll"),e.jsx(ie,{name:"arrow-up-right",size:14,"aria-hidden":!0})]})]}),Ke.length===0?e.jsx(Ae,{children:i("myStore.noSales")}):e.jsx(lt,{ref:gn.ref,style:gn.style,children:e.jsxs(Ri,{children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{scope:"col",children:i("myStore.colItem")}),e.jsx("th",{scope:"col",children:i("myStore.colCollection")}),e.jsx("th",{scope:"col",style:{textAlign:"right"},children:i("myStore.colPrice")}),e.jsx("th",{scope:"col",children:i("myStore.colBuyer")}),e.jsx("th",{scope:"col",children:i("myStore.colDate")})]})}),e.jsx("tbody",{children:Ke.map(r=>{var st,vn;const x=y.collections.find(It=>It.contractAddress===r.contractAddress.toLowerCase()),L=x==null?void 0:x.items.find(It=>It.itemId===r.itemId),H=Ye==null?void 0:Ye.get(r.buyer.toLowerCase()),Y=(vn=(st=H==null?void 0:H.avatar)==null?void 0:st.snapshots)==null?void 0:vn.face256;return e.jsxs("tr",{"data-testid":"store-sale",children:[e.jsx("td",{children:e.jsxs(os,{as:r.itemId?"a":"span",...r.itemId?{href:jt(us(r.contractAddress,r.itemId,ee)),target:"_blank",rel:"noopener noreferrer",onClick:()=>F("Shop Clicked Store Action",{action:"open_item",table:"recent_sales"}),"data-testid":"store-sale-item"}:{},children:[e.jsx(rs,{style:{backgroundImage:Ht(L==null?void 0:L.rarity)},children:L!=null&&L.thumbnail?e.jsx("img",{src:L.thumbnail,alt:"",loading:"lazy"}):null}),e.jsxs(zi,{children:[e.jsx("span",{children:(L==null?void 0:L.name)??(x==null?void 0:x.name)??r.itemId??i("myStore.unknownItem")}),e.jsx(ht,{content:i("myStore.kindHint"),children:e.jsx(xi,{"data-kind":r.type,"data-testid":"store-kind-hint",children:r.type==="mint"?i("myStore.kindMint"):i("myStore.kindResale")})})]})]})}),e.jsx("td",{"data-dim":!0,children:(x==null?void 0:x.name)??"—"}),e.jsx("td",{"data-money":!0,children:e.jsx(ct,{children:e.jsx(Le,{wei:te(r.price),usd:Zt(r,je)})})}),e.jsx("td",{children:Vs?e.jsxs(pi,{"aria-hidden":!0,children:[e.jsx("i",{}),e.jsx("b",{})]}):e.jsxs(_t,{href:Rt(r.buyer),target:"_blank",rel:"noopener noreferrer",onClick:()=>F("Shop Clicked Store Action",{action:"open_buyer",table:"recent_sales"}),"data-testid":"store-sale-buyer",children:[e.jsx(Pt,{style:Y?{backgroundImage:`url(${Y})`}:void 0,"aria-hidden":!0}),zt(r.buyer,Ye)]})}),e.jsx("td",{"data-dim":!0,children:Nt(r.timestamp)})]},r.id)})})]})}),Pe.pages>1?e.jsxs(Oe,{children:[e.jsx("span",{}),e.jsx(Re,{page:D,pages:Pe.pages,onChange:r=>{F("Shop Paged Store Table",{table:"recent_sales",page:r+1}),W(r)},name:"sales"})]}):null]})]}),e.jsxs(wi,{children:[e.jsx(Si,{id:"store-audience-h",children:i("myStore.audience")}),e.jsx(ji,{children:i("myStore.audienceSub")})]}),e.jsxs(ki,{children:[e.jsxs(be,{children:[e.jsxs(ke,{children:[e.jsxs("span",{children:[i("myStore.tileCollectors"),e.jsx(ht,{content:i("myStore.collectorsHint"),children:e.jsx(ss,{type:"button","aria-label":i("myStore.tileCollectors"),"data-testid":"store-collectors-hint",children:e.jsx(ie,{name:"info",className:"ico","aria-hidden":!0})})})]}),e.jsx($e,{"aria-hidden":!0,children:"👥"})]}),e.jsx(ve,{"data-testid":"store-collectors",children:Z.collectors.total.toLocaleString()}),e.jsx(Ce,{children:Z.collectors.total===0?i("myStore.tileCollectorsNone"):e.jsxs(e.Fragment,{children:[y.breakdownPartial?e.jsxs(e.Fragment,{children:[e.jsx(es,{children:i("myStore.estimate")})," "]}):null,Z.collectors.topSharePct>=50?i("myStore.tileCollectorsConcentrated",{pct:Math.floor(Z.collectors.topSharePct)}):i("myStore.tileCollectorsFoot",{repeat:Z.collectors.repeat,pct:Math.round(Z.collectors.repeatPct)})]})})]}),y.royalties?e.jsxs(be,{children:[e.jsxs(ke,{children:[e.jsxs("span",{children:[i("myStore.tileRoyalties"),e.jsx(ht,{content:i("myStore.royaltiesHint"),children:e.jsx(ss,{type:"button","aria-label":i("myStore.tileRoyalties"),"data-testid":"store-royalties-hint",children:e.jsx(ie,{name:"info",className:"ico","aria-hidden":!0})})})]}),e.jsx($e,{"aria-hidden":!0,children:"🔁"})]}),e.jsxs(ve,{"data-testid":"store-royalties",children:[e.jsx(za,{children:"≈"}),e.jsx(ce,{kind:"mana"}),Be(Ji(y.royalties.volumeWei))]}),e.jsxs(Ce,{children:[e.jsx(Bt,{delta:Z.royalties,period:u}),Ut(Z.royalties)?null:e.jsx("span",{children:gs("myStore.tileRoyaltiesFoot",{m:r=>e.jsxs(e.Fragment,{children:[e.jsx(ce,{kind:"mana"}),r]}),count:y.royalties.resales,volume:Be(y.royalties.volumeWei)})})]})]}):null]}),e.jsxs(he,{"aria-labelledby":"store-buyers-h",children:[e.jsxs(Ue,{children:[e.jsx(Me,{id:"store-buyers-h",children:i("myStore.buyers")}),e.jsx(ts,{children:i("myStore.buyersHint")})]}),Z.buyers.length===0?e.jsx(Ae,{"data-testid":"store-buyers-none",children:i("myStore.noBuyers")}):e.jsx(lt,{ref:yn.ref,style:yn.style,children:e.jsxs($i,{children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{scope:"col",children:i("myStore.colBuyer")}),[["items",i("myStore.colItems"),"desc"],["collections",i("myStore.colCollections"),"desc"],["last",i("myStore.colLast"),"desc"],["spent",i("myStore.colSpent"),"desc"]].map(([r,x,L])=>e.jsx("th",{scope:"col",style:r==="spent"?{textAlign:"right"}:void 0,"aria-sort":Ie(se(R,r)),children:e.jsx(ye,{label:x,dir:se(R,r),align:r==="spent"?"right":"left",testId:`store-sort-buyers-${r}`,onSort:()=>{const H=it(R,r,L);F("Shop Sorted Store Table",{table:"buyers",column:H.key,direction:H.dir}),Q(H),oe(0)}})},r))]})}),e.jsx("tbody",{children:Ct.map(r=>{var L,H,Y;const x=(Y=(H=(L=Ve==null?void 0:Ve.get(r.address))==null?void 0:L.avatar)==null?void 0:H.snapshots)==null?void 0:Y.face256;return e.jsxs("tr",{"data-testid":"store-buyer",children:[e.jsx("td",{children:e.jsxs(_t,{href:Rt(r.address),target:"_blank",rel:"noopener noreferrer",onClick:()=>F("Shop Clicked Store Action",{action:"open_buyer",table:"buyers"}),"data-testid":"store-buyer-name",children:[e.jsx(Pt,{style:x?{backgroundImage:`url(${x})`}:void 0,"aria-hidden":!0}),zt(r.address,Ve)]})}),e.jsx("td",{"data-dim":!0,children:i("myStore.buyerItems",{count:r.items})}),e.jsx("td",{"data-dim":!0,children:i("myStore.buyerCollections",{count:r.collections})}),e.jsx("td",{"data-dim":!0,children:Nt(r.lastAt)}),e.jsx("td",{"data-money":!0,children:e.jsx(ct,{children:e.jsx(Le,{wei:r.spentWei,usd:Ys(r)})})})]},r.address)})})]})}),Ee>1?e.jsxs(Oe,{children:[e.jsx("span",{}),e.jsx(Re,{page:Ge,pages:Ee,onChange:r=>{F("Shop Paged Store Table",{table:"buyers",page:r+1}),oe(r)},name:"buyers"})]}):null]}),V||Qe.error instanceof ft?e.jsxs(he,{"aria-labelledby":"store-owners-h","data-testid":"store-owners-panel",children:[e.jsxs(Ue,{children:[e.jsx(Me,{id:"store-owners-h",children:i("myStore.owners")}),e.jsxs(Na,{children:[e.jsx(ts,{children:i("myStore.ownersHint")}),(t||E)&&V&&V.total>0?e.jsxs(qt,{variant:"red",size:"sm",onClick:()=>{F("Shop Clicked Store Action",{action:"reward_owners"}),We(!0)},"data-testid":"store-reward-owners",children:[e.jsx("span",{"aria-hidden":!0,children:"🎁"}),i("myStore.rewardOwners")]}):null]})]}),V?V.total===0?e.jsx(Ae,{"data-testid":"store-owners-none",children:i("myStore.noOwners")}):e.jsx(lt,{ref:bn.ref,style:bn.style,children:e.jsxs(vi,{children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{scope:"col",children:i("myStore.colOwner")}),Ui.map(({key:r,label:x,first:L})=>e.jsx("th",{scope:"col",style:r==="spent"?{textAlign:"right"}:void 0,"aria-sort":Ie(se(K,r)),children:e.jsx(ye,{label:i(x),dir:se(K,r),align:r==="spent"?"right":"left",testId:`store-sort-owners-${r}`,onSort:()=>{const H=it(K,r,L);F("Shop Sorted Store Table",{table:"owners",column:H.key,direction:H.dir}),M(H),ne(0)}})},r))]})}),e.jsx("tbody",{children:V.data.map(r=>{var L,H,Y;const x=(Y=(H=(L=Xe==null?void 0:Xe.get(r.address))==null?void 0:L.avatar)==null?void 0:H.snapshots)==null?void 0:Y.face256;return e.jsxs("tr",{"data-testid":"store-owner",children:[e.jsx("td",{children:e.jsxs(_t,{href:Rt(r.address),target:"_blank",rel:"noopener noreferrer",onClick:()=>F("Shop Clicked Store Action",{action:"open_owner",table:"owners"}),"data-testid":"store-owner-name",children:[e.jsx(Pt,{style:x?{backgroundImage:`url(${x})`}:void 0,"aria-hidden":!0}),zt(r.address,Xe)]})}),e.jsx("td",{"data-testid":"store-owner-nfts",children:r.nfts.toLocaleString()}),e.jsx("td",{"data-dim":!0,children:i("myStore.buyerItems",{count:r.items})}),e.jsx("td",{"data-dim":!0,children:i("myStore.buyerCollections",{count:r.collections})}),e.jsx("td",{"data-dim":!0,children:Nt(r.lastAcquiredAt)}),e.jsx("td",{"data-money":!0,children:e.jsxs(ct,{children:[e.jsx(ce,{kind:"mana"}),Be(te(r.spentWei))]})})]},r.address)})})]})}):e.jsx(Ae,{"data-testid":"store-owners-unavailable",children:i("myStore.ownersUnavailable")}),V&&ge>1?e.jsxs(Oe,{children:[e.jsx("span",{children:i("myStore.ownersCount",{count:V.total})}),e.jsx(Re,{page:U,pages:ge,onChange:r=>{F("Shop Paged Store Table",{table:"owners",page:r+1}),ne(r)},name:"owners"})]}):null]}):null]})]})})})})}export{$l as MyStore,$l as default};
|
|
2176
|
+
//# sourceMappingURL=MyStore-DWlwF62V.js.map
|