@dcl/landing-site 0.5.1-24676306976.commit-32f8f97 → 0.5.1-24686484792.commit-e56f2bf

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (182) hide show
  1. package/assets/{AnimatedBackground-dcjrq3Hb.js → AnimatedBackground-BbbuCmrW.js} +2 -2
  2. package/assets/{AnimatedBackground-dcjrq3Hb.js.map → AnimatedBackground-BbbuCmrW.js.map} +1 -1
  3. package/assets/{AnimatedSection-DcOoZ95V.js → AnimatedSection-CcAt5h6R.js} +1 -1
  4. package/assets/{AnimatedSection-DcOoZ95V.js.map → AnimatedSection-CcAt5h6R.js.map} +1 -1
  5. package/assets/{ArrowBackIosNew-Dn-9PDt-.js → ArrowBackIosNew-lqzUFZQL.js} +1 -1
  6. package/assets/{ArrowBackIosNew-Dn-9PDt-.js.map → ArrowBackIosNew-lqzUFZQL.js.map} +1 -1
  7. package/assets/{AuthorPage-f97GOPMA.js → AuthorPage-4inFQH2X.js} +1 -1
  8. package/assets/{AuthorPage-f97GOPMA.js.map → AuthorPage-4inFQH2X.js.map} +1 -1
  9. package/assets/{Badges-BpJgPUyV.js → Badges-DPcq_7dC.js} +1 -1
  10. package/assets/{Badges-BpJgPUyV.js.map → Badges-DPcq_7dC.js.map} +1 -1
  11. package/assets/{BlogLayout-fQyF80O7.js → BlogLayout-Bl9FID_L.js} +1 -1
  12. package/assets/{BlogLayout-fQyF80O7.js.map → BlogLayout-Bl9FID_L.js.map} +1 -1
  13. package/assets/{BlogPage-D-7bU7Ll.js → BlogPage-4c8ZFzdw.js} +1 -1
  14. package/assets/{BlogPage-D-7bU7Ll.js.map → BlogPage-4c8ZFzdw.js.map} +1 -1
  15. package/assets/{CTAButton-BrHntZLo.js → CTAButton-D8_9d6Wu.js} +1 -1
  16. package/assets/{CTAButton-BrHntZLo.js.map → CTAButton-D8_9d6Wu.js.map} +1 -1
  17. package/assets/{CardContent-BIfXh0wk.js → CardContent-BQ0iSa2p.js} +1 -1
  18. package/assets/{CardContent-BIfXh0wk.js.map → CardContent-BQ0iSa2p.js.map} +1 -1
  19. package/assets/{CardMedia-BH9g0LEk.js → CardMedia-B6PneSTk.js} +1 -1
  20. package/assets/{CardMedia-BH9g0LEk.js.map → CardMedia-B6PneSTk.js.map} +1 -1
  21. package/assets/{Carousel-DvX_HfdZ.js → Carousel-DJd7E-wq.js} +1 -1
  22. package/assets/{Carousel-DvX_HfdZ.js.map → Carousel-DJd7E-wq.js.map} +1 -1
  23. package/assets/{CategoryPage-CH1WRgbC.js → CategoryPage-DNQI3nXz.js} +1 -1
  24. package/assets/{CategoryPage-CH1WRgbC.js.map → CategoryPage-DNQI3nXz.js.map} +1 -1
  25. package/assets/{CircleAndArrow-5tP5OYot.js → CircleAndArrow-DIeWRbH9.js} +1 -1
  26. package/assets/{CircleAndArrow-5tP5OYot.js.map → CircleAndArrow-DIeWRbH9.js.map} +1 -1
  27. package/assets/{CircularProgress-Bi5r1ZmM.js → CircularProgress-AsNM1BvH.js} +1 -1
  28. package/assets/{CircularProgress-Bi5r1ZmM.js.map → CircularProgress-AsNM1BvH.js.map} +1 -1
  29. package/assets/{ContentCopy-oX-8qyhW.js → ContentCopy-CDhBZqHF.js} +1 -1
  30. package/assets/{ContentCopy-oX-8qyhW.js.map → ContentCopy-CDhBZqHF.js.map} +1 -1
  31. package/assets/{CreateEventPage-nDxfw2qB.js → CreateEventPage-NcQUT47j.js} +1 -1
  32. package/assets/{CreateEventPage-nDxfw2qB.js.map → CreateEventPage-NcQUT47j.js.map} +1 -1
  33. package/assets/{CreatorHubDownload-LwI4JZRK.js → CreatorHubDownload-y9x_B8ll.js} +1 -1
  34. package/assets/{CreatorHubDownload-LwI4JZRK.js.map → CreatorHubDownload-y9x_B8ll.js.map} +1 -1
  35. package/assets/{CreatorHubDownloadSuccess-mbihmO3P.js → CreatorHubDownloadSuccess-BP7MSbSp.js} +1 -1
  36. package/assets/{CreatorHubDownloadSuccess-mbihmO3P.js.map → CreatorHubDownloadSuccess-BP7MSbSp.js.map} +1 -1
  37. package/assets/{DappsShell-D7P6uq6M.js → DappsShell-HNAsXcn5.js} +1 -1
  38. package/assets/{DappsShell-D7P6uq6M.js.map → DappsShell-HNAsXcn5.js.map} +1 -1
  39. package/assets/{DownloadSuccessLayout-BzbsrQCo.js → DownloadSuccessLayout-COBp7A1N.js} +1 -1
  40. package/assets/{DownloadSuccessLayout-BzbsrQCo.js.map → DownloadSuccessLayout-COBp7A1N.js.map} +1 -1
  41. package/assets/{Grow-DI7E9jMT.js → Grow-eKASrvPe.js} +1 -1
  42. package/assets/{Grow-DI7E9jMT.js.map → Grow-eKASrvPe.js.map} +1 -1
  43. package/assets/HomePage-CZwkfB5G.js +3 -0
  44. package/assets/HomePage-CZwkfB5G.js.map +1 -0
  45. package/assets/{InviteFaqs-BX1-mTcI.js → InviteFaqs-BkOvxqyN.js} +1 -1
  46. package/assets/{InviteFaqs-BX1-mTcI.js.map → InviteFaqs-BkOvxqyN.js.map} +1 -1
  47. package/assets/{InvitePage-DzjBtcFR.js → InvitePage-D5lELZNP.js} +2 -2
  48. package/assets/{InvitePage-DzjBtcFR.js.map → InvitePage-D5lELZNP.js.map} +1 -1
  49. package/assets/{JumpInIcon-XhbTBoY-.js → JumpInIcon-bPOWl5ae.js} +1 -1
  50. package/assets/{JumpInIcon-XhbTBoY-.js.map → JumpInIcon-bPOWl5ae.js.map} +1 -1
  51. package/assets/{LegalPageLayout-PNgx2stH.js → LegalPageLayout-DeH35WpT.js} +1 -1
  52. package/assets/{LegalPageLayout-PNgx2stH.js.map → LegalPageLayout-DeH35WpT.js.map} +1 -1
  53. package/assets/{Link-BXRsbP2-.js → Link-C3GGl2C6.js} +1 -1
  54. package/assets/{Link-BXRsbP2-.js.map → Link-C3GGl2C6.js.map} +1 -1
  55. package/assets/{MenuItem-Clk60JBW.js → MenuItem-B0piwgTa.js} +1 -1
  56. package/assets/{MenuItem-Clk60JBW.js.map → MenuItem-B0piwgTa.js.map} +1 -1
  57. package/assets/{Paper-ECb0Xsu2.js → Paper-BfSYUoim.js} +1 -1
  58. package/assets/{Paper-ECb0Xsu2.js.map → Paper-BfSYUoim.js.map} +1 -1
  59. package/assets/{PostCard-f81875cD.js → PostCard-Zsk0_WYz.js} +1 -1
  60. package/assets/{PostCard-f81875cD.js.map → PostCard-Zsk0_WYz.js.map} +1 -1
  61. package/assets/{PostPage-Cs4pLVTx.js → PostPage-FBb63V37.js} +1 -1
  62. package/assets/{PostPage-Cs4pLVTx.js.map → PostPage-FBb63V37.js.map} +1 -1
  63. package/assets/{PostPage.styled-VLSekVON.js → PostPage.styled-B7Xofl3c.js} +3 -3
  64. package/assets/{PostPage.styled-VLSekVON.js.map → PostPage.styled-B7Xofl3c.js.map} +1 -1
  65. package/assets/{PreviewPage-cynFTjak.js → PreviewPage-Dla6vQZW.js} +1 -1
  66. package/assets/{PreviewPage-cynFTjak.js.map → PreviewPage-Dla6vQZW.js.map} +1 -1
  67. package/assets/{SEO-YDqyOXs4.js → SEO-CGGKu_zm.js} +1 -1
  68. package/assets/{SEO-YDqyOXs4.js.map → SEO-CGGKu_zm.js.map} +1 -1
  69. package/assets/{SearchPage-DVmJu_R7.js → SearchPage-ByMcz1c8.js} +1 -1
  70. package/assets/{SearchPage-DVmJu_R7.js.map → SearchPage-ByMcz1c8.js.map} +1 -1
  71. package/assets/{SignInRedirect-CBRz5buy.js → SignInRedirect-BNwfxyGB.js} +1 -1
  72. package/assets/{SignInRedirect-CBRz5buy.js.map → SignInRedirect-BNwfxyGB.js.map} +1 -1
  73. package/assets/{SignInRedirect-D4M7f1v0.js → SignInRedirect-Bxl1dwag.js} +1 -1
  74. package/assets/{SignInRedirect-D4M7f1v0.js.map → SignInRedirect-Bxl1dwag.js.map} +1 -1
  75. package/assets/{Skeleton-DqCnSDlA.js → Skeleton-BP1Os8gY.js} +1 -1
  76. package/assets/{Skeleton-DqCnSDlA.js.map → Skeleton-BP1Os8gY.js.map} +1 -1
  77. package/assets/{TwitterEmbed-CeWfRgEL.js → TwitterEmbed-BbSYYog-.js} +1 -1
  78. package/assets/{TwitterEmbed-CeWfRgEL.js.map → TwitterEmbed-BbSYYog-.js.map} +1 -1
  79. package/assets/{Video-CuR4cgxQ.js → Video--A0fBGqz.js} +1 -1
  80. package/assets/{Video-CuR4cgxQ.js.map → Video--A0fBGqz.js.map} +1 -1
  81. package/assets/{WearablePreview-BeBKKCQq.js → WearablePreview-KunRQByO.js} +1 -1
  82. package/assets/{WearablePreview-BeBKKCQq.js.map → WearablePreview-KunRQByO.js.map} +1 -1
  83. package/assets/{auto-track-BrVpOTAy.js → auto-track-DJw7KsLA.js} +1 -1
  84. package/assets/{auto-track-BrVpOTAy.js.map → auto-track-DJw7KsLA.js.map} +1 -1
  85. package/assets/{ccip-bYpzfsa2.js → ccip-EHA4QwVS.js} +1 -1
  86. package/assets/{ccip-bYpzfsa2.js.map → ccip-EHA4QwVS.js.map} +1 -1
  87. package/assets/{createSvgIcon-MBeMKPZF.js → createSvgIcon-CnAtXIjx.js} +1 -1
  88. package/assets/{createSvgIcon-MBeMKPZF.js.map → createSvgIcon-CnAtXIjx.js.map} +1 -1
  89. package/assets/{download-rD4GIwoM.js → download-Csh0UAX4.js} +2 -2
  90. package/assets/{download-rD4GIwoM.js.map → download-Csh0UAX4.js.map} +1 -1
  91. package/assets/{downloadWithIdentity-BJa06ukv.js → downloadWithIdentity-imzC-1Iy.js} +1 -1
  92. package/assets/{downloadWithIdentity-BJa06ukv.js.map → downloadWithIdentity-imzC-1Iy.js.map} +1 -1
  93. package/assets/{events.client-BFY0iJFt.js → events.client-BypQp_hx.js} +1 -1
  94. package/assets/{events.client-BFY0iJFt.js.map → events.client-BypQp_hx.js.map} +1 -1
  95. package/assets/{index-LdEjKMJm.js → index-0VgKmd34.js} +1 -1
  96. package/assets/{index-LdEjKMJm.js.map → index-0VgKmd34.js.map} +1 -1
  97. package/assets/{index-DA6agk-w.js → index-B-PLjKpI.js} +1 -1
  98. package/assets/{index-DA6agk-w.js.map → index-B-PLjKpI.js.map} +1 -1
  99. package/assets/{index-CucSFK-C.js → index-BKY10VNY.js} +1 -1
  100. package/assets/{index-CucSFK-C.js.map → index-BKY10VNY.js.map} +1 -1
  101. package/assets/{index-DKVTiJAQ.js → index-BO6ciUn8.js} +1 -1
  102. package/assets/{index-DKVTiJAQ.js.map → index-BO6ciUn8.js.map} +1 -1
  103. package/assets/{index-BmfSApNy.js → index-BVu5N7d0.js} +1 -1
  104. package/assets/{index-BmfSApNy.js.map → index-BVu5N7d0.js.map} +1 -1
  105. package/assets/{index-ixBvnV4g.js → index-BaEE4ZXP.js} +1 -1
  106. package/assets/{index-ixBvnV4g.js.map → index-BaEE4ZXP.js.map} +1 -1
  107. package/assets/{index-CvqSSkkA.js → index-Bd63106P.js} +1 -1
  108. package/assets/{index-CvqSSkkA.js.map → index-Bd63106P.js.map} +1 -1
  109. package/assets/{index-D8eIOYu-.js → index-Bfn0rTR9.js} +1 -1
  110. package/assets/{index-D8eIOYu-.js.map → index-Bfn0rTR9.js.map} +1 -1
  111. package/assets/{index-Ehyw5K2U.js → index-Bq7PojkE.js} +1 -1
  112. package/assets/{index-Ehyw5K2U.js.map → index-Bq7PojkE.js.map} +1 -1
  113. package/assets/{index-DO6Sw93x.js → index-BtL1Whr6.js} +1 -1
  114. package/assets/{index-DO6Sw93x.js.map → index-BtL1Whr6.js.map} +1 -1
  115. package/assets/{index-B87wYcCv.js → index-BzmWmDt2.js} +1 -1
  116. package/assets/{index-B87wYcCv.js.map → index-BzmWmDt2.js.map} +1 -1
  117. package/assets/{index-DvZ_ojLV.js → index-C1apFG92.js} +1 -1
  118. package/assets/{index-DvZ_ojLV.js.map → index-C1apFG92.js.map} +1 -1
  119. package/assets/{index-C59PJ30r.js → index-CC8b5SLA.js} +1 -1
  120. package/assets/{index-C59PJ30r.js.map → index-CC8b5SLA.js.map} +1 -1
  121. package/assets/{index-JMsb3O6_.js → index-CJ9b6HdV.js} +1 -1
  122. package/assets/{index-JMsb3O6_.js.map → index-CJ9b6HdV.js.map} +1 -1
  123. package/assets/{index-CVkIGuJf.js → index-CXMTgMUj.js} +1 -1
  124. package/assets/{index-CVkIGuJf.js.map → index-CXMTgMUj.js.map} +1 -1
  125. package/assets/{index-Bh2xF13d.js → index-CfKiEnnb.js} +1 -1
  126. package/assets/{index-Bh2xF13d.js.map → index-CfKiEnnb.js.map} +1 -1
  127. package/assets/{index-C8J0j1MA.js → index-CqU_IKja.js} +1 -1
  128. package/assets/{index-C8J0j1MA.js.map → index-CqU_IKja.js.map} +1 -1
  129. package/assets/{index-HwZ6yI5O.js → index-CsY_wahP.js} +1 -1
  130. package/assets/{index-HwZ6yI5O.js.map → index-CsY_wahP.js.map} +1 -1
  131. package/assets/{index-B0nEp5pe.js → index-DIU7xr_7.js} +1 -1
  132. package/assets/{index-B0nEp5pe.js.map → index-DIU7xr_7.js.map} +1 -1
  133. package/assets/index-DJdpP3iF.js +1 -0
  134. package/assets/{index-BRS077OT.js.map → index-DJdpP3iF.js.map} +1 -1
  135. package/assets/{index-Cjx-6-Fc.js → index-DUmIu2EK.js} +37 -37
  136. package/assets/index-DUmIu2EK.js.map +1 -0
  137. package/assets/{index-Bi70CJ5H.js → index-DV8UooZK.js} +1 -1
  138. package/assets/{index-Bi70CJ5H.js.map → index-DV8UooZK.js.map} +1 -1
  139. package/assets/{index-BrHnK0XL.js → index-DW87VeBc.js} +1 -1
  140. package/assets/{index-BrHnK0XL.js.map → index-DW87VeBc.js.map} +1 -1
  141. package/assets/{index-B_5wi7CL.js → index-DwKCx_Fj.js} +4 -4
  142. package/assets/{index-B_5wi7CL.js.map → index-DwKCx_Fj.js.map} +1 -1
  143. package/assets/{index-45xDJN7P.js → index-Dx9lzInm.js} +1 -1
  144. package/assets/{index-45xDJN7P.js.map → index-Dx9lzInm.js.map} +1 -1
  145. package/assets/{index-DzuMEVEG.js → index-FcfsIuei.js} +1 -1
  146. package/assets/{index-DzuMEVEG.js.map → index-FcfsIuei.js.map} +1 -1
  147. package/assets/{index-DlTsCRKG.js → index-Hs2OtJ7_.js} +1 -1
  148. package/assets/{index-DlTsCRKG.js.map → index-Hs2OtJ7_.js.map} +1 -1
  149. package/assets/{index-D66EdcHn.js → index-KkMZZ6nz.js} +1 -1
  150. package/assets/{index-D66EdcHn.js.map → index-KkMZZ6nz.js.map} +1 -1
  151. package/assets/{index-DTGLVE4U.js → index-XwRFjo-F.js} +3 -3
  152. package/assets/{index-DTGLVE4U.js.map → index-XwRFjo-F.js.map} +1 -1
  153. package/assets/{index-BMdtB9Qi.js → index-fmnLygLZ.js} +1 -1
  154. package/assets/{index-BMdtB9Qi.js.map → index-fmnLygLZ.js.map} +1 -1
  155. package/assets/{index-D-pfpn_u.js → index-iTL2dY0l.js} +1 -1
  156. package/assets/{index-D-pfpn_u.js.map → index-iTL2dY0l.js.map} +1 -1
  157. package/assets/{index-B8Zt542v.js → index-pguZ7Pr7.js} +2 -2
  158. package/assets/{index-B8Zt542v.js.map → index-pguZ7Pr7.js.map} +1 -1
  159. package/assets/{profile.client-BWiq_PR5.js → profile.client-BtZZbgxj.js} +1 -1
  160. package/assets/{profile.client-BWiq_PR5.js.map → profile.client-BtZZbgxj.js.map} +1 -1
  161. package/assets/{shared.styled-0h-n1b2G.js → shared.styled-D8qloAmp.js} +1 -1
  162. package/assets/{shared.styled-0h-n1b2G.js.map → shared.styled-D8qloAmp.js.map} +1 -1
  163. package/assets/{store-CvBDcx_Y.js → store-OyTPwmKI.js} +1 -1
  164. package/assets/{store-CvBDcx_Y.js.map → store-OyTPwmKI.js.map} +1 -1
  165. package/assets/{url-N3MWyY77.js → url-BHzlJYXC.js} +1 -1
  166. package/assets/{url-N3MWyY77.js.map → url-BHzlJYXC.js.map} +1 -1
  167. package/assets/{useAuthIdentity-BqEUIFS1.js → useAuthIdentity-D2zQ3q5X.js} +1 -1
  168. package/assets/{useAuthIdentity-BqEUIFS1.js.map → useAuthIdentity-D2zQ3q5X.js.map} +1 -1
  169. package/assets/{useCreatorHubDownload-DKX_IEAb.js → useCreatorHubDownload-Dp_zMaiv.js} +1 -1
  170. package/assets/{useCreatorHubDownload-DKX_IEAb.js.map → useCreatorHubDownload-Dp_zMaiv.js.map} +1 -1
  171. package/assets/{useInfiniteBlogPosts-NFRpaD6I.js → useInfiniteBlogPosts-B9Mv_Fup.js} +1 -1
  172. package/assets/{useInfiniteBlogPosts-NFRpaD6I.js.map → useInfiniteBlogPosts-B9Mv_Fup.js.map} +1 -1
  173. package/assets/{useSlot-BHWpNc8A.js → useSlot-DM_UQPu8.js} +1 -1
  174. package/assets/{useSlot-BHWpNc8A.js.map → useSlot-DM_UQPu8.js.map} +1 -1
  175. package/assets/{utils-BrNrgyfy.js → utils-CJGePSnj.js} +1 -1
  176. package/assets/{utils-BrNrgyfy.js.map → utils-CJGePSnj.js.map} +1 -1
  177. package/index.html +15 -15
  178. package/package.json +3 -3
  179. package/assets/HomePage-CIPkOlhD.js +0 -3
  180. package/assets/HomePage-CIPkOlhD.js.map +0 -1
  181. package/assets/index-BRS077OT.js +0 -1
  182. package/assets/index-Cjx-6-Fc.js.map +0 -1
@@ -1 +1 @@
1
- import{p as m}from"./index-B8Zt542v.js";import"./index-Cjx-6-Fc.js";import"./vendor-router-D_36sTKu.js";import"./vendor-sentry-BSvWNK4f.js";import"./vendor-crypto-uuuQA3i5.js";import"./vendor-schemas-DJzTSxpO.js";import"./vendor-ua-D7qqAxdq.js";import"./vendor-intl-D2lXWsDp.js";function d(t){var r=t;return!!(r.ctrlKey||r.shiftKey||r.metaKey||r.button&&r.button==1)}function b(t,r){return!!(t.target==="_blank"&&r)}function F(t,r,e,i){var f=this,u=[];return t?(t instanceof Element?u=[t]:"toArray"in t?u=t.toArray():u=t,u.forEach(function(n){n.addEventListener("click",function(a){var c,o,s=r instanceof Function?r(n):r,v=e instanceof Function?e(n):e,h=n.getAttribute("href")||n.getAttributeNS("http://www.w3.org/1999/xlink","href")||n.getAttribute("xlink:href")||((c=n.getElementsByTagName("a")[0])===null||c===void 0?void 0:c.getAttribute("href")),l=m(f.track(s,v,i??{}),(o=f.settings.timeout)!==null&&o!==void 0?o:500);!b(n,h)&&!d(a)&&h&&(a.preventDefault?a.preventDefault():a.returnValue=!1,l.catch(console.error).then(function(){window.location.href=h}).catch(console.error))},!1)}),this):this}function _(t,r,e,i){var f=this;if(!t)return this;t instanceof HTMLFormElement&&(t=[t]);var u=t;return u.forEach(function(n){if(!(n instanceof Element))throw new TypeError("Must pass HTMLElement to trackForm/trackSubmit.");var a=function(o){var s;o.preventDefault?o.preventDefault():o.returnValue=!1;var v=r instanceof Function?r(n):r,h=e instanceof Function?e(n):e,l=m(f.track(v,h,i??{}),(s=f.settings.timeout)!==null&&s!==void 0?s:500);l.catch(console.error).then(function(){n.submit()}).catch(console.error)},c=window.jQuery||window.Zepto;c?c(n).submit(a):n.addEventListener("submit",a,!1)}),this}export{_ as form,F as link};
1
+ import{p as m}from"./index-pguZ7Pr7.js";import"./index-DUmIu2EK.js";import"./vendor-router-D_36sTKu.js";import"./vendor-sentry-BSvWNK4f.js";import"./vendor-crypto-uuuQA3i5.js";import"./vendor-schemas-DJzTSxpO.js";import"./vendor-ua-D7qqAxdq.js";import"./vendor-intl-D2lXWsDp.js";function d(t){var r=t;return!!(r.ctrlKey||r.shiftKey||r.metaKey||r.button&&r.button==1)}function b(t,r){return!!(t.target==="_blank"&&r)}function F(t,r,e,i){var f=this,u=[];return t?(t instanceof Element?u=[t]:"toArray"in t?u=t.toArray():u=t,u.forEach(function(n){n.addEventListener("click",function(a){var c,o,s=r instanceof Function?r(n):r,v=e instanceof Function?e(n):e,h=n.getAttribute("href")||n.getAttributeNS("http://www.w3.org/1999/xlink","href")||n.getAttribute("xlink:href")||((c=n.getElementsByTagName("a")[0])===null||c===void 0?void 0:c.getAttribute("href")),l=m(f.track(s,v,i??{}),(o=f.settings.timeout)!==null&&o!==void 0?o:500);!b(n,h)&&!d(a)&&h&&(a.preventDefault?a.preventDefault():a.returnValue=!1,l.catch(console.error).then(function(){window.location.href=h}).catch(console.error))},!1)}),this):this}function _(t,r,e,i){var f=this;if(!t)return this;t instanceof HTMLFormElement&&(t=[t]);var u=t;return u.forEach(function(n){if(!(n instanceof Element))throw new TypeError("Must pass HTMLElement to trackForm/trackSubmit.");var a=function(o){var s;o.preventDefault?o.preventDefault():o.returnValue=!1;var v=r instanceof Function?r(n):r,h=e instanceof Function?e(n):e,l=m(f.track(v,h,i??{}),(s=f.settings.timeout)!==null&&s!==void 0?s:500);l.catch(console.error).then(function(){n.submit()}).catch(console.error)},c=window.jQuery||window.Zepto;c?c(n).submit(a):n.addEventListener("submit",a,!1)}),this}export{_ as form,F as link};
@@ -1 +1 @@
1
- {"version":3,"file":"auto-track-BrVpOTAy.js","sources":["../../node_modules/@segment/analytics-next/dist/pkg/core/auto-track.js"],"sourcesContent":["import { pTimeout } from './callback';\n// Check if a user is opening the link in a new tab\nfunction userNewTab(event) {\n var typedEvent = event;\n if (typedEvent.ctrlKey ||\n typedEvent.shiftKey ||\n typedEvent.metaKey ||\n (typedEvent.button && typedEvent.button == 1)) {\n return true;\n }\n return false;\n}\n// Check if the link opens in new tab\nfunction linkNewTab(element, href) {\n if (element.target === '_blank' && href) {\n return true;\n }\n return false;\n}\nexport function link(links, event, properties, options) {\n var _this = this;\n var elements = [];\n // always arrays, handles jquery\n if (!links) {\n return this;\n }\n if (links instanceof Element) {\n elements = [links];\n }\n else if ('toArray' in links) {\n elements = links.toArray();\n }\n else {\n elements = links;\n }\n elements.forEach(function (el) {\n el.addEventListener('click', function (elementEvent) {\n var _a, _b;\n var ev = event instanceof Function ? event(el) : event;\n var props = properties instanceof Function ? properties(el) : properties;\n var href = el.getAttribute('href') ||\n el.getAttributeNS('http://www.w3.org/1999/xlink', 'href') ||\n el.getAttribute('xlink:href') ||\n ((_a = el.getElementsByTagName('a')[0]) === null || _a === void 0 ? void 0 : _a.getAttribute('href'));\n var trackEvent = pTimeout(_this.track(ev, props, options !== null && options !== void 0 ? options : {}), (_b = _this.settings.timeout) !== null && _b !== void 0 ? _b : 500);\n if (!linkNewTab(el, href) &&\n !userNewTab(elementEvent)) {\n if (href) {\n elementEvent.preventDefault\n ? elementEvent.preventDefault()\n : (elementEvent.returnValue = false);\n trackEvent\n .catch(console.error)\n .then(function () {\n window.location.href = href;\n })\n .catch(console.error);\n }\n }\n }, false);\n });\n return this;\n}\nexport function form(forms, event, properties, options) {\n var _this = this;\n // always arrays, handles jquery\n if (!forms)\n return this;\n if (forms instanceof HTMLFormElement)\n forms = [forms];\n var elements = forms;\n elements.forEach(function (el) {\n if (!(el instanceof Element))\n throw new TypeError('Must pass HTMLElement to trackForm/trackSubmit.');\n var handler = function (elementEvent) {\n var _a;\n elementEvent.preventDefault\n ? elementEvent.preventDefault()\n : (elementEvent.returnValue = false);\n var ev = event instanceof Function ? event(el) : event;\n var props = properties instanceof Function ? properties(el) : properties;\n var trackEvent = pTimeout(_this.track(ev, props, options !== null && options !== void 0 ? options : {}), (_a = _this.settings.timeout) !== null && _a !== void 0 ? _a : 500);\n trackEvent\n .catch(console.error)\n .then(function () {\n el.submit();\n })\n .catch(console.error);\n };\n // Support the events happening through jQuery or Zepto instead of through\n // the normal DOM API, because `el.submit` doesn't bubble up events...\n var $ = window.jQuery || window.Zepto;\n if ($) {\n $(el).submit(handler);\n }\n else {\n // eslint-disable-next-line @typescript-eslint/no-misused-promises\n el.addEventListener('submit', handler, false);\n }\n });\n return this;\n}\n//# sourceMappingURL=auto-track.js.map"],"names":["userNewTab","event","typedEvent","linkNewTab","element","href","link","links","properties","options","_this","elements","el","elementEvent","_a","_b","ev","props","trackEvent","pTimeout","form","forms","handler","$"],"mappings":"uRAEA,SAASA,EAAWC,EAAO,CACvB,IAAIC,EAAaD,EACjB,MAAI,GAAAC,EAAW,SACXA,EAAW,UACXA,EAAW,SACVA,EAAW,QAAUA,EAAW,QAAU,EAInD,CAEA,SAASC,EAAWC,EAASC,EAAM,CAC/B,MAAI,GAAAD,EAAQ,SAAW,UAAYC,EAIvC,CACO,SAASC,EAAKC,EAAON,EAAOO,EAAYC,EAAS,CACpD,IAAIC,EAAQ,KACRC,EAAW,CAAA,EAEf,OAAKJ,GAGDA,aAAiB,QACjBI,EAAW,CAACJ,CAAK,EAEZ,YAAaA,EAClBI,EAAWJ,EAAM,QAAO,EAGxBI,EAAWJ,EAEfI,EAAS,QAAQ,SAAUC,EAAI,CAC3BA,EAAG,iBAAiB,QAAS,SAAUC,EAAc,CACjD,IAAIC,EAAIC,EACJC,EAAKf,aAAiB,SAAWA,EAAMW,CAAE,EAAIX,EAC7CgB,EAAQT,aAAsB,SAAWA,EAAWI,CAAE,EAAIJ,EAC1DH,EAAOO,EAAG,aAAa,MAAM,GAC7BA,EAAG,eAAe,+BAAgC,MAAM,GACxDA,EAAG,aAAa,YAAY,KAC1BE,EAAKF,EAAG,qBAAqB,GAAG,EAAE,CAAC,KAAO,MAAQE,IAAO,OAAS,OAASA,EAAG,aAAa,MAAM,GACnGI,EAAaC,EAAST,EAAM,MAAMM,EAAIC,EAAOR,GAAmD,CAAA,CAAE,GAAIM,EAAKL,EAAM,SAAS,WAAa,MAAQK,IAAO,OAASA,EAAK,GAAG,EACvK,CAACZ,EAAWS,EAAIP,CAAI,GACpB,CAACL,EAAWa,CAAY,GACpBR,IACAQ,EAAa,eACPA,EAAa,eAAc,EAC1BA,EAAa,YAAc,GAClCK,EACK,MAAM,QAAQ,KAAK,EACnB,KAAK,UAAY,CAClB,OAAO,SAAS,KAAOb,CAC3B,CAAC,EACI,MAAM,QAAQ,KAAK,EAGpC,EAAG,EAAK,CACZ,CAAC,EACM,MArCI,IAsCf,CACO,SAASe,EAAKC,EAAOpB,EAAOO,EAAYC,EAAS,CACpD,IAAIC,EAAQ,KAEZ,GAAI,CAACW,EACD,OAAO,KACPA,aAAiB,kBACjBA,EAAQ,CAACA,CAAK,GAClB,IAAIV,EAAWU,EACf,OAAAV,EAAS,QAAQ,SAAUC,EAAI,CAC3B,GAAI,EAAEA,aAAc,SAChB,MAAM,IAAI,UAAU,iDAAiD,EACzE,IAAIU,EAAU,SAAUT,EAAc,CAClC,IAAIC,EACJD,EAAa,eACPA,EAAa,eAAc,EAC1BA,EAAa,YAAc,GAClC,IAAIG,EAAKf,aAAiB,SAAWA,EAAMW,CAAE,EAAIX,EAC7CgB,EAAQT,aAAsB,SAAWA,EAAWI,CAAE,EAAIJ,EAC1DU,EAAaC,EAAST,EAAM,MAAMM,EAAIC,EAAOR,GAAmD,CAAA,CAAE,GAAIK,EAAKJ,EAAM,SAAS,WAAa,MAAQI,IAAO,OAASA,EAAK,GAAG,EAC3KI,EACK,MAAM,QAAQ,KAAK,EACnB,KAAK,UAAY,CAClBN,EAAG,OAAM,CACb,CAAC,EACI,MAAM,QAAQ,KAAK,CAC5B,EAGIW,EAAI,OAAO,QAAU,OAAO,MAC5BA,EACAA,EAAEX,CAAE,EAAE,OAAOU,CAAO,EAIpBV,EAAG,iBAAiB,SAAUU,EAAS,EAAK,CAEpD,CAAC,EACM,IACX","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"auto-track-DJw7KsLA.js","sources":["../../node_modules/@segment/analytics-next/dist/pkg/core/auto-track.js"],"sourcesContent":["import { pTimeout } from './callback';\n// Check if a user is opening the link in a new tab\nfunction userNewTab(event) {\n var typedEvent = event;\n if (typedEvent.ctrlKey ||\n typedEvent.shiftKey ||\n typedEvent.metaKey ||\n (typedEvent.button && typedEvent.button == 1)) {\n return true;\n }\n return false;\n}\n// Check if the link opens in new tab\nfunction linkNewTab(element, href) {\n if (element.target === '_blank' && href) {\n return true;\n }\n return false;\n}\nexport function link(links, event, properties, options) {\n var _this = this;\n var elements = [];\n // always arrays, handles jquery\n if (!links) {\n return this;\n }\n if (links instanceof Element) {\n elements = [links];\n }\n else if ('toArray' in links) {\n elements = links.toArray();\n }\n else {\n elements = links;\n }\n elements.forEach(function (el) {\n el.addEventListener('click', function (elementEvent) {\n var _a, _b;\n var ev = event instanceof Function ? event(el) : event;\n var props = properties instanceof Function ? properties(el) : properties;\n var href = el.getAttribute('href') ||\n el.getAttributeNS('http://www.w3.org/1999/xlink', 'href') ||\n el.getAttribute('xlink:href') ||\n ((_a = el.getElementsByTagName('a')[0]) === null || _a === void 0 ? void 0 : _a.getAttribute('href'));\n var trackEvent = pTimeout(_this.track(ev, props, options !== null && options !== void 0 ? options : {}), (_b = _this.settings.timeout) !== null && _b !== void 0 ? _b : 500);\n if (!linkNewTab(el, href) &&\n !userNewTab(elementEvent)) {\n if (href) {\n elementEvent.preventDefault\n ? elementEvent.preventDefault()\n : (elementEvent.returnValue = false);\n trackEvent\n .catch(console.error)\n .then(function () {\n window.location.href = href;\n })\n .catch(console.error);\n }\n }\n }, false);\n });\n return this;\n}\nexport function form(forms, event, properties, options) {\n var _this = this;\n // always arrays, handles jquery\n if (!forms)\n return this;\n if (forms instanceof HTMLFormElement)\n forms = [forms];\n var elements = forms;\n elements.forEach(function (el) {\n if (!(el instanceof Element))\n throw new TypeError('Must pass HTMLElement to trackForm/trackSubmit.');\n var handler = function (elementEvent) {\n var _a;\n elementEvent.preventDefault\n ? elementEvent.preventDefault()\n : (elementEvent.returnValue = false);\n var ev = event instanceof Function ? event(el) : event;\n var props = properties instanceof Function ? properties(el) : properties;\n var trackEvent = pTimeout(_this.track(ev, props, options !== null && options !== void 0 ? options : {}), (_a = _this.settings.timeout) !== null && _a !== void 0 ? _a : 500);\n trackEvent\n .catch(console.error)\n .then(function () {\n el.submit();\n })\n .catch(console.error);\n };\n // Support the events happening through jQuery or Zepto instead of through\n // the normal DOM API, because `el.submit` doesn't bubble up events...\n var $ = window.jQuery || window.Zepto;\n if ($) {\n $(el).submit(handler);\n }\n else {\n // eslint-disable-next-line @typescript-eslint/no-misused-promises\n el.addEventListener('submit', handler, false);\n }\n });\n return this;\n}\n//# sourceMappingURL=auto-track.js.map"],"names":["userNewTab","event","typedEvent","linkNewTab","element","href","link","links","properties","options","_this","elements","el","elementEvent","_a","_b","ev","props","trackEvent","pTimeout","form","forms","handler","$"],"mappings":"uRAEA,SAASA,EAAWC,EAAO,CACvB,IAAIC,EAAaD,EACjB,MAAI,GAAAC,EAAW,SACXA,EAAW,UACXA,EAAW,SACVA,EAAW,QAAUA,EAAW,QAAU,EAInD,CAEA,SAASC,EAAWC,EAASC,EAAM,CAC/B,MAAI,GAAAD,EAAQ,SAAW,UAAYC,EAIvC,CACO,SAASC,EAAKC,EAAON,EAAOO,EAAYC,EAAS,CACpD,IAAIC,EAAQ,KACRC,EAAW,CAAA,EAEf,OAAKJ,GAGDA,aAAiB,QACjBI,EAAW,CAACJ,CAAK,EAEZ,YAAaA,EAClBI,EAAWJ,EAAM,QAAO,EAGxBI,EAAWJ,EAEfI,EAAS,QAAQ,SAAUC,EAAI,CAC3BA,EAAG,iBAAiB,QAAS,SAAUC,EAAc,CACjD,IAAIC,EAAIC,EACJC,EAAKf,aAAiB,SAAWA,EAAMW,CAAE,EAAIX,EAC7CgB,EAAQT,aAAsB,SAAWA,EAAWI,CAAE,EAAIJ,EAC1DH,EAAOO,EAAG,aAAa,MAAM,GAC7BA,EAAG,eAAe,+BAAgC,MAAM,GACxDA,EAAG,aAAa,YAAY,KAC1BE,EAAKF,EAAG,qBAAqB,GAAG,EAAE,CAAC,KAAO,MAAQE,IAAO,OAAS,OAASA,EAAG,aAAa,MAAM,GACnGI,EAAaC,EAAST,EAAM,MAAMM,EAAIC,EAAOR,GAAmD,CAAA,CAAE,GAAIM,EAAKL,EAAM,SAAS,WAAa,MAAQK,IAAO,OAASA,EAAK,GAAG,EACvK,CAACZ,EAAWS,EAAIP,CAAI,GACpB,CAACL,EAAWa,CAAY,GACpBR,IACAQ,EAAa,eACPA,EAAa,eAAc,EAC1BA,EAAa,YAAc,GAClCK,EACK,MAAM,QAAQ,KAAK,EACnB,KAAK,UAAY,CAClB,OAAO,SAAS,KAAOb,CAC3B,CAAC,EACI,MAAM,QAAQ,KAAK,EAGpC,EAAG,EAAK,CACZ,CAAC,EACM,MArCI,IAsCf,CACO,SAASe,EAAKC,EAAOpB,EAAOO,EAAYC,EAAS,CACpD,IAAIC,EAAQ,KAEZ,GAAI,CAACW,EACD,OAAO,KACPA,aAAiB,kBACjBA,EAAQ,CAACA,CAAK,GAClB,IAAIV,EAAWU,EACf,OAAAV,EAAS,QAAQ,SAAUC,EAAI,CAC3B,GAAI,EAAEA,aAAc,SAChB,MAAM,IAAI,UAAU,iDAAiD,EACzE,IAAIU,EAAU,SAAUT,EAAc,CAClC,IAAIC,EACJD,EAAa,eACPA,EAAa,eAAc,EAC1BA,EAAa,YAAc,GAClC,IAAIG,EAAKf,aAAiB,SAAWA,EAAMW,CAAE,EAAIX,EAC7CgB,EAAQT,aAAsB,SAAWA,EAAWI,CAAE,EAAIJ,EAC1DU,EAAaC,EAAST,EAAM,MAAMM,EAAIC,EAAOR,GAAmD,CAAA,CAAE,GAAIK,EAAKJ,EAAM,SAAS,WAAa,MAAQI,IAAO,OAASA,EAAK,GAAG,EAC3KI,EACK,MAAM,QAAQ,KAAK,EACnB,KAAK,UAAY,CAClBN,EAAG,OAAM,CACb,CAAC,EACI,MAAM,QAAQ,KAAK,CAC5B,EAGIW,EAAI,OAAO,QAAU,OAAO,MAC5BA,EACAA,EAAEX,CAAE,EAAE,OAAOU,CAAO,EAIpBV,EAAG,iBAAiB,SAAUU,EAAS,EAAK,CAEpD,CAAC,EACM,IACX","x_google_ignoreList":[0]}
@@ -1 +1 @@
1
- import{B as u,g as y,s as w,d as k,i as b,l as L,a as O,c as R,b as E,e as x,H as h,f as M}from"./index-B_5wi7CL.js";import"./index-Cjx-6-Fc.js";import"./vendor-router-D_36sTKu.js";import"./vendor-sentry-BSvWNK4f.js";import"./vendor-crypto-uuuQA3i5.js";import"./vendor-schemas-DJzTSxpO.js";import"./vendor-ua-D7qqAxdq.js";import"./vendor-intl-D2lXWsDp.js";import"./profile.client-BWiq_PR5.js";import"./useAuthIdentity-BqEUIFS1.js";class S extends u{constructor({callbackSelector:s,cause:e,data:o,extraData:n,sender:c,urls:t}){super(e.shortMessage||"An error occurred while fetching for an offchain result.",{cause:e,metaMessages:[...e.metaMessages||[],e.metaMessages?.length?"":[],"Offchain Gateway Call:",t&&[" Gateway URL(s):",...t.map(i=>` ${y(i)}`)],` Sender: ${c}`,` Data: ${o}`,` Callback selector: ${s}`,` Extra data: ${n}`].flat(),name:"OffchainLookupError"})}}class $ extends u{constructor({result:s,url:e}){super("Offchain gateway response is malformed. Response data must be a hex value.",{metaMessages:[`Gateway URL: ${y(e)}`,`Response: ${w(s)}`],name:"OffchainLookupResponseMalformedError"})}}class q extends u{constructor({sender:s,to:e}){super("Reverted sender address does not match target contract address (`to`).",{metaMessages:[`Contract address: ${e}`,`OffchainLookup sender address: ${s}`],name:"OffchainLookupSenderMismatchError"})}}const F="0x556f1830",T={name:"OffchainLookup",type:"error",inputs:[{name:"sender",type:"address"},{name:"urls",type:"string[]"},{name:"callData",type:"bytes"},{name:"callbackFunction",type:"bytes4"},{name:"extraData",type:"bytes"}]};async function I(d,{blockNumber:s,blockTag:e,data:o,to:n}){const{args:c}=k({data:o,abi:[T]}),[t,i,p,a,r]=c,{ccipRead:l}=d,m=l&&typeof l?.request=="function"?l.request:C;try{if(!b(n,t))throw new q({sender:t,to:n});const f=i.includes(L)?await O({data:p,ccipRequest:m}):await m({data:p,sender:t,urls:i}),{data:g}=await R(d,{blockNumber:s,blockTag:e,data:E([a,x([{type:"bytes"},{type:"bytes"}],[f,r])]),to:n});return g}catch(f){throw new S({callbackSelector:a,cause:f,data:o,extraData:r,sender:t,urls:i})}}async function C({data:d,sender:s,urls:e}){let o=new Error("An unknown error occurred.");for(let n=0;n<e.length;n++){const c=e[n],t=c.includes("{data}")?"GET":"POST",i=t==="POST"?{data:d,sender:s}:void 0,p=t==="POST"?{"Content-Type":"application/json"}:{};try{const a=await fetch(c.replace("{sender}",s.toLowerCase()).replace("{data}",d),{body:JSON.stringify(i),headers:p,method:t});let r;if(a.headers.get("Content-Type")?.startsWith("application/json")?r=(await a.json()).data:r=await a.text(),!a.ok){o=new h({body:i,details:r?.error?w(r.error):a.statusText,headers:a.headers,status:a.status,url:c});continue}if(!M(r)){o=new $({result:r,url:c});continue}return r}catch(a){o=new h({body:i,details:a.message,url:c})}}throw o}export{C as ccipRequest,I as offchainLookup,T as offchainLookupAbiItem,F as offchainLookupSignature};
1
+ import{B as u,g as y,s as w,d as k,i as b,l as L,a as O,c as R,b as E,e as x,H as h,f as M}from"./index-DwKCx_Fj.js";import"./index-DUmIu2EK.js";import"./vendor-router-D_36sTKu.js";import"./vendor-sentry-BSvWNK4f.js";import"./vendor-crypto-uuuQA3i5.js";import"./vendor-schemas-DJzTSxpO.js";import"./vendor-ua-D7qqAxdq.js";import"./vendor-intl-D2lXWsDp.js";import"./profile.client-BtZZbgxj.js";import"./useAuthIdentity-D2zQ3q5X.js";class S extends u{constructor({callbackSelector:s,cause:e,data:o,extraData:n,sender:c,urls:t}){super(e.shortMessage||"An error occurred while fetching for an offchain result.",{cause:e,metaMessages:[...e.metaMessages||[],e.metaMessages?.length?"":[],"Offchain Gateway Call:",t&&[" Gateway URL(s):",...t.map(i=>` ${y(i)}`)],` Sender: ${c}`,` Data: ${o}`,` Callback selector: ${s}`,` Extra data: ${n}`].flat(),name:"OffchainLookupError"})}}class $ extends u{constructor({result:s,url:e}){super("Offchain gateway response is malformed. Response data must be a hex value.",{metaMessages:[`Gateway URL: ${y(e)}`,`Response: ${w(s)}`],name:"OffchainLookupResponseMalformedError"})}}class q extends u{constructor({sender:s,to:e}){super("Reverted sender address does not match target contract address (`to`).",{metaMessages:[`Contract address: ${e}`,`OffchainLookup sender address: ${s}`],name:"OffchainLookupSenderMismatchError"})}}const F="0x556f1830",T={name:"OffchainLookup",type:"error",inputs:[{name:"sender",type:"address"},{name:"urls",type:"string[]"},{name:"callData",type:"bytes"},{name:"callbackFunction",type:"bytes4"},{name:"extraData",type:"bytes"}]};async function I(d,{blockNumber:s,blockTag:e,data:o,to:n}){const{args:c}=k({data:o,abi:[T]}),[t,i,p,a,r]=c,{ccipRead:l}=d,m=l&&typeof l?.request=="function"?l.request:C;try{if(!b(n,t))throw new q({sender:t,to:n});const f=i.includes(L)?await O({data:p,ccipRequest:m}):await m({data:p,sender:t,urls:i}),{data:g}=await R(d,{blockNumber:s,blockTag:e,data:E([a,x([{type:"bytes"},{type:"bytes"}],[f,r])]),to:n});return g}catch(f){throw new S({callbackSelector:a,cause:f,data:o,extraData:r,sender:t,urls:i})}}async function C({data:d,sender:s,urls:e}){let o=new Error("An unknown error occurred.");for(let n=0;n<e.length;n++){const c=e[n],t=c.includes("{data}")?"GET":"POST",i=t==="POST"?{data:d,sender:s}:void 0,p=t==="POST"?{"Content-Type":"application/json"}:{};try{const a=await fetch(c.replace("{sender}",s.toLowerCase()).replace("{data}",d),{body:JSON.stringify(i),headers:p,method:t});let r;if(a.headers.get("Content-Type")?.startsWith("application/json")?r=(await a.json()).data:r=await a.text(),!a.ok){o=new h({body:i,details:r?.error?w(r.error):a.statusText,headers:a.headers,status:a.status,url:c});continue}if(!M(r)){o=new $({result:r,url:c});continue}return r}catch(a){o=new h({body:i,details:a.message,url:c})}}throw o}export{C as ccipRequest,I as offchainLookup,T as offchainLookupAbiItem,F as offchainLookupSignature};
@@ -1 +1 @@
1
- {"version":3,"file":"ccip-bYpzfsa2.js","sources":["../../node_modules/viem/_esm/errors/ccip.js","../../node_modules/viem/_esm/utils/ccip.js"],"sourcesContent":["import { stringify } from '../utils/stringify.js';\nimport { BaseError } from './base.js';\nimport { getUrl } from './utils.js';\nexport class OffchainLookupError extends BaseError {\n constructor({ callbackSelector, cause, data, extraData, sender, urls, }) {\n super(cause.shortMessage ||\n 'An error occurred while fetching for an offchain result.', {\n cause,\n metaMessages: [\n ...(cause.metaMessages || []),\n cause.metaMessages?.length ? '' : [],\n 'Offchain Gateway Call:',\n urls && [\n ' Gateway URL(s):',\n ...urls.map((url) => ` ${getUrl(url)}`),\n ],\n ` Sender: ${sender}`,\n ` Data: ${data}`,\n ` Callback selector: ${callbackSelector}`,\n ` Extra data: ${extraData}`,\n ].flat(),\n name: 'OffchainLookupError',\n });\n }\n}\nexport class OffchainLookupResponseMalformedError extends BaseError {\n constructor({ result, url }) {\n super('Offchain gateway response is malformed. Response data must be a hex value.', {\n metaMessages: [\n `Gateway URL: ${getUrl(url)}`,\n `Response: ${stringify(result)}`,\n ],\n name: 'OffchainLookupResponseMalformedError',\n });\n }\n}\nexport class OffchainLookupSenderMismatchError extends BaseError {\n constructor({ sender, to }) {\n super('Reverted sender address does not match target contract address (`to`).', {\n metaMessages: [\n `Contract address: ${to}`,\n `OffchainLookup sender address: ${sender}`,\n ],\n name: 'OffchainLookupSenderMismatchError',\n });\n }\n}\n//# sourceMappingURL=ccip.js.map","import { call } from '../actions/public/call.js';\nimport { OffchainLookupError, OffchainLookupResponseMalformedError, OffchainLookupSenderMismatchError, } from '../errors/ccip.js';\nimport { HttpRequestError, } from '../errors/request.js';\nimport { decodeErrorResult } from './abi/decodeErrorResult.js';\nimport { encodeAbiParameters } from './abi/encodeAbiParameters.js';\nimport { isAddressEqual } from './address/isAddressEqual.js';\nimport { concat } from './data/concat.js';\nimport { isHex } from './data/isHex.js';\nimport { localBatchGatewayRequest, localBatchGatewayUrl, } from './ens/localBatchGatewayRequest.js';\nimport { stringify } from './stringify.js';\nexport const offchainLookupSignature = '0x556f1830';\nexport const offchainLookupAbiItem = {\n name: 'OffchainLookup',\n type: 'error',\n inputs: [\n {\n name: 'sender',\n type: 'address',\n },\n {\n name: 'urls',\n type: 'string[]',\n },\n {\n name: 'callData',\n type: 'bytes',\n },\n {\n name: 'callbackFunction',\n type: 'bytes4',\n },\n {\n name: 'extraData',\n type: 'bytes',\n },\n ],\n};\nexport async function offchainLookup(client, { blockNumber, blockTag, data, to, }) {\n const { args } = decodeErrorResult({\n data,\n abi: [offchainLookupAbiItem],\n });\n const [sender, urls, callData, callbackSelector, extraData] = args;\n const { ccipRead } = client;\n const ccipRequest_ = ccipRead && typeof ccipRead?.request === 'function'\n ? ccipRead.request\n : ccipRequest;\n try {\n if (!isAddressEqual(to, sender))\n throw new OffchainLookupSenderMismatchError({ sender, to });\n const result = urls.includes(localBatchGatewayUrl)\n ? await localBatchGatewayRequest({\n data: callData,\n ccipRequest: ccipRequest_,\n })\n : await ccipRequest_({ data: callData, sender, urls });\n const { data: data_ } = await call(client, {\n blockNumber,\n blockTag,\n data: concat([\n callbackSelector,\n encodeAbiParameters([{ type: 'bytes' }, { type: 'bytes' }], [result, extraData]),\n ]),\n to,\n });\n return data_;\n }\n catch (err) {\n throw new OffchainLookupError({\n callbackSelector,\n cause: err,\n data,\n extraData,\n sender,\n urls,\n });\n }\n}\nexport async function ccipRequest({ data, sender, urls, }) {\n let error = new Error('An unknown error occurred.');\n for (let i = 0; i < urls.length; i++) {\n const url = urls[i];\n const method = url.includes('{data}') ? 'GET' : 'POST';\n const body = method === 'POST' ? { data, sender } : undefined;\n const headers = method === 'POST' ? { 'Content-Type': 'application/json' } : {};\n try {\n const response = await fetch(url.replace('{sender}', sender.toLowerCase()).replace('{data}', data), {\n body: JSON.stringify(body),\n headers,\n method,\n });\n let result;\n if (response.headers.get('Content-Type')?.startsWith('application/json')) {\n result = (await response.json()).data;\n }\n else {\n result = (await response.text());\n }\n if (!response.ok) {\n error = new HttpRequestError({\n body,\n details: result?.error\n ? stringify(result.error)\n : response.statusText,\n headers: response.headers,\n status: response.status,\n url,\n });\n continue;\n }\n if (!isHex(result)) {\n error = new OffchainLookupResponseMalformedError({\n result,\n url,\n });\n continue;\n }\n return result;\n }\n catch (err) {\n error = new HttpRequestError({\n body,\n details: err.message,\n url,\n });\n }\n }\n throw error;\n}\n//# sourceMappingURL=ccip.js.map"],"names":["OffchainLookupError","BaseError","callbackSelector","cause","data","extraData","sender","urls","url","getUrl","OffchainLookupResponseMalformedError","result","stringify","OffchainLookupSenderMismatchError","to","offchainLookupSignature","offchainLookupAbiItem","offchainLookup","client","blockNumber","blockTag","args","decodeErrorResult","callData","ccipRead","ccipRequest_","ccipRequest","isAddressEqual","localBatchGatewayUrl","localBatchGatewayRequest","data_","call","concat","encodeAbiParameters","err","error","i","method","body","headers","response","HttpRequestError","isHex"],"mappings":"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","x_google_ignoreList":[0,1]}
1
+ {"version":3,"file":"ccip-EHA4QwVS.js","sources":["../../node_modules/viem/_esm/errors/ccip.js","../../node_modules/viem/_esm/utils/ccip.js"],"sourcesContent":["import { stringify } from '../utils/stringify.js';\nimport { BaseError } from './base.js';\nimport { getUrl } from './utils.js';\nexport class OffchainLookupError extends BaseError {\n constructor({ callbackSelector, cause, data, extraData, sender, urls, }) {\n super(cause.shortMessage ||\n 'An error occurred while fetching for an offchain result.', {\n cause,\n metaMessages: [\n ...(cause.metaMessages || []),\n cause.metaMessages?.length ? '' : [],\n 'Offchain Gateway Call:',\n urls && [\n ' Gateway URL(s):',\n ...urls.map((url) => ` ${getUrl(url)}`),\n ],\n ` Sender: ${sender}`,\n ` Data: ${data}`,\n ` Callback selector: ${callbackSelector}`,\n ` Extra data: ${extraData}`,\n ].flat(),\n name: 'OffchainLookupError',\n });\n }\n}\nexport class OffchainLookupResponseMalformedError extends BaseError {\n constructor({ result, url }) {\n super('Offchain gateway response is malformed. Response data must be a hex value.', {\n metaMessages: [\n `Gateway URL: ${getUrl(url)}`,\n `Response: ${stringify(result)}`,\n ],\n name: 'OffchainLookupResponseMalformedError',\n });\n }\n}\nexport class OffchainLookupSenderMismatchError extends BaseError {\n constructor({ sender, to }) {\n super('Reverted sender address does not match target contract address (`to`).', {\n metaMessages: [\n `Contract address: ${to}`,\n `OffchainLookup sender address: ${sender}`,\n ],\n name: 'OffchainLookupSenderMismatchError',\n });\n }\n}\n//# sourceMappingURL=ccip.js.map","import { call } from '../actions/public/call.js';\nimport { OffchainLookupError, OffchainLookupResponseMalformedError, OffchainLookupSenderMismatchError, } from '../errors/ccip.js';\nimport { HttpRequestError, } from '../errors/request.js';\nimport { decodeErrorResult } from './abi/decodeErrorResult.js';\nimport { encodeAbiParameters } from './abi/encodeAbiParameters.js';\nimport { isAddressEqual } from './address/isAddressEqual.js';\nimport { concat } from './data/concat.js';\nimport { isHex } from './data/isHex.js';\nimport { localBatchGatewayRequest, localBatchGatewayUrl, } from './ens/localBatchGatewayRequest.js';\nimport { stringify } from './stringify.js';\nexport const offchainLookupSignature = '0x556f1830';\nexport const offchainLookupAbiItem = {\n name: 'OffchainLookup',\n type: 'error',\n inputs: [\n {\n name: 'sender',\n type: 'address',\n },\n {\n name: 'urls',\n type: 'string[]',\n },\n {\n name: 'callData',\n type: 'bytes',\n },\n {\n name: 'callbackFunction',\n type: 'bytes4',\n },\n {\n name: 'extraData',\n type: 'bytes',\n },\n ],\n};\nexport async function offchainLookup(client, { blockNumber, blockTag, data, to, }) {\n const { args } = decodeErrorResult({\n data,\n abi: [offchainLookupAbiItem],\n });\n const [sender, urls, callData, callbackSelector, extraData] = args;\n const { ccipRead } = client;\n const ccipRequest_ = ccipRead && typeof ccipRead?.request === 'function'\n ? ccipRead.request\n : ccipRequest;\n try {\n if (!isAddressEqual(to, sender))\n throw new OffchainLookupSenderMismatchError({ sender, to });\n const result = urls.includes(localBatchGatewayUrl)\n ? await localBatchGatewayRequest({\n data: callData,\n ccipRequest: ccipRequest_,\n })\n : await ccipRequest_({ data: callData, sender, urls });\n const { data: data_ } = await call(client, {\n blockNumber,\n blockTag,\n data: concat([\n callbackSelector,\n encodeAbiParameters([{ type: 'bytes' }, { type: 'bytes' }], [result, extraData]),\n ]),\n to,\n });\n return data_;\n }\n catch (err) {\n throw new OffchainLookupError({\n callbackSelector,\n cause: err,\n data,\n extraData,\n sender,\n urls,\n });\n }\n}\nexport async function ccipRequest({ data, sender, urls, }) {\n let error = new Error('An unknown error occurred.');\n for (let i = 0; i < urls.length; i++) {\n const url = urls[i];\n const method = url.includes('{data}') ? 'GET' : 'POST';\n const body = method === 'POST' ? { data, sender } : undefined;\n const headers = method === 'POST' ? { 'Content-Type': 'application/json' } : {};\n try {\n const response = await fetch(url.replace('{sender}', sender.toLowerCase()).replace('{data}', data), {\n body: JSON.stringify(body),\n headers,\n method,\n });\n let result;\n if (response.headers.get('Content-Type')?.startsWith('application/json')) {\n result = (await response.json()).data;\n }\n else {\n result = (await response.text());\n }\n if (!response.ok) {\n error = new HttpRequestError({\n body,\n details: result?.error\n ? stringify(result.error)\n : response.statusText,\n headers: response.headers,\n status: response.status,\n url,\n });\n continue;\n }\n if (!isHex(result)) {\n error = new OffchainLookupResponseMalformedError({\n result,\n url,\n });\n continue;\n }\n return result;\n }\n catch (err) {\n error = new HttpRequestError({\n body,\n details: err.message,\n url,\n });\n }\n }\n throw error;\n}\n//# sourceMappingURL=ccip.js.map"],"names":["OffchainLookupError","BaseError","callbackSelector","cause","data","extraData","sender","urls","url","getUrl","OffchainLookupResponseMalformedError","result","stringify","OffchainLookupSenderMismatchError","to","offchainLookupSignature","offchainLookupAbiItem","offchainLookup","client","blockNumber","blockTag","args","decodeErrorResult","callData","ccipRead","ccipRequest_","ccipRequest","isAddressEqual","localBatchGatewayUrl","localBatchGatewayRequest","data_","call","concat","encodeAbiParameters","err","error","i","method","body","headers","response","HttpRequestError","isHex"],"mappings":"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","x_google_ignoreList":[0,1]}
@@ -1 +1 @@
1
- import{S as t,j as s,c}from"./index-Cjx-6-Fc.js";import{r as e}from"./vendor-router-D_36sTKu.js";function f(o,n){function r(a,m){return s.jsx(t,c({"data-testid":`${n}Icon`,ref:m},a,{children:o}))}return r.muiName=t.muiName,e.memo(e.forwardRef(r))}export{f as c};
1
+ import{S as t,j as s,c}from"./index-DUmIu2EK.js";import{r as e}from"./vendor-router-D_36sTKu.js";function f(o,n){function r(a,m){return s.jsx(t,c({"data-testid":`${n}Icon`,ref:m},a,{children:o}))}return r.muiName=t.muiName,e.memo(e.forwardRef(r))}export{f as c};
@@ -1 +1 @@
1
- {"version":3,"file":"createSvgIcon-MBeMKPZF.js","sources":["../../node_modules/decentraland-ui2/node_modules/@mui/material/utils/createSvgIcon.js"],"sourcesContent":["'use client';\n\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nimport * as React from 'react';\nimport SvgIcon from '../SvgIcon';\n\n/**\n * Private module reserved for @mui packages.\n */\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport default function createSvgIcon(path, displayName) {\n function Component(props, ref) {\n return /*#__PURE__*/_jsx(SvgIcon, _extends({\n \"data-testid\": `${displayName}Icon`,\n ref: ref\n }, props, {\n children: path\n }));\n }\n if (process.env.NODE_ENV !== 'production') {\n // Need to set `displayName` on the inner component for React.memo.\n // React prior to 16.14 ignores `displayName` on the wrapper.\n Component.displayName = `${displayName}Icon`;\n }\n Component.muiName = SvgIcon.muiName;\n return /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(Component));\n}"],"names":["createSvgIcon","path","displayName","Component","props","ref","_jsx","SvgIcon","_extends","React.memo","React.forwardRef"],"mappings":"iGAUA,SAAwBA,EAAcC,EAAMC,EAAa,CACvD,SAASC,EAAUC,EAAOC,EAAK,CAC7B,OAAoBC,EAAAA,IAAKC,EAASC,EAAS,CACzC,cAAe,GAAGN,CAAW,OAC7B,IAAAG,CAAA,EACCD,EAAO,CACR,SAAUH,CAAA,CACX,CAAC,CACJ,CAMA,OAAAE,EAAU,QAAUI,EAAQ,QACRE,EAAAA,KAAyBC,aAAiBP,CAAS,CAAC,CAC1E","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"createSvgIcon-CnAtXIjx.js","sources":["../../node_modules/decentraland-ui2/node_modules/@mui/material/utils/createSvgIcon.js"],"sourcesContent":["'use client';\n\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nimport * as React from 'react';\nimport SvgIcon from '../SvgIcon';\n\n/**\n * Private module reserved for @mui packages.\n */\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport default function createSvgIcon(path, displayName) {\n function Component(props, ref) {\n return /*#__PURE__*/_jsx(SvgIcon, _extends({\n \"data-testid\": `${displayName}Icon`,\n ref: ref\n }, props, {\n children: path\n }));\n }\n if (process.env.NODE_ENV !== 'production') {\n // Need to set `displayName` on the inner component for React.memo.\n // React prior to 16.14 ignores `displayName` on the wrapper.\n Component.displayName = `${displayName}Icon`;\n }\n Component.muiName = SvgIcon.muiName;\n return /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(Component));\n}"],"names":["createSvgIcon","path","displayName","Component","props","ref","_jsx","SvgIcon","_extends","React.memo","React.forwardRef"],"mappings":"iGAUA,SAAwBA,EAAcC,EAAMC,EAAa,CACvD,SAASC,EAAUC,EAAOC,EAAK,CAC7B,OAAoBC,EAAAA,IAAKC,EAASC,EAAS,CACzC,cAAe,GAAGN,CAAW,OAC7B,IAAAG,CAAA,EACCD,EAAO,CACR,SAAUH,CAAA,CACX,CAAC,CACJ,CAMA,OAAAE,EAAU,QAAUI,EAAQ,QACRE,EAAAA,KAAyBC,aAAiBP,CAAS,CAAC,CAC1E","x_google_ignoreList":[0]}
@@ -1,2 +1,2 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/WearablePreview-BeBKKCQq.js","assets/index-Cjx-6-Fc.js","assets/vendor-router-D_36sTKu.js","assets/vendor-sentry-BSvWNK4f.js","assets/vendor-crypto-uuuQA3i5.js","assets/vendor-schemas-DJzTSxpO.js","assets/vendor-ua-D7qqAxdq.js","assets/vendor-intl-D2lXWsDp.js","assets/index-C3SWQl_p.js","assets/validation-CGrp9n3C.js","assets/index-ixBvnV4g.js"])))=>i.map(i=>d[i]);
2
- import{al as _,j as e,am as S,aq as M,aD as de,a as u,aH as Q,v,s as n,B as E,p as ce,w as N,ar as ee,M as ue,Z as pe,$ as ge,O as l,q as fe,t as he,aa as xe,U as me,ad as we,a9 as ve,aI as be,P as J,ak as Y,L as ke,aJ as je,W as Ce,u as ye,n as De,aK as Ie,o as _e,g as Se}from"./index-Cjx-6-Fc.js";import{R as te,r as c}from"./vendor-router-D_36sTKu.js";import"./vendor-ua-D7qqAxdq.js";import{u as Me}from"./profile.client-BWiq_PR5.js";import{s as Ae,g as Le,C as Re,u as Oe,a as We}from"./url-N3MWyY77.js";import{u as Pe,a as Te,g as ze,A as Z}from"./downloadWithIdentity-BJa06ukv.js";import{C as Be}from"./CTAButton-BrHntZLo.js";import{LandingFooter as $e}from"./index-CvqSSkkA.js";import{L as Ee}from"./Link-BXRsbP2-.js";import{P as Ne}from"./Paper-ECb0Xsu2.js";import"./vendor-crypto-uuuQA3i5.js";import"./vendor-schemas-DJzTSxpO.js";import"./vendor-sentry-BSvWNK4f.js";import"./vendor-intl-D2lXWsDp.js";import"./index-ixBvnV4g.js";import"./useAuthIdentity-BqEUIFS1.js";import"./file-Cr_gl9BS.js";import"./CircularProgress-Bi5r1ZmM.js";var U={},Ue=S;Object.defineProperty(U,"__esModule",{value:!0});var ne=U.default=void 0,He=Ue(_()),Fe=e;ne=U.default=(0,He.default)((0,Fe.jsx)("path",{d:"M16.88 2.88c-.49-.49-1.28-.49-1.77 0L6.7 11.29c-.39.39-.39 1.02 0 1.41l8.41 8.41c.49.49 1.28.49 1.77 0s.49-1.28 0-1.77L9.54 12l7.35-7.35c.48-.49.48-1.28-.01-1.77"}),"ArrowBackIosNewRounded");var H={},qe=S;Object.defineProperty(H,"__esModule",{value:!0});var ae=H.default=void 0,Ve=qe(_()),Ge=e;ae=H.default=(0,Ve.default)((0,Ge.jsx)("path",{d:"M12 2C6.47 2 2 6.47 2 12s4.47 10 10 10 10-4.47 10-10S17.53 2 12 2m4.3 14.3c-.39.39-1.02.39-1.41 0L12 13.41 9.11 16.3c-.39.39-1.02.39-1.41 0a.9959.9959 0 0 1 0-1.41L10.59 12 7.7 9.11a.9959.9959 0 0 1 0-1.41c.39-.39 1.02-.39 1.41 0L12 10.59l2.89-2.89c.39-.39 1.02-.39 1.41 0 .39.39.39 1.02 0 1.41L13.41 12l2.89 2.89c.38.38.38 1.02 0 1.41"}),"CancelRounded");const Ke=M(de)({display:"flex",alignItems:"center",justifyContent:"center"}),Qe=M(Ne)(t=>{const{size:a,theme:g,backgroundImage:o,backgroundSize:f,backgroundPosition:i,backgroundRepeat:r}=t;let h="900px";return a==="tiny"?h="540px":a==="small"&&(h="720px"),{width:h,borderRadius:"12px",overflow:"hidden",backgroundImage:o&&`url(${o})`,backgroundSize:o&&f,backgroundPosition:o&&i,backgroundRepeat:o&&r,[g.breakpoints.down("xs")]:{minWidth:"100vw",maxWidth:"100vw",minHeight:"100vh",borderRadius:"0px",margin:"0",padding:"0"}}}),Je=M(u)({display:"flex",justifyContent:"space-between",padding:"24px","& > :only-child":{marginLeft:"auto"}}),Ye=M(u)({padding:"24px"}),Ze=M(u)({display:"flex",padding:"24px","& > *":{flex:1},"& > *.MuiButtonBase-root:not(:last-child)":{marginRight:"16px"}}),Xe=te.memo(t=>{const{children:a,header:g,actions:o,title:f,subtitle:i,size:r,onClose:h,onBack:x,backgroundImage:b,backgroundSize:m,backgroundPosition:s,backgroundRepeat:k}=t;return e.jsxs(Qe,{elevation:24,size:r,backgroundImage:b,backgroundSize:m,backgroundPosition:s,backgroundRepeat:k,children:[g,(f||h||x)&&e.jsxs(Je,{children:[x&&e.jsx(Q,{"aria-label":"back",size:"large",onClick:x,children:e.jsx(ne,{})}),f&&e.jsx(v,{variant:"h5",children:f}),h&&e.jsx(Q,{"aria-label":"close",size:"large",onClick:j=>h(j,"escapeKeyDown"),children:e.jsx(ae,{})})]}),i&&e.jsx(v,{variant:"subtitle1",children:i}),e.jsx(Ye,{children:a}),o&&e.jsx(Ze,{children:o})]})}),et=te.memo(t=>{const{open:a,onClose:g,children:o,className:f,...i}=t;return e.jsx(Ke,{open:a,onClose:g,className:f,children:e.jsx(Xe,{...i,onClose:g,children:o})})});var F={},tt=S;Object.defineProperty(F,"__esModule",{value:!0});var oe=F.default=void 0,nt=tt(_()),at=e;oe=F.default=(0,nt.default)((0,at.jsx)("path",{d:"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2m-2 15-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8z"}),"CheckCircle");var q={},ot=S;Object.defineProperty(q,"__esModule",{value:!0});var ie=q.default=void 0,it=ot(_()),rt=e;ie=q.default=(0,it.default)((0,rt.jsx)("path",{d:"M18 15v3H6v-3H4v3c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2v-3zm-1-4-1.41-1.41L13 12.17V4h-2v8.17L8.41 9.59 7 11l5 5z"}),"FileDownloadOutlined");var V={},st=S;Object.defineProperty(V,"__esModule",{value:!0});var re=V.default=void 0,lt=st(_()),dt=e;re=V.default=(0,lt.default)((0,dt.jsx)("path",{d:"M18 16.08c-.76 0-1.44.3-1.96.77L8.91 12.7c.05-.23.09-.46.09-.7s-.04-.47-.09-.7l7.05-4.11c.54.5 1.25.81 2.04.81 1.66 0 3-1.34 3-3s-1.34-3-3-3-3 1.34-3 3c0 .24.04.47.09.7L8.04 9.81C7.5 9.31 6.79 9 6 9c-1.66 0-3 1.34-3 3s1.34 3 3 3c.79 0 1.5-.31 2.04-.81l7.12 4.16c-.05.21-.08.43-.08.65 0 1.61 1.31 2.92 2.92 2.92s2.92-1.31 2.92-2.92c0-1.61-1.31-2.92-2.92-2.92M18 4c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1M6 13c-.55 0-1-.45-1-1s.45-1 1-1 1 .45 1 1-.45 1-1 1m12 7.02c-.55 0-1-.45-1-1s.45-1 1-1 1 .45 1 1-.45 1-1 1"}),"ShareOutlined");const ct=/^[^\s@]+@[^\s@]+\.[^\s@]+$/,ut=/^0x[0-9a-f]{40}$/i;function pt(t,a){return t&&ct.test(t)?{userIdentifier:t,identifierType:"email"}:a&&ut.test(a)?{userIdentifier:a,identifierType:"wallet"}:{userIdentifier:void 0,identifierType:void 0}}function $(t,a){const{userIdentifier:g,identifierType:o}=pt(a.email,a.wallet);!g||!o||t("Onboarding Checkpoint",{checkpointId:a.checkpointId,action:a.action??"reached",userIdentifier:g,identifierType:o,email:o==="email"?g:void 0,source:"landing",metadata:a.metadata})}const gt="https://store.epicgames.com/en-US/p/decentraland-b692fb",ft=n(u)({display:"flex",flexDirection:"column",width:"100%"}),ht=n(u)({display:"flex",flexDirection:"column",marginTop:"60px"}),xt=n(u)(({theme:t})=>({display:"flex",flexDirection:"row",gap:"16px",[t.breakpoints.down("xl")]:{flexDirection:"column",alignItems:"flex-start"}})),mt=n("img")({height:"32px",width:"32px",filter:"brightness(0) invert(1)"}),wt=n(v)({display:"flex",alignItems:"center",gap:"12px",borderRight:"0.5px solid",marginTop:"8px !important",paddingRight:"16px",marginRight:"16px",width:"fit-content"}),vt=n(u)(({theme:t})=>({width:"100%",display:"flex",flexDirection:"row",alignItems:"flex-start",justifyContent:"flex-start",marginTop:"16px",[t.breakpoints.down("md")]:{justifyContent:"center"}})),bt=n(u)(({theme:t})=>({display:"flex",flexDirection:"row",gap:t.spacing(1.25)})),z=n(E)(({theme:t})=>({display:"flex",alignItems:"center",minWidth:24,"& span.MuiButton-icon.MuiButton-startIcon.MuiButton-iconSizeMedium":{marginRight:0,marginLeft:0},"&.MuiButtonBase-root.MuiButton-root.MuiButton-sizeMedium":{gap:t.spacing(.5),...t.typography.body1,fontWeight:400,letterSpacing:"0px",textTransform:"capitalize"}})),B=n("img")({height:"24px",width:"24px",filter:"brightness(0) invert(1)"}),y={[l.WINDOWS]:he,[l.MACOS]:fe},se=c.memo(({hideDownloadCounts:t,downloadOnClick:a,email:g,user:o})=>{const[f,i]=ce(),r=Pe(),h=Te(),x=N(),{track:b}=ee(),m=ue(),s=c.useMemo(()=>Ae(Le(Re.LAUNCHER))||{},[]),[k,j]=pe(async()=>ge.get().getTotalDownloads(),[]),D=c.useMemo(()=>i?s[i.os.name]?i.os.name===l.MACOS?[{text:l.MACOS,image:y[l.MACOS],link:s[l.MACOS].arm64,arch:i.cpu.architecture}]:[{text:i.os.name,image:y[i.os.name],link:s[i.os.name][i.cpu.architecture],arch:i.cpu.architecture}]:[]:s[l.WINDOWS]?[{text:l.WINDOWS,image:y[l.WINDOWS],link:s[l.WINDOWS].x64,arch:"x64"}]:[],[i,s]),W=c.useMemo(()=>i?i.os.name===l.MACOS?[{text:l.WINDOWS,image:y[l.WINDOWS],link:s[l.WINDOWS]?.x64}]:[{text:l.MACOS,image:y[l.MACOS],link:s[l.MACOS]?.arm64}]:s[l.MACOS]?[{text:l.MACOS,image:y[l.MACOS],link:s[l.MACOS].arm64}]:[],[i,s]),I=c.useCallback(async p=>{$(b,{checkpointId:5,action:"completed",email:g,wallet:o}),$(b,{checkpointId:6,action:"reached",email:g,wallet:o,metadata:{os:p.text,arch:p.arch}}),a&&await ze({os:p.text,arch:p.arch,fallbackLinks:s,queryParams:{[Z]:h},getIdentityId:r});const C="/download_success",w=Oe(new URL(C,window.location.origin).toString(),"os",p.text),P=We(w,{arch:p.arch,[Z]:h});setTimeout(()=>{window.location.href=P},a?3e3:0)},[a,r,h,s,b,g,o]),A=!j.loading&&j.loaded&&k?xe(k):null;return f?null:e.jsx(ft,{children:D.length>0&&e.jsxs(ht,{children:[e.jsx(xt,{children:D.map((p,C)=>e.jsx(Be,{href:p.link,onClick:w=>{w.preventDefault(),m(w),I(p)},event:we.DOWNLOAD,place:me.DOWNLOAD,endIcon:e.jsx(mt,{src:p.image}),label:x("page.download.download"),isFullWidth:!1},C))}),e.jsxs(vt,{children:[!t&&A&&e.jsxs(wt,{variant:"body1",children:[e.jsx(ve,{})," ",x("page.download.total_downloads",{downloads:A})]}),e.jsxs(bt,{children:[W.map((p,C)=>e.jsx(z,{variant:"text",color:"inherit",onClick:w=>{w.preventDefault(),m(w),I(p)},href:p.link,startIcon:e.jsx(B,{src:p.image}),children:p.arch?`(${x(`page.download.${p.arch}_processors_short`)})`:void 0},C)),e.jsx(z,{variant:"text",color:"inherit",href:be,target:"_blank",rel:"noopener noreferrer",startIcon:e.jsx(B,{src:J("/google_play_icon.svg")})}),e.jsx(z,{variant:"text",color:"inherit",href:gt,target:"_blank",rel:"noopener noreferrer",startIcon:e.jsx(B,{src:J("/epic_icon.svg")})})]})]})]})})});se.displayName="DownloadOptions";const kt=n("span")({fontFamily:"DecentralandHero",background:`linear-gradient(261.51deg, ${Y.ruby} 6.92%, ${Y.yellow} 83.3%)`,backgroundClip:"text",webkitBackgroundClip:"text",webkitTextFillColor:"transparent",color:"transparent",fontSize:"inherit",fontWeight:"inherit",lineHeight:"inherit",letterSpacing:"inherit"}),X=c.memo(t=>{const{text:a}=t,g=a.split(/(Decentraland)/gi);return e.jsx(e.Fragment,{children:g.map((o,f)=>o.toLowerCase()==="decentraland"?e.jsxs(c.Fragment,{children:[e.jsx(kt,{children:o}),e.jsx("br",{})]},f):e.jsx(c.Fragment,{children:o},f))})}),jt="https://cdn.decentraland.org/@dcl/landing-site/0.5.1-24676306976.commit-32f8f97/assets/download_background-CGs7FHgP.webp",Ct=n(u)(({theme:t})=>({position:"relative",display:"flex",flexDirection:"column",flex:1,height:"100vh",minHeight:"650px",alignItems:"center",justifyContent:"center",backgroundImage:`linear-gradient(150deg, #2A0C43 0%, #2A0C43 25%, transparent 100%), linear-gradient(225deg, #2A0C43 0%, rgba(42, 12, 67, 0.8) 15%, transparent 100%), url(${jt})`,backgroundSize:"cover",backgroundPosition:"center",[t.breakpoints.down("sm")]:{height:"100svh",minHeight:"unset",overflow:"hidden"}})),yt=n(u)({position:"absolute",top:0,left:0,right:0,bottom:0,background:"transparent",zIndex:3}),Dt=n(u)(({theme:t})=>({display:"flex",flexDirection:"row",justifyContent:"space-between",alignItems:"center",borderRadius:"32px",paddingLeft:t.spacing(17.5),paddingRight:t.spacing(9),paddingTop:0,paddingBottom:0,height:"100vh",width:"calc(100% - 144px)",marginLeft:"auto",marginRight:"auto",zIndex:2,[t.breakpoints.down("lg")]:{paddingLeft:t.spacing(9)},[t.breakpoints.down("sm")]:{flexDirection:"column",alignItems:"flex-start",width:"calc(100% - 32px)",padding:t.spacing(15.5),height:"100svh",overflow:"visible"},[t.breakpoints.down("xs")]:{padding:t.spacing(3),width:"100%"}})),It=n(u)({zIndex:10,position:"relative",width:"100vw"}),_t=n(u)(({theme:t})=>({display:"flex",alignItems:"center",gap:t.spacing(1)})),St=n(u)(({theme:t})=>({position:"absolute",bottom:"10%",left:"212px",display:"flex",flexDirection:"row",alignItems:"center",gap:t.spacing(.5),zIndex:10})),Mt=n(v)({fontSize:"20px",fontWeight:500,lineHeight:"160%"}),At=n(Ee)({textDecoration:"underline",textDecorationStyle:"solid",textDecorationOffset:"0%",textDecorationThickness:"0%",cursor:"pointer",textTransform:"uppercase"}),Lt=n(u)(({theme:t})=>({maxWidth:"900px",minWidth:"50vh",width:"100%",height:"100%",overflow:"hidden",borderRadius:"24px",border:"none",position:"relative",display:"flex",[t.breakpoints.down("md")]:{width:"100%"},[t.breakpoints.down("sm")]:{minWidth:"unset",maxWidth:"100%",overflow:"visible"}})),Rt=n(u)(({theme:t})=>({width:"100%",height:"110%",maxHeight:"700px",minHeight:"500px",position:"absolute",top:"50%",transform:"translateY(-50%)",left:0,right:0,bottom:0,zIndex:2,[t.breakpoints.down("sm")]:{minHeight:"unset",height:"60%",top:"40%"}})),Ot=n(ke)(({theme:t})=>({height:"48px",width:"48px",zIndex:10,cursor:"pointer",[t.breakpoints.up("sm")]:{position:"absolute",top:t.spacing(9),left:t.spacing(9)}})),Wt=n(v)(({theme:t})=>({marginTop:t.spacing(4),zIndex:10,fontWeight:500,fontStyle:"Medium",fontSize:"30px",lineHeight:"124%",letterSpacing:"0px"})),Pt=n(v)(({theme:t})=>({marginTop:t.spacing(1),[t.breakpoints.down("sm")]:{textAlign:"center",fontSize:"3rem"},[t.breakpoints.down("xs")]:{fontSize:"1.8rem"}})),Tt=n(u)(({theme:t})=>({[t.breakpoints.down("sm")]:{paddingBottom:"200px"}})),zt=n(u)(({theme:t})=>({display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",position:"fixed",bottom:0,background:"linear-gradient(100.12deg, #130119 0%, #320524 100%)",width:"100%",padding:t.spacing(3),gap:t.spacing(2),zIndex:100})),Bt=n(E)({width:"100%",height:"56px"}),$t=n(et)({}),Et=n(u)(({theme:t})=>({display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",gap:t.spacing(3),paddingTop:t.spacing(6),paddingBottom:t.spacing(6)})),Nt=n(u)({display:"flex",alignItems:"center",justifyContent:"center",borderRadius:"50%",backgroundColor:je.primary,width:"48px",height:"48px"}),Ut=n(v)({fontWeight:500,fontStyle:"Medium",fontSize:"20px",lineHeight:"160%",letterSpacing:"0px",textAlign:"center",verticalAlign:"middle"}),Ht=c.memo(t=>{const{title:a}=t,[g,o]=c.useState(!1),[f,i]=c.useState(null),r=N(),{track:h}=ee(),x=Ce(),{address:b}=ye(),[m,s]=c.useMemo(()=>{const d=new URLSearchParams(window.location.search);return[d.get("email")||void 0,d.get("user")||void 0]},[]),k=c.useRef(!1);c.useEffect(()=>{if(!k.current&&(k.current=!0,$(h,{checkpointId:5,action:"reached",email:m,wallet:s}),m||s)){const d=new URL(window.location.href);d.searchParams.delete("email"),d.searchParams.delete("user"),window.history.replaceState(null,"",d.toString())}},[h,m,s]);const j=s||b,{data:D}=Me(j??void 0,{skip:!j}),W=D?.avatars?.[0]?.name,I=c.useRef(null),{ref:A,inView:p}=De({triggerOnce:!0,rootMargin:"200px"}),C=c.useCallback(async()=>{await Ie({})||o(!0)},[]);c.useEffect(()=>{p&&_e(()=>import("./WearablePreview-BeBKKCQq.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10])).then(d=>{i(()=>d.WearablePreview)})},[p]),c.useEffect(()=>{if(!f)return;const d=I.current;if(!d)return;const T=R=>{R.title||(R.title=r("page.download.avatar_preview"))},G=d.querySelector("iframe");if(G){T(G);return}const L=new MutationObserver(R=>{for(const le of R)for(const O of le.addedNodes){if(O instanceof HTMLIFrameElement){T(O),L.disconnect();return}if(O instanceof HTMLElement){const K=O.querySelector("iframe");if(K){T(K),L.disconnect();return}}}});return L.observe(d,{childList:!0,subtree:!0}),()=>L.disconnect()},[f,r]);const w=c.useMemo(()=>"default"+(Math.floor(Math.random()*160)+1),[]),P=c.useCallback(async()=>{try{const d=new URL(window.location.href);d.searchParams.delete("email"),d.searchParams.delete("user"),await navigator.share({title:r("page.download.share_title"),text:r("page.download.share_title"),url:d.toString()})}catch{}},[r]);return e.jsxs(e.Fragment,{children:[e.jsxs(Ct,{children:[e.jsxs(Dt,{children:[e.jsx(Ot,{onClick:()=>window.location.href="https://decentraland.org"}),x&&e.jsxs(e.Fragment,{children:[e.jsx(St,{children:e.jsxs(Mt,{children:[r("page.download.already_downloaded")," ",e.jsx(At,{onClick:C,children:r("page.download.jump_in")})]})}),e.jsxs(It,{children:[e.jsxs(_t,{children:[e.jsx(oe,{htmlColor:"#34CE77",fontSize:"large"}),e.jsx(v,{variant:"h4",children:r("page.download.pre_title",{name:W||r("page.download.your_account")})})]}),e.jsx(Pt,{variant:"h2",children:e.jsx(X,{text:a})}),e.jsx(se,{email:m,user:s})]})]}),!x&&e.jsx(Wt,{variant:"h2",children:e.jsx(X,{text:a})}),e.jsxs(Lt,{children:[!x&&e.jsx(yt,{}),e.jsx(Rt,{ref:d=>{A(d),I.current=d},children:f&&e.jsx(f,{unity:!0,unityMode:"jesus",profile:D?.avatars?.[0]?.ethAddress||w,disableBackground:!0,lockBeta:!0,dev:!1,baseUrl:Se("WEARABLE_PREVIEW_URL")})})]})]}),!x&&typeof navigator<"u"&&!!navigator.share&&e.jsxs(zt,{children:[e.jsx(v,{variant:"h6",children:r("page.download.mobile.switch_to_computer")}),e.jsx(Bt,{onClick:P,endIcon:e.jsx(re,{}),variant:"contained",children:r("page.download.mobile.send_link")})]}),e.jsx($t,{open:g,size:"tiny",children:e.jsxs(Et,{children:[e.jsx(Nt,{children:e.jsx(ie,{})}),e.jsxs(Ut,{children:[r("page.download.modal.title_first_line"),e.jsx("br",{}),r("page.download.modal.title_second_line")]}),e.jsx(E,{variant:"contained",onClick:()=>o(!1),children:r("page.download.modal.cta")})]})})]}),e.jsx(Tt,{children:e.jsx($e,{})})]})}),dn=()=>{const t=N();return e.jsx(Ht,{title:t("page.download.download_onboarding_title"),redirectPath:"/download_success"})};export{dn as DownloadPage,dn as default};
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/WearablePreview-KunRQByO.js","assets/index-DUmIu2EK.js","assets/vendor-router-D_36sTKu.js","assets/vendor-sentry-BSvWNK4f.js","assets/vendor-crypto-uuuQA3i5.js","assets/vendor-schemas-DJzTSxpO.js","assets/vendor-ua-D7qqAxdq.js","assets/vendor-intl-D2lXWsDp.js","assets/index-C3SWQl_p.js","assets/validation-CGrp9n3C.js","assets/index-BaEE4ZXP.js"])))=>i.map(i=>d[i]);
2
+ import{al as _,j as e,am as S,aq as M,aD as de,a as u,aH as Q,v,s as n,B as E,p as ce,w as N,ar as ee,M as ue,Z as pe,$ as ge,O as l,q as fe,t as he,aa as xe,U as me,ad as we,a9 as ve,aI as be,P as J,ak as Y,L as ke,aJ as je,W as Ce,u as ye,n as De,aK as Ie,o as _e,g as Se}from"./index-DUmIu2EK.js";import{R as te,r as c}from"./vendor-router-D_36sTKu.js";import"./vendor-ua-D7qqAxdq.js";import{u as Me}from"./profile.client-BtZZbgxj.js";import{s as Ae,g as Le,C as Re,u as Oe,a as We}from"./url-BHzlJYXC.js";import{u as Pe,a as Te,g as ze,A as Z}from"./downloadWithIdentity-imzC-1Iy.js";import{C as Be}from"./CTAButton-D8_9d6Wu.js";import{LandingFooter as $e}from"./index-Bd63106P.js";import{L as Ee}from"./Link-C3GGl2C6.js";import{P as Ne}from"./Paper-BfSYUoim.js";import"./vendor-crypto-uuuQA3i5.js";import"./vendor-schemas-DJzTSxpO.js";import"./vendor-sentry-BSvWNK4f.js";import"./vendor-intl-D2lXWsDp.js";import"./index-BaEE4ZXP.js";import"./useAuthIdentity-D2zQ3q5X.js";import"./file-Cr_gl9BS.js";import"./CircularProgress-AsNM1BvH.js";var U={},Ue=S;Object.defineProperty(U,"__esModule",{value:!0});var ne=U.default=void 0,He=Ue(_()),Fe=e;ne=U.default=(0,He.default)((0,Fe.jsx)("path",{d:"M16.88 2.88c-.49-.49-1.28-.49-1.77 0L6.7 11.29c-.39.39-.39 1.02 0 1.41l8.41 8.41c.49.49 1.28.49 1.77 0s.49-1.28 0-1.77L9.54 12l7.35-7.35c.48-.49.48-1.28-.01-1.77"}),"ArrowBackIosNewRounded");var H={},qe=S;Object.defineProperty(H,"__esModule",{value:!0});var ae=H.default=void 0,Ve=qe(_()),Ge=e;ae=H.default=(0,Ve.default)((0,Ge.jsx)("path",{d:"M12 2C6.47 2 2 6.47 2 12s4.47 10 10 10 10-4.47 10-10S17.53 2 12 2m4.3 14.3c-.39.39-1.02.39-1.41 0L12 13.41 9.11 16.3c-.39.39-1.02.39-1.41 0a.9959.9959 0 0 1 0-1.41L10.59 12 7.7 9.11a.9959.9959 0 0 1 0-1.41c.39-.39 1.02-.39 1.41 0L12 10.59l2.89-2.89c.39-.39 1.02-.39 1.41 0 .39.39.39 1.02 0 1.41L13.41 12l2.89 2.89c.38.38.38 1.02 0 1.41"}),"CancelRounded");const Ke=M(de)({display:"flex",alignItems:"center",justifyContent:"center"}),Qe=M(Ne)(t=>{const{size:a,theme:g,backgroundImage:o,backgroundSize:f,backgroundPosition:i,backgroundRepeat:r}=t;let h="900px";return a==="tiny"?h="540px":a==="small"&&(h="720px"),{width:h,borderRadius:"12px",overflow:"hidden",backgroundImage:o&&`url(${o})`,backgroundSize:o&&f,backgroundPosition:o&&i,backgroundRepeat:o&&r,[g.breakpoints.down("xs")]:{minWidth:"100vw",maxWidth:"100vw",minHeight:"100vh",borderRadius:"0px",margin:"0",padding:"0"}}}),Je=M(u)({display:"flex",justifyContent:"space-between",padding:"24px","& > :only-child":{marginLeft:"auto"}}),Ye=M(u)({padding:"24px"}),Ze=M(u)({display:"flex",padding:"24px","& > *":{flex:1},"& > *.MuiButtonBase-root:not(:last-child)":{marginRight:"16px"}}),Xe=te.memo(t=>{const{children:a,header:g,actions:o,title:f,subtitle:i,size:r,onClose:h,onBack:x,backgroundImage:b,backgroundSize:m,backgroundPosition:s,backgroundRepeat:k}=t;return e.jsxs(Qe,{elevation:24,size:r,backgroundImage:b,backgroundSize:m,backgroundPosition:s,backgroundRepeat:k,children:[g,(f||h||x)&&e.jsxs(Je,{children:[x&&e.jsx(Q,{"aria-label":"back",size:"large",onClick:x,children:e.jsx(ne,{})}),f&&e.jsx(v,{variant:"h5",children:f}),h&&e.jsx(Q,{"aria-label":"close",size:"large",onClick:j=>h(j,"escapeKeyDown"),children:e.jsx(ae,{})})]}),i&&e.jsx(v,{variant:"subtitle1",children:i}),e.jsx(Ye,{children:a}),o&&e.jsx(Ze,{children:o})]})}),et=te.memo(t=>{const{open:a,onClose:g,children:o,className:f,...i}=t;return e.jsx(Ke,{open:a,onClose:g,className:f,children:e.jsx(Xe,{...i,onClose:g,children:o})})});var F={},tt=S;Object.defineProperty(F,"__esModule",{value:!0});var oe=F.default=void 0,nt=tt(_()),at=e;oe=F.default=(0,nt.default)((0,at.jsx)("path",{d:"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2m-2 15-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8z"}),"CheckCircle");var q={},ot=S;Object.defineProperty(q,"__esModule",{value:!0});var ie=q.default=void 0,it=ot(_()),rt=e;ie=q.default=(0,it.default)((0,rt.jsx)("path",{d:"M18 15v3H6v-3H4v3c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2v-3zm-1-4-1.41-1.41L13 12.17V4h-2v8.17L8.41 9.59 7 11l5 5z"}),"FileDownloadOutlined");var V={},st=S;Object.defineProperty(V,"__esModule",{value:!0});var re=V.default=void 0,lt=st(_()),dt=e;re=V.default=(0,lt.default)((0,dt.jsx)("path",{d:"M18 16.08c-.76 0-1.44.3-1.96.77L8.91 12.7c.05-.23.09-.46.09-.7s-.04-.47-.09-.7l7.05-4.11c.54.5 1.25.81 2.04.81 1.66 0 3-1.34 3-3s-1.34-3-3-3-3 1.34-3 3c0 .24.04.47.09.7L8.04 9.81C7.5 9.31 6.79 9 6 9c-1.66 0-3 1.34-3 3s1.34 3 3 3c.79 0 1.5-.31 2.04-.81l7.12 4.16c-.05.21-.08.43-.08.65 0 1.61 1.31 2.92 2.92 2.92s2.92-1.31 2.92-2.92c0-1.61-1.31-2.92-2.92-2.92M18 4c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1M6 13c-.55 0-1-.45-1-1s.45-1 1-1 1 .45 1 1-.45 1-1 1m12 7.02c-.55 0-1-.45-1-1s.45-1 1-1 1 .45 1 1-.45 1-1 1"}),"ShareOutlined");const ct=/^[^\s@]+@[^\s@]+\.[^\s@]+$/,ut=/^0x[0-9a-f]{40}$/i;function pt(t,a){return t&&ct.test(t)?{userIdentifier:t,identifierType:"email"}:a&&ut.test(a)?{userIdentifier:a,identifierType:"wallet"}:{userIdentifier:void 0,identifierType:void 0}}function $(t,a){const{userIdentifier:g,identifierType:o}=pt(a.email,a.wallet);!g||!o||t("Onboarding Checkpoint",{checkpointId:a.checkpointId,action:a.action??"reached",userIdentifier:g,identifierType:o,email:o==="email"?g:void 0,source:"landing",metadata:a.metadata})}const gt="https://store.epicgames.com/en-US/p/decentraland-b692fb",ft=n(u)({display:"flex",flexDirection:"column",width:"100%"}),ht=n(u)({display:"flex",flexDirection:"column",marginTop:"60px"}),xt=n(u)(({theme:t})=>({display:"flex",flexDirection:"row",gap:"16px",[t.breakpoints.down("xl")]:{flexDirection:"column",alignItems:"flex-start"}})),mt=n("img")({height:"32px",width:"32px",filter:"brightness(0) invert(1)"}),wt=n(v)({display:"flex",alignItems:"center",gap:"12px",borderRight:"0.5px solid",marginTop:"8px !important",paddingRight:"16px",marginRight:"16px",width:"fit-content"}),vt=n(u)(({theme:t})=>({width:"100%",display:"flex",flexDirection:"row",alignItems:"flex-start",justifyContent:"flex-start",marginTop:"16px",[t.breakpoints.down("md")]:{justifyContent:"center"}})),bt=n(u)(({theme:t})=>({display:"flex",flexDirection:"row",gap:t.spacing(1.25)})),z=n(E)(({theme:t})=>({display:"flex",alignItems:"center",minWidth:24,"& span.MuiButton-icon.MuiButton-startIcon.MuiButton-iconSizeMedium":{marginRight:0,marginLeft:0},"&.MuiButtonBase-root.MuiButton-root.MuiButton-sizeMedium":{gap:t.spacing(.5),...t.typography.body1,fontWeight:400,letterSpacing:"0px",textTransform:"capitalize"}})),B=n("img")({height:"24px",width:"24px",filter:"brightness(0) invert(1)"}),y={[l.WINDOWS]:he,[l.MACOS]:fe},se=c.memo(({hideDownloadCounts:t,downloadOnClick:a,email:g,user:o})=>{const[f,i]=ce(),r=Pe(),h=Te(),x=N(),{track:b}=ee(),m=ue(),s=c.useMemo(()=>Ae(Le(Re.LAUNCHER))||{},[]),[k,j]=pe(async()=>ge.get().getTotalDownloads(),[]),D=c.useMemo(()=>i?s[i.os.name]?i.os.name===l.MACOS?[{text:l.MACOS,image:y[l.MACOS],link:s[l.MACOS].arm64,arch:i.cpu.architecture}]:[{text:i.os.name,image:y[i.os.name],link:s[i.os.name][i.cpu.architecture],arch:i.cpu.architecture}]:[]:s[l.WINDOWS]?[{text:l.WINDOWS,image:y[l.WINDOWS],link:s[l.WINDOWS].x64,arch:"x64"}]:[],[i,s]),W=c.useMemo(()=>i?i.os.name===l.MACOS?[{text:l.WINDOWS,image:y[l.WINDOWS],link:s[l.WINDOWS]?.x64}]:[{text:l.MACOS,image:y[l.MACOS],link:s[l.MACOS]?.arm64}]:s[l.MACOS]?[{text:l.MACOS,image:y[l.MACOS],link:s[l.MACOS].arm64}]:[],[i,s]),I=c.useCallback(async p=>{$(b,{checkpointId:5,action:"completed",email:g,wallet:o}),$(b,{checkpointId:6,action:"reached",email:g,wallet:o,metadata:{os:p.text,arch:p.arch}}),a&&await ze({os:p.text,arch:p.arch,fallbackLinks:s,queryParams:{[Z]:h},getIdentityId:r});const C="/download_success",w=Oe(new URL(C,window.location.origin).toString(),"os",p.text),P=We(w,{arch:p.arch,[Z]:h});setTimeout(()=>{window.location.href=P},a?3e3:0)},[a,r,h,s,b,g,o]),A=!j.loading&&j.loaded&&k?xe(k):null;return f?null:e.jsx(ft,{children:D.length>0&&e.jsxs(ht,{children:[e.jsx(xt,{children:D.map((p,C)=>e.jsx(Be,{href:p.link,onClick:w=>{w.preventDefault(),m(w),I(p)},event:we.DOWNLOAD,place:me.DOWNLOAD,endIcon:e.jsx(mt,{src:p.image}),label:x("page.download.download"),isFullWidth:!1},C))}),e.jsxs(vt,{children:[!t&&A&&e.jsxs(wt,{variant:"body1",children:[e.jsx(ve,{})," ",x("page.download.total_downloads",{downloads:A})]}),e.jsxs(bt,{children:[W.map((p,C)=>e.jsx(z,{variant:"text",color:"inherit",onClick:w=>{w.preventDefault(),m(w),I(p)},href:p.link,startIcon:e.jsx(B,{src:p.image}),children:p.arch?`(${x(`page.download.${p.arch}_processors_short`)})`:void 0},C)),e.jsx(z,{variant:"text",color:"inherit",href:be,target:"_blank",rel:"noopener noreferrer",startIcon:e.jsx(B,{src:J("/google_play_icon.svg")})}),e.jsx(z,{variant:"text",color:"inherit",href:gt,target:"_blank",rel:"noopener noreferrer",startIcon:e.jsx(B,{src:J("/epic_icon.svg")})})]})]})]})})});se.displayName="DownloadOptions";const kt=n("span")({fontFamily:"DecentralandHero",background:`linear-gradient(261.51deg, ${Y.ruby} 6.92%, ${Y.yellow} 83.3%)`,backgroundClip:"text",webkitBackgroundClip:"text",webkitTextFillColor:"transparent",color:"transparent",fontSize:"inherit",fontWeight:"inherit",lineHeight:"inherit",letterSpacing:"inherit"}),X=c.memo(t=>{const{text:a}=t,g=a.split(/(Decentraland)/gi);return e.jsx(e.Fragment,{children:g.map((o,f)=>o.toLowerCase()==="decentraland"?e.jsxs(c.Fragment,{children:[e.jsx(kt,{children:o}),e.jsx("br",{})]},f):e.jsx(c.Fragment,{children:o},f))})}),jt="https://cdn.decentraland.org/@dcl/landing-site/0.5.1-24686484792.commit-e56f2bf/assets/download_background-CGs7FHgP.webp",Ct=n(u)(({theme:t})=>({position:"relative",display:"flex",flexDirection:"column",flex:1,height:"100vh",minHeight:"650px",alignItems:"center",justifyContent:"center",backgroundImage:`linear-gradient(150deg, #2A0C43 0%, #2A0C43 25%, transparent 100%), linear-gradient(225deg, #2A0C43 0%, rgba(42, 12, 67, 0.8) 15%, transparent 100%), url(${jt})`,backgroundSize:"cover",backgroundPosition:"center",[t.breakpoints.down("sm")]:{height:"100svh",minHeight:"unset",overflow:"hidden"}})),yt=n(u)({position:"absolute",top:0,left:0,right:0,bottom:0,background:"transparent",zIndex:3}),Dt=n(u)(({theme:t})=>({display:"flex",flexDirection:"row",justifyContent:"space-between",alignItems:"center",borderRadius:"32px",paddingLeft:t.spacing(17.5),paddingRight:t.spacing(9),paddingTop:0,paddingBottom:0,height:"100vh",width:"calc(100% - 144px)",marginLeft:"auto",marginRight:"auto",zIndex:2,[t.breakpoints.down("lg")]:{paddingLeft:t.spacing(9)},[t.breakpoints.down("sm")]:{flexDirection:"column",alignItems:"flex-start",width:"calc(100% - 32px)",padding:t.spacing(15.5),height:"100svh",overflow:"visible"},[t.breakpoints.down("xs")]:{padding:t.spacing(3),width:"100%"}})),It=n(u)({zIndex:10,position:"relative",width:"100vw"}),_t=n(u)(({theme:t})=>({display:"flex",alignItems:"center",gap:t.spacing(1)})),St=n(u)(({theme:t})=>({position:"absolute",bottom:"10%",left:"212px",display:"flex",flexDirection:"row",alignItems:"center",gap:t.spacing(.5),zIndex:10})),Mt=n(v)({fontSize:"20px",fontWeight:500,lineHeight:"160%"}),At=n(Ee)({textDecoration:"underline",textDecorationStyle:"solid",textDecorationOffset:"0%",textDecorationThickness:"0%",cursor:"pointer",textTransform:"uppercase"}),Lt=n(u)(({theme:t})=>({maxWidth:"900px",minWidth:"50vh",width:"100%",height:"100%",overflow:"hidden",borderRadius:"24px",border:"none",position:"relative",display:"flex",[t.breakpoints.down("md")]:{width:"100%"},[t.breakpoints.down("sm")]:{minWidth:"unset",maxWidth:"100%",overflow:"visible"}})),Rt=n(u)(({theme:t})=>({width:"100%",height:"110%",maxHeight:"700px",minHeight:"500px",position:"absolute",top:"50%",transform:"translateY(-50%)",left:0,right:0,bottom:0,zIndex:2,[t.breakpoints.down("sm")]:{minHeight:"unset",height:"60%",top:"40%"}})),Ot=n(ke)(({theme:t})=>({height:"48px",width:"48px",zIndex:10,cursor:"pointer",[t.breakpoints.up("sm")]:{position:"absolute",top:t.spacing(9),left:t.spacing(9)}})),Wt=n(v)(({theme:t})=>({marginTop:t.spacing(4),zIndex:10,fontWeight:500,fontStyle:"Medium",fontSize:"30px",lineHeight:"124%",letterSpacing:"0px"})),Pt=n(v)(({theme:t})=>({marginTop:t.spacing(1),[t.breakpoints.down("sm")]:{textAlign:"center",fontSize:"3rem"},[t.breakpoints.down("xs")]:{fontSize:"1.8rem"}})),Tt=n(u)(({theme:t})=>({[t.breakpoints.down("sm")]:{paddingBottom:"200px"}})),zt=n(u)(({theme:t})=>({display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",position:"fixed",bottom:0,background:"linear-gradient(100.12deg, #130119 0%, #320524 100%)",width:"100%",padding:t.spacing(3),gap:t.spacing(2),zIndex:100})),Bt=n(E)({width:"100%",height:"56px"}),$t=n(et)({}),Et=n(u)(({theme:t})=>({display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",gap:t.spacing(3),paddingTop:t.spacing(6),paddingBottom:t.spacing(6)})),Nt=n(u)({display:"flex",alignItems:"center",justifyContent:"center",borderRadius:"50%",backgroundColor:je.primary,width:"48px",height:"48px"}),Ut=n(v)({fontWeight:500,fontStyle:"Medium",fontSize:"20px",lineHeight:"160%",letterSpacing:"0px",textAlign:"center",verticalAlign:"middle"}),Ht=c.memo(t=>{const{title:a}=t,[g,o]=c.useState(!1),[f,i]=c.useState(null),r=N(),{track:h}=ee(),x=Ce(),{address:b}=ye(),[m,s]=c.useMemo(()=>{const d=new URLSearchParams(window.location.search);return[d.get("email")||void 0,d.get("user")||void 0]},[]),k=c.useRef(!1);c.useEffect(()=>{if(!k.current&&(k.current=!0,$(h,{checkpointId:5,action:"reached",email:m,wallet:s}),m||s)){const d=new URL(window.location.href);d.searchParams.delete("email"),d.searchParams.delete("user"),window.history.replaceState(null,"",d.toString())}},[h,m,s]);const j=s||b,{data:D}=Me(j??void 0,{skip:!j}),W=D?.avatars?.[0]?.name,I=c.useRef(null),{ref:A,inView:p}=De({triggerOnce:!0,rootMargin:"200px"}),C=c.useCallback(async()=>{await Ie({})||o(!0)},[]);c.useEffect(()=>{p&&_e(()=>import("./WearablePreview-KunRQByO.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10])).then(d=>{i(()=>d.WearablePreview)})},[p]),c.useEffect(()=>{if(!f)return;const d=I.current;if(!d)return;const T=R=>{R.title||(R.title=r("page.download.avatar_preview"))},G=d.querySelector("iframe");if(G){T(G);return}const L=new MutationObserver(R=>{for(const le of R)for(const O of le.addedNodes){if(O instanceof HTMLIFrameElement){T(O),L.disconnect();return}if(O instanceof HTMLElement){const K=O.querySelector("iframe");if(K){T(K),L.disconnect();return}}}});return L.observe(d,{childList:!0,subtree:!0}),()=>L.disconnect()},[f,r]);const w=c.useMemo(()=>"default"+(Math.floor(Math.random()*160)+1),[]),P=c.useCallback(async()=>{try{const d=new URL(window.location.href);d.searchParams.delete("email"),d.searchParams.delete("user"),await navigator.share({title:r("page.download.share_title"),text:r("page.download.share_title"),url:d.toString()})}catch{}},[r]);return e.jsxs(e.Fragment,{children:[e.jsxs(Ct,{children:[e.jsxs(Dt,{children:[e.jsx(Ot,{onClick:()=>window.location.href="https://decentraland.org"}),x&&e.jsxs(e.Fragment,{children:[e.jsx(St,{children:e.jsxs(Mt,{children:[r("page.download.already_downloaded")," ",e.jsx(At,{onClick:C,children:r("page.download.jump_in")})]})}),e.jsxs(It,{children:[e.jsxs(_t,{children:[e.jsx(oe,{htmlColor:"#34CE77",fontSize:"large"}),e.jsx(v,{variant:"h4",children:r("page.download.pre_title",{name:W||r("page.download.your_account")})})]}),e.jsx(Pt,{variant:"h2",children:e.jsx(X,{text:a})}),e.jsx(se,{email:m,user:s})]})]}),!x&&e.jsx(Wt,{variant:"h2",children:e.jsx(X,{text:a})}),e.jsxs(Lt,{children:[!x&&e.jsx(yt,{}),e.jsx(Rt,{ref:d=>{A(d),I.current=d},children:f&&e.jsx(f,{unity:!0,unityMode:"jesus",profile:D?.avatars?.[0]?.ethAddress||w,disableBackground:!0,lockBeta:!0,dev:!1,baseUrl:Se("WEARABLE_PREVIEW_URL")})})]})]}),!x&&typeof navigator<"u"&&!!navigator.share&&e.jsxs(zt,{children:[e.jsx(v,{variant:"h6",children:r("page.download.mobile.switch_to_computer")}),e.jsx(Bt,{onClick:P,endIcon:e.jsx(re,{}),variant:"contained",children:r("page.download.mobile.send_link")})]}),e.jsx($t,{open:g,size:"tiny",children:e.jsxs(Et,{children:[e.jsx(Nt,{children:e.jsx(ie,{})}),e.jsxs(Ut,{children:[r("page.download.modal.title_first_line"),e.jsx("br",{}),r("page.download.modal.title_second_line")]}),e.jsx(E,{variant:"contained",onClick:()=>o(!1),children:r("page.download.modal.cta")})]})})]}),e.jsx(Tt,{children:e.jsx($e,{})})]})}),dn=()=>{const t=N();return e.jsx(Ht,{title:t("page.download.download_onboarding_title"),redirectPath:"/download_success"})};export{dn as DownloadPage,dn as default};
@@ -1 +1 @@
1
- {"version":3,"mappings":";2hCAGIA,GAAyBC,EAC7B,OAAO,eAAeC,EAAS,aAAc,CAC3C,MAAO,EACT,CAAC,EACD,IAAAC,GAAAD,EAAA,QAAkB,OACdE,GAAiBJ,GAAuBK,GAAgC,EACxEC,GAAcC,EACHJ,GAAAD,EAAA,WAAsBE,GAAe,YAA2BE,GAAY,KAAK,OAAQ,CACtG,EAAG,mKACL,CAAC,EAAG,wBAAwB,WCTxBN,GAAyBC,EAC7B,OAAO,eAAeO,EAAS,aAAc,CAC3C,MAAO,EACT,CAAC,EACD,IAAAL,GAAAK,EAAA,QAAkB,OACdJ,GAAiBJ,GAAuBK,GAAgC,EACxEC,GAAcC,EACHJ,GAAAK,EAAA,WAAsBJ,GAAe,YAA2BE,GAAY,KAAK,OAAQ,CACtG,EAAG,iVACL,CAAC,EAAG,eAAe,ECVnB,MAAMG,GAAQC,EAAOC,EAAQ,EAAE,CAC3B,QAAS,OACT,WAAY,SACZ,eAAgB,QACpB,CAAC,EACKC,GAAiBF,EAAOG,EAAQ,EAAEC,GAAS,CAC7C,KAAM,CAAE,KAAAC,EAAM,MAAAC,EAAO,gBAAAC,EAAiB,eAAAC,EAAgB,mBAAAC,EAAoB,iBAAAC,CAAgB,EAAKN,EAC/F,IAAIO,EAAQ,QACZ,OAAIN,IAAS,OACTM,EAAQ,QAEHN,IAAS,UACdM,EAAQ,SAEL,CACH,MAAAA,EACA,aAAc,OACd,SAAU,SACV,gBAAiBJ,GAAmB,OAAOA,CAAe,IAC1D,eAAgBA,GAAmBC,EACnC,mBAAoBD,GAAmBE,EACvC,iBAAkBF,GAAmBG,EACrC,CAACJ,EAAM,YAAY,KAAK,IAAI,CAAC,EAAG,CAC5B,SAAU,QACV,SAAU,QACV,UAAW,QACX,aAAc,MACd,OAAQ,IACR,QAAS,GACrB,CACA,CACA,CAAC,EACKM,GAAsBZ,EAAOa,CAAM,EAAE,CACvC,QAAS,OACT,eAAgB,gBAChB,QAAS,OACT,kBAAmB,CACf,WAAY,MACpB,CACA,CAAC,EACKC,GAAwBd,EAAOa,CAAM,EAAE,CACzC,QAAS,MACb,CAAC,EACKE,GAAwBf,EAAOa,CAAM,EAAE,CACzC,QAAS,OACT,QAAS,OACT,QAAS,CACL,KAAM,CACd,EACI,4CAA6C,CACzC,YAAa,MACrB,CACA,CAAC,EChDKG,GAAeC,GAAM,KAAMb,GAAU,CACvC,KAAM,CAAE,SAAAc,EAAU,OAAAC,EAAQ,QAAAC,EAAS,MAAAC,EAAO,SAAAC,EAAU,KAAAjB,EAAM,QAAAkB,EAAS,OAAAC,EAAQ,gBAAAjB,EAAiB,eAAAC,EAAgB,mBAAAC,EAAoB,iBAAAC,CAAgB,EAAKN,EACrJ,OAAQqB,OAAMvB,GAAgB,CAAE,UAAW,GAAI,KAAMG,EAAM,gBAAiBE,EAAiB,eAAgBC,EAAgB,mBAAoBC,EAAoB,iBAAkBC,EAAkB,SAAU,CAACS,GAASE,GAASE,GAAWC,IAAYC,OAAMb,GAAqB,CAAE,SAAU,CAACY,GAAWE,MAAKC,EAAY,CAAE,aAAc,OAAQ,KAAM,QAAS,QAASH,EAAQ,SAAUE,MAAKE,GAA4B,EAAE,CAAC,CAAE,EAAIP,GAASK,MAAKG,EAAY,CAAE,QAAS,KAAM,SAAUR,CAAK,CAAE,EAAGE,GAAYG,MAAKC,EAAY,CAAE,aAAc,QAAS,KAAM,QAAS,QAASG,GAASP,EAAQO,EAAO,eAAe,EAAG,SAAUJ,MAAKK,GAAmB,EAAE,CAAC,CAAE,CAAE,CAAC,CAAE,EAAIT,GAAYI,MAAKG,EAAY,CAAE,QAAS,YAAa,SAAUP,EAAU,EAAGI,MAAKZ,GAAuB,CAAE,SAAUI,CAAQ,CAAE,EAAGE,GAAWM,MAAKX,GAAuB,CAAE,SAAUK,EAAS,CAAC,EAAG,CACz1B,CAAC,EACKrB,GAAQkB,GAAM,KAAMb,GAAU,CAChC,KAAM,CAAE,KAAA4B,EAAM,QAAAT,EAAS,SAAAL,EAAU,UAAAe,EAAW,GAAGC,CAAiB,EAAK9B,EACrE,OAAQsB,MAAKS,GAAW,CAAE,KAAMH,EAAM,QAAST,EAAS,UAAWU,EAAW,SAAUP,MAAKV,GAAc,CAAE,GAAGkB,EAAmB,QAASX,EAAS,SAAUL,CAAQ,CAAE,EAAG,CAChL,CAAC,WCVG5B,GAAyBC,EAC7B,OAAO,eAAe6C,EAAS,aAAc,CAC3C,MAAO,EACT,CAAC,EACD,IAAA3C,GAAA2C,EAAA,QAAkB,OACd1C,GAAiBJ,GAAuBK,GAAgC,EACxEC,GAAcC,EACHJ,GAAA2C,EAAA,WAAsB1C,GAAe,YAA2BE,GAAY,KAAK,OAAQ,CACtG,EAAG,gHACL,CAAC,EAAG,aAAa,WCTbN,GAAyBC,EAC7B,OAAO,eAAe8C,EAAS,aAAc,CAC3C,MAAO,EACT,CAAC,EACD,IAAA5C,GAAA4C,EAAA,QAAkB,OACd3C,GAAiBJ,GAAuBK,GAAgC,EACxEC,GAAcC,EACHJ,GAAA4C,EAAA,WAAsB3C,GAAe,YAA2BE,GAAY,KAAK,OAAQ,CACtG,EAAG,6GACL,CAAC,EAAG,sBAAsB,WCTtBN,GAAyBC,EAC7B,OAAO,eAAe+C,EAAS,aAAc,CAC3C,MAAO,EACT,CAAC,EACD,IAAA7C,GAAA6C,EAAA,QAAkB,OACd5C,GAAiBJ,GAAuBK,GAAgC,EACxEC,GAAcC,EACHJ,GAAA6C,EAAA,WAAsB5C,GAAe,YAA2BE,GAAY,KAAK,OAAQ,CACtG,EAAG,sgBACL,CAAC,EAAG,eAAe,ECZnB,MAAM2C,GAAW,6BACXC,GAAY,oBAUlB,SAASC,GAAkBC,EAAgBC,EAAiB,CAC1D,OAAID,GAASH,GAAS,KAAKG,CAAK,EAAU,CAAE,eAAgBA,EAAO,eAAgB,SAC/EC,GAAUH,GAAU,KAAKG,CAAM,EAAU,CAAE,eAAgBA,EAAQ,eAAgB,UAChF,CAAE,eAAgB,OAAW,eAAgB,OACtD,CAEO,SAASC,EAAgBC,EAAgEC,EAAgC,CAC9H,KAAM,CAAE,eAAAC,EAAgB,eAAAC,GAAmBP,GAAkBK,EAAO,MAAOA,EAAO,MAAM,EAIpF,CAACC,GAAkB,CAACC,GAExBH,EAAM,wBAAyB,CAC7B,aAAcC,EAAO,aACrB,OAAQA,EAAO,QAAU,UACzB,eAAAC,EACA,eAAAC,EACA,MAAOA,IAAmB,QAAUD,EAAiB,OACrD,OAAQ,UACR,SAAUD,EAAO,SAClB,CACH,CCjCA,MAAMG,GAAiB,0DCEjBC,GAA2BlD,EAAOmD,CAAG,EAAE,CAC3C,QAAS,OACT,cAAe,SACf,MAAO,MACT,CAAC,EAEKC,GAAkBpD,EAAOmD,CAAG,EAAE,CAClC,QAAS,OACT,cAAe,SACf,UAAW,MACb,CAAC,EAEKE,GAA2BrD,EAAOmD,CAAG,EAAE,CAAC,CAAE,MAAA7C,MAAa,CAC3D,QAAS,OACT,cAAe,MACf,IAAK,OACL,CAACA,EAAM,YAAY,KAAK,IAAI,CAAC,EAAG,CAC9B,cAAe,SACf,WAAY,aAEhB,EAAE,EAEIgD,GAAsBtD,EAAO,KAAK,EAAE,CACxC,OAAQ,OACR,MAAO,OACP,OAAQ,yBACV,CAAC,EAEKuD,GAAiBvD,EAAO6B,CAAU,EAAE,CACxC,QAAS,OACT,WAAY,SACZ,IAAK,OACL,YAAa,cACb,UAAW,iBACX,aAAc,OACd,YAAa,OACb,MAAO,aACT,CAAC,EAEK2B,GAAuBxD,EAAOmD,CAAG,EAAE,CAAC,CAAE,MAAA7C,MAAa,CACvD,MAAO,OACP,QAAS,OACT,cAAe,MACf,WAAY,aACZ,eAAgB,aAChB,UAAW,OACX,CAACA,EAAM,YAAY,KAAK,IAAI,CAAC,EAAG,CAC9B,eAAgB,SAEpB,EAAE,EAEImD,GAA4BzD,EAAOmD,CAAG,EAAE,CAAC,CAAE,MAAA7C,MAAa,CAC5D,QAAS,OACT,cAAe,MACf,IAAKA,EAAM,QAAQ,IAAI,CACzB,EAAE,EAEIoD,EAAoB1D,EAAO2D,CAAM,EAAE,CAAC,CAAE,MAAArD,MAAa,CACvD,QAAS,OACT,WAAY,SACZ,SAAU,GACT,qEAAuE,CACtE,YAAa,EACb,WAAY,GAEb,2DAA6D,CAC5D,IAAKA,EAAM,QAAQ,EAAG,EACtB,GAAGA,EAAM,WAAW,MACpB,WAAY,IACZ,cAAe,MACf,cAAe,aAEnB,EAAE,EAEIsD,EAAyB5D,EAAO,KAAK,EAAE,CAC3C,OAAQ,OACR,MAAO,OACP,OAAQ,yBACV,CAAC,ECxCK6D,EAAoC,CACxC,CAACC,EAAgB,OAAO,EAAGC,GAC3B,CAACD,EAAgB,KAAK,EAAGE,EAC3B,EAEMC,GAAkBC,OAAK,CAAC,CAAE,mBAAAC,EAAoB,gBAAAC,EAAiB,MAAA1B,EAAO,KAAA2B,KAAiC,CAC3G,KAAM,CAACC,EAAwBC,CAAa,EAAIC,GAAA,EAC1CC,EAAgBC,GAAA,EAChBC,EAAaC,GAAA,EACbC,EAAIC,EAAA,EACJ,CAAE,MAAAjC,CAAA,EAAUkC,GAAA,EACZC,EAAgBC,GAAA,EAEhBC,EAAQC,UAAQ,IAAMC,GAAwBC,GAAcC,GAAU,QAAQ,CAAC,GAAK,GAAI,EAAE,EAE1F,CAACC,EAAWC,CAAe,EAAIC,GAAa,SAAYC,GAAkB,MAAM,oBAAqB,EAAE,EAEvGC,EAAgDR,UAAQ,IACvDZ,EAYAW,EAAMX,EAAc,GAAG,IAAI,EAE5BA,EAAc,GAAG,OAAST,EAAgB,MACrC,CACL,CACE,KAAMA,EAAgB,MACtB,MAAOD,EAAUC,EAAgB,KAAK,EACtC,KAAMoB,EAAMpB,EAAgB,KAAK,EAAE,MACnC,KAAMS,EAAc,IAAI,aAC1B,EAIG,CACL,CACE,KAAMA,EAAc,GAAG,KACvB,MAAOV,EAAUU,EAAc,GAAG,IAAI,EACtC,KAAMW,EAAMX,EAAc,GAAG,IAAI,EAAEA,EAAc,IAAI,YAAY,EACjE,KAAMA,EAAc,IAAI,aAC1B,EAnBwC,GAXnCW,EAAMpB,EAAgB,OAAO,EAC3B,CACL,CACE,KAAMA,EAAgB,QACtB,MAAOD,EAAUC,EAAgB,OAAO,EACxC,KAAMoB,EAAMpB,EAAgB,OAAO,EAAE,IACrC,KAAM,MACR,EAP0C,GAgC7C,CAACS,EAAeW,CAAK,CAAC,EAEnBU,EAAkDT,UAAQ,IACzDZ,EAWDA,EAAc,GAAG,OAAST,EAAgB,MACrC,CACL,CACE,KAAMA,EAAgB,QACtB,MAAOD,EAAUC,EAAgB,OAAO,EACxC,KAAMoB,EAAMpB,EAAgB,OAAO,GAAG,IACxC,EAIG,CACL,CACE,KAAMA,EAAgB,MACtB,MAAOD,EAAUC,EAAgB,KAAK,EACtC,KAAMoB,EAAMpB,EAAgB,KAAK,GAAG,MACtC,EAzBKoB,EAAMpB,EAAgB,KAAK,EACzB,CACL,CACE,KAAMA,EAAgB,MACtB,MAAOD,EAAUC,EAAgB,KAAK,EACtC,KAAMoB,EAAMpB,EAAgB,KAAK,EAAE,MACrC,EANwC,GA2B3C,CAACS,EAAeW,CAAK,CAAC,EAEnBW,EAAyBC,cAC7B,MAAOC,GAAgC,CAErCnD,EAAgBC,EAAO,CACrB,aAAc,EACd,OAAQ,YACR,MAAAH,EACA,OAAQ2B,CAAA,CACT,EACDzB,EAAgBC,EAAO,CACrB,aAAc,EACd,OAAQ,UACR,MAAAH,EACA,OAAQ2B,EACR,SAAU,CAAE,GAAI0B,EAAO,KAAM,KAAMA,EAAO,KAAK,CAChD,EAEG3B,GACF,MAAM4B,GAA4B,CAChC,GAAID,EAAO,KACX,KAAMA,EAAO,KACb,cAAeb,EACf,YAAa,CAAE,CAACe,CAAkB,EAAGtB,CAAA,EACrC,cAAAF,CAAA,CACD,EAGH,MAAMyB,EAAe,oBACfC,EAAcC,GAAuB,IAAI,IAAIF,EAAc,OAAO,SAAS,MAAM,EAAE,WAAY,KAAMH,EAAO,IAAI,EAChHM,EAAWC,GAA0BH,EAAa,CAAE,KAAMJ,EAAO,KAAM,CAACE,CAAkB,EAAGtB,EAAY,EAC/G,WACE,IAAM,CACJ,OAAO,SAAS,KAAO0B,CACzB,EACAjC,EAAkB,IAAO,EAE7B,EACA,CAACA,EAAiBK,EAAeE,EAAYO,EAAOrC,EAAOH,EAAO2B,CAAI,GAGlEkC,EAA0B,CAACf,EAAgB,SAAWA,EAAgB,QAAUD,EAAYiB,GAAkBjB,CAAS,EAAI,KAEjI,OAAIjB,EAA+B,WAGhCpB,GAAA,CACE,SAAAyC,EAAuB,OAAS,UAC9BvC,GAAA,CACC,UAAAqD,MAACpD,GAAA,CACE,SAAAsC,EAAuB,IAAI,CAACI,EAAQW,IACnCD,MAACE,GAAA,CAEC,KAAMZ,EAAO,KACb,QAASjE,GAAS,CAChBA,EAAM,iBACNkD,EAAclD,CAAK,EACnB+D,EAAuBE,CAAM,CAC/B,EACA,MAAOa,GAAa,SACpB,MAAOC,GAAmB,SAC1B,QAASJ,MAACnD,GAAA,CAAoB,IAAKyC,EAAO,MAAO,EACjD,MAAOlB,EAAE,wBAAwB,EACjC,YAAa,IAXR6B,CAAA,CAaR,EACH,SACClD,GAAA,CACE,WAACW,GAAsBoC,GACtBO,OAACvD,GAAA,CAAe,QAAQ,QACtB,UAAAkD,MAACM,GAAA,EAAa,EAAE,IAAElC,EAAE,gCAAiC,CAAE,UAAW0B,EAAyB,GAC7F,SAED9C,GAAA,CACE,UAAAmC,EAAyB,IAAI,CAACG,EAAQW,IACrCD,MAAC/C,EAAA,CACC,QAAQ,OACR,MAAM,UACN,QAAS5B,GAAS,CAChBA,EAAM,iBACNkD,EAAclD,CAAK,EACnB+D,EAAuBE,CAAM,CAC/B,EACA,KAAMA,EAAO,KAEb,UAAWU,MAAC7C,EAAA,CAAuB,IAAKmC,EAAO,MAAO,EAErD,SAAAA,EAAO,KAAO,IAAIlB,EAAE,iBAAiBkB,EAAO,IAAI,mBAAmB,CAAC,IAAM,QAHtEW,CAAA,CAKR,EACDD,MAAC/C,EAAA,CACC,QAAQ,OACR,MAAM,UACN,KAAMsD,GACA,OAAQ,SAAU,IAAK,sBAC7B,UAAWP,MAAC7C,EAAA,CAAuB,IAAKqD,EAAS,uBAAuB,EAAG,IAE7ER,MAAC/C,EAAA,CACC,QAAQ,OACR,MAAM,UACN,KAAMT,GACA,OAAQ,SAAU,IAAK,sBAC7B,UAAWwD,MAAC7C,EAAA,CAAuB,IAAKqD,EAAS,gBAAgB,EAAG,GACtE,EACF,GACF,GACF,EAEJ,CAEJ,CAAC,EAEDhD,GAAgB,YAAc,kBCzO9B,MAAMiD,GAAmBlH,EAAO,MAAM,EAAE,CACtC,WAAY,mBACZ,WAAY,8BAA8BmH,EAAgB,IAAI,WAAWA,EAAgB,MAAM,UAC/F,eAAgB,OAChB,qBAAsB,OACtB,oBAAqB,cACrB,MAAO,cACP,SAAU,UACV,WAAY,UACZ,WAAY,UACZ,cAAe,SACjB,CAAC,ECVKC,EAAuBlD,OAAM9D,GAA4B,CAC7D,KAAM,CAAE,KAAAiH,GAASjH,EAEXkH,EAAQD,EAAK,MAAM,kBAAkB,EAC3C,yBAEK,SAAAC,EAAM,IAAI,CAACC,EAAMb,IAChBa,EAAK,gBAAkB,eACrBT,OAACU,WAAA,CACC,UAAAf,MAACS,IAAkB,SAAAK,CAAA,CAAK,QACvB,OAAG,IAFSb,CAGf,EAEAD,MAACe,WAAA,CAAsB,YAARd,CAAa,GAGlC,CAEJ,CAAC,ECrBDnG,GAAe,2HCGTkH,GAAwBzH,EAAOmD,CAAG,EAAE,CAAC,CAAE,MAAA7C,MAAa,CACxD,SAAU,WACV,QAAS,OACT,cAAe,SACf,KAAM,EACN,OAAQ,QACR,UAAW,QACX,WAAY,SACZ,eAAgB,SAChB,gBAAiB,6JAA6JC,EAAe,IAC7L,eAAgB,QAChB,mBAAoB,SACpB,CAACD,EAAM,YAAY,KAAK,IAAI,CAAC,EAAG,CAC9B,OAAQ,SACR,UAAW,QACX,SAAU,SAEd,EAAE,EAEIoH,GAAiC1H,EAAOmD,CAAG,EAAE,CACjD,SAAU,WACV,IAAK,EACL,KAAM,EACN,MAAO,EACP,OAAQ,EACR,WAAY,cACZ,OAAQ,CACV,CAAC,EAEKwE,GAAoB3H,EAAOmD,CAAG,EAAE,CAAC,CAAE,MAAA7C,MAAa,CACpD,QAAS,OACT,cAAe,MACf,eAAgB,gBAChB,WAAY,SACZ,aAAc,OACd,YAAaA,EAAM,QAAQ,IAAI,EAC/B,aAAcA,EAAM,QAAQ,CAAC,EAC7B,WAAY,EACZ,cAAe,EACf,OAAQ,QACR,MAAO,qBACP,WAAY,OACZ,YAAa,OACb,OAAQ,EACR,CAACA,EAAM,YAAY,KAAK,IAAI,CAAC,EAAG,CAC9B,YAAaA,EAAM,QAAQ,CAAC,GAE9B,CAACA,EAAM,YAAY,KAAK,IAAI,CAAC,EAAG,CAC9B,cAAe,SACf,WAAY,aACZ,MAAO,oBACP,QAASA,EAAM,QAAQ,IAAI,EAC3B,OAAQ,SACR,SAAU,WAEZ,CAACA,EAAM,YAAY,KAAK,IAAI,CAAC,EAAG,CAC9B,QAASA,EAAM,QAAQ,CAAC,EACxB,MAAO,OAEX,EAAE,EAEI4C,GAA2BlD,EAAOmD,CAAG,EAAE,CAC3C,OAAQ,GACR,SAAU,WACV,MAAO,OACT,CAAC,EAEKyE,GAAoB5H,EAAOmD,CAAG,EAAE,CAAC,CAAE,MAAA7C,MAAa,CACpD,QAAS,OACT,WAAY,SACZ,IAAKA,EAAM,QAAQ,CAAC,CACtB,EAAE,EAEIuH,GAA6B7H,EAAOmD,CAAG,EAAE,CAAC,CAAE,MAAA7C,MAAa,CAC7D,SAAU,WACV,OAAQ,MACR,KAAM,QACN,QAAS,OACT,cAAe,MACf,WAAY,SACZ,IAAKA,EAAM,QAAQ,EAAG,EACtB,OAAQ,EACV,EAAE,EAEIwH,GAAwB9H,EAAO6B,CAAU,EAAE,CAC/C,SAAU,OACV,WAAY,IACZ,WAAY,MACd,CAAC,EAEKkG,GAAwB/H,EAAOgI,EAAI,EAAE,CACzC,eAAgB,YAChB,oBAAqB,QACrB,qBAAsB,KACtB,wBAAyB,KACzB,OAAQ,UACR,cAAe,WACjB,CAAC,EAEKC,GAAyBjI,EAAOmD,CAAG,EAAE,CAAC,CAAE,MAAA7C,MAAa,CACzD,SAAU,QACV,SAAU,OACV,MAAO,OACP,OAAQ,OACR,SAAU,SACV,aAAc,OACd,OAAQ,OACR,SAAU,WACV,QAAS,OACT,CAACA,EAAM,YAAY,KAAK,IAAI,CAAC,EAAG,CAC9B,MAAO,QAET,CAACA,EAAM,YAAY,KAAK,IAAI,CAAC,EAAG,CAC9B,SAAU,QACV,SAAU,OACV,SAAU,UAEd,EAAE,EAEI4H,GAAmClI,EAAOmD,CAAG,EAAE,CAAC,CAAE,MAAA7C,MAAa,CACnE,MAAO,OACP,OAAQ,OACR,UAAW,QACX,UAAW,QACX,SAAU,WACV,IAAK,MACL,UAAW,mBACX,KAAM,EACN,MAAO,EACP,OAAQ,EACR,OAAQ,EACR,CAACA,EAAM,YAAY,KAAK,IAAI,CAAC,EAAG,CAC9B,UAAW,QACX,OAAQ,MACR,IAAK,MAET,EAAE,EAEI6H,GAAUnI,EAAOoI,EAAI,EAAE,CAAC,CAAE,MAAA9H,MAAa,CAC3C,OAAQ,OACR,MAAO,OACP,OAAQ,GACR,OAAQ,UACR,CAACA,EAAM,YAAY,GAAG,IAAI,CAAC,EAAG,CAC5B,SAAU,WACV,IAAKA,EAAM,QAAQ,CAAC,EACpB,KAAMA,EAAM,QAAQ,CAAC,EAEzB,EAAE,EAEI+H,GAAcrI,EAAO6B,CAAU,EAAE,CAAC,CAAE,MAAAvB,MAAa,CACrD,UAAWA,EAAM,QAAQ,CAAC,EAC1B,OAAQ,GACR,WAAY,IACZ,UAAW,SACX,SAAU,OACV,WAAY,OACZ,cAAe,KACjB,EAAE,EAEIgI,GAAgBtI,EAAO6B,CAAU,EAAE,CAAC,CAAE,MAAAvB,MAAa,CACvD,UAAWA,EAAM,QAAQ,CAAC,EAC1B,CAACA,EAAM,YAAY,KAAK,IAAI,CAAC,EAAG,CAC9B,UAAW,SACX,SAAU,QAEZ,CAACA,EAAM,YAAY,KAAK,IAAI,CAAC,EAAG,CAC9B,SAAU,SAEd,EAAE,EAEIiI,GAAgBvI,EAAOmD,CAAG,EAAE,CAAC,CAAE,MAAA7C,MAAa,CAChD,CAACA,EAAM,YAAY,KAAK,IAAI,CAAC,EAAG,CAC9B,cAAe,QAEnB,EAAE,EAEIkI,GAAiBxI,EAAOmD,CAAG,EAAE,CAAC,CAAE,MAAA7C,MAAa,CACjD,QAAS,OACT,cAAe,SACf,WAAY,SACZ,eAAgB,SAChB,SAAU,QACV,OAAQ,EACR,WAAY,uDACZ,MAAO,OACP,QAASA,EAAM,QAAQ,CAAC,EACxB,IAAKA,EAAM,QAAQ,CAAC,EACpB,OAAQ,GACV,EAAE,EAEImI,GAAczI,EAAO2D,CAAM,EAAE,CACjC,MAAO,OACP,OAAQ,MACV,CAAC,EAEK5D,GAAQC,EAAO0I,EAAc,EAAE,EAAE,EAEjC1H,GAAehB,EAAOmD,CAAG,EAAE,CAAC,CAAE,MAAA7C,MAAa,CAC/C,QAAS,OACT,cAAe,SACf,WAAY,SACZ,eAAgB,SAChB,IAAKA,EAAM,QAAQ,CAAC,EACpB,WAAYA,EAAM,QAAQ,CAAC,EAC3B,cAAeA,EAAM,QAAQ,CAAC,CAChC,EAAE,EAEIqI,GAAY3I,EAAOmD,CAAG,EAAE,CAC5B,QAAS,OACT,WAAY,SACZ,eAAgB,SAChB,aAAc,MACd,gBAAiByF,GAAe,QAChC,MAAO,OACP,OAAQ,MACV,CAAC,EAEKC,GAAa7I,EAAO6B,CAAU,EAAE,CACpC,WAAY,IACZ,UAAW,SACX,SAAU,OACV,WAAY,OACZ,cAAe,MACf,UAAW,SACX,cAAe,QACjB,CAAC,EC3LKiH,GAAiB5E,OAAM9D,GAA+B,CAC1D,KAAM,CAAE,MAAAiB,GAAUjB,EAEZ,CAAC2I,EAAWC,CAAY,EAAIC,WAAS,EAAK,EAE1C,CAACC,EAA0BC,CAA2B,EAAIF,WAAc,IAAI,EAE5EpE,EAAIC,EAAA,EACJ,CAAE,MAAAjC,CAAA,EAAUkC,GAAA,EACZqE,EAAYC,GAAA,EAEZ,CAAE,QAAAC,CAAA,EAAYC,GAAA,EAEd,CAAC7G,EAAO2B,CAAI,EAAIc,UAAQ,IAAM,CAClC,MAAMrC,EAAS,IAAI,gBAAgB,OAAO,SAAS,MAAM,EACzD,MAAO,CAACA,EAAO,IAAI,OAAO,GAAK,OAAWA,EAAO,IAAI,MAAM,GAAK,MAAS,CAC3E,EAAG,EAAE,EAGC0G,EAAcC,SAAO,EAAK,EAChCC,YAAU,IAAM,CACd,GAAI,CAAAF,EAAY,UAChBA,EAAY,QAAU,GACtB5G,EAAgBC,EAAO,CACrB,aAAc,EACd,OAAQ,UACR,MAAAH,EACA,OAAQ2B,CAAA,CACT,EAIG3B,GAAS2B,GAAM,CACjB,MAAMsF,EAAW,IAAI,IAAI,OAAO,SAAS,IAAI,EAC7CA,EAAS,aAAa,OAAO,OAAO,EACpCA,EAAS,aAAa,OAAO,MAAM,EACnC,OAAO,QAAQ,aAAa,KAAM,GAAIA,EAAS,UAAU,CAC3D,CACF,EAAG,CAAC9G,EAAOH,EAAO2B,CAAI,CAAC,EAEvB,MAAMuF,EAAiBvF,GAAQiF,EACzB,CAAE,KAAMO,CAAA,EAAYC,GAAmBF,GAAkB,OAAW,CAAE,KAAM,CAACA,EAAgB,EAC7FG,EAAcF,GAAS,UAAU,CAAC,GAAG,KAErCG,EAAuBP,SAA8B,IAAI,EACzD,CAAE,IAAKQ,EAAa,OAAAC,GAAWC,GAAU,CAAE,YAAa,GAAM,WAAY,QAAS,EAEnFC,EAAetE,cAAY,SAAY,CACvB,MAAMuE,GAAiB,EAAE,GAE3CrB,EAAa,EAAI,CAErB,EAAG,EAAE,EAELU,YAAU,IAAM,CACVQ,GACFI,GAAA,WAAO,+BAAkE,6CAAE,KAAKC,GAAU,CACxFpB,EAA4B,IAAMoB,EAAO,eAAe,CAC1D,CAAC,CAEL,EAAG,CAACL,CAAM,CAAC,EAEXR,YAAU,IAAM,CACd,GAAI,CAACR,EAA0B,OAC/B,MAAMsB,EAAYR,EAAqB,QACvC,GAAI,CAACQ,EAAW,OAEhB,MAAMC,EAAkBC,GAA8B,CAC/CA,EAAO,QACVA,EAAO,MAAQ7F,EAAE,8BAA8B,EAEnD,EAEM8F,EAAWH,EAAU,cAAiC,QAAQ,EACpE,GAAIG,EAAU,CACZF,EAAeE,CAAQ,EACvB,MACF,CAEA,MAAMC,EAAW,IAAI,iBAAiBC,GAAa,CACjD,UAAWC,MAAYD,EACrB,UAAWE,KAAQD,GAAS,WAAY,CACtC,GAAIC,aAAgB,kBAAmB,CACrCN,EAAeM,CAAI,EACnBH,EAAS,aACT,MACF,CACA,GAAIG,aAAgB,YAAa,CAC/B,MAAML,EAASK,EAAK,cAAiC,QAAQ,EAC7D,GAAIL,EAAQ,CACVD,EAAeC,CAAM,EACrBE,EAAS,aACT,MACF,CACF,CACF,CAEJ,CAAC,EAED,OAAAA,EAAS,QAAQJ,EAAW,CAAE,UAAW,GAAM,QAAS,GAAM,EACvD,IAAMI,EAAS,YACxB,EAAG,CAAC1B,EAA0BrE,CAAC,CAAC,EAEhC,MAAMmG,EAAuB7F,UAAQ,IAC5B,WAAa,KAAK,MAAM,KAAK,SAAY,GAAY,EAAI,GAC/D,EAAE,EAEC8F,EAAcnF,cAAY,SAAY,CAC1C,GAAI,CACF,MAAMoF,EAAW,IAAI,IAAI,OAAO,SAAS,IAAI,EAC7CA,EAAS,aAAa,OAAO,OAAO,EACpCA,EAAS,aAAa,OAAO,MAAM,EACnC,MAAM,UAAU,MAAM,CACpB,MAAOrG,EAAE,2BAA2B,EACpC,KAAMA,EAAE,2BAA2B,EACnC,IAAKqG,EAAS,UAAS,CACxB,CACH,MAAQ,CAER,CACF,EAAG,CAACrG,CAAC,CAAC,EAEN,OACEiC,OAAAU,WAAA,CACE,UAAAV,OAACW,GAAA,CACC,UAAAX,OAACa,GAAA,CACC,UAAAlB,MAAC0B,IAAQ,QAAS,IAAO,OAAO,SAAS,KAAO,2BAA6B,EAE5EiB,GACCtC,OAAAU,WAAA,CACE,UAAAf,MAACoB,GAAA,CACC,gBAACC,GAAA,CACE,UAAAjD,EAAE,kCAAkC,EAAG,UACvCkD,GAAA,CAAsB,QAASqC,EAAe,SAAAvF,EAAE,uBAAuB,EAAE,GAC5E,EACF,SACC3B,GAAA,CACC,UAAA4D,OAACc,GAAA,CACC,UAAAnB,MAAC0E,GAAA,CAAgB,UAAU,UAAU,SAAS,QAAQ,EACtD1E,MAAC5E,EAAA,CAAW,QAAQ,KACjB,WAAE,0BAA2B,CAC5B,KAAMkI,GAAelF,EAAE,4BAA4B,EACpD,EACH,GACF,EACA4B,MAAC6B,IAAc,QAAQ,KACrB,eAAClB,EAAA,CAAqB,KAAM/F,EAAO,EACrC,EACAoF,MAACxC,GAAA,CAAgB,MAAAvB,EAAc,KAAA2B,CAAA,CAAY,GAC7C,GACF,EAGD,CAAC+E,GACA3C,MAAC4B,GAAA,CAAY,QAAQ,KACnB,SAAA5B,MAACW,EAAA,CAAqB,KAAM/F,CAAA,CAAO,EACrC,SAGD4G,GAAA,CACE,WAACmB,SAAc1B,GAAA,EAA+B,EAC/CjB,MAACyB,GAAA,CACC,IAAM6C,GAAgC,CACpCd,EAAYc,CAAI,EAChBf,EAAqB,QAAUe,CACjC,EAEC,SAAA7B,GACCzC,MAACyC,EAAA,CACC,MAAK,GACL,UAAU,QACV,QAASW,GAAS,UAAU,CAAC,GAAG,YAAcmB,EAC9C,kBAAmB,GACnB,SAAU,GACV,IAAK,GACL,QAASI,GAAO,sBAAsB,GACxC,EAEJ,EACF,GACF,EAEC,CAAChC,GAAa,OAAO,UAAc,KAAe,CAAC,CAAC,UAAU,OAC7DtC,OAAC0B,GAAA,CACC,UAAA/B,MAAC5E,EAAA,CAAW,QAAQ,KAAM,SAAAgD,EAAE,yCAAyC,EAAE,EACvE4B,MAACgC,GAAA,CAAY,QAASwC,EAAa,QAASxE,MAAC4E,GAAA,EAAkB,EAAI,QAAQ,YACxE,SAAAxG,EAAE,gCAAgC,EACrC,GACF,QAED9E,GAAA,CAAM,KAAMgJ,EAAW,KAAK,OAC3B,gBAAC/H,GAAA,CACC,UAAAyF,MAACkC,GAAA,CACC,SAAAlC,MAAC6E,GAAA,EAAyB,EAC5B,SACCzC,GAAA,CACE,UAAAhE,EAAE,sCAAsC,QACxC,OAAG,EACHA,EAAE,uCAAuC,GAC5C,EACA4B,MAAC9C,EAAA,CAAO,QAAQ,YAAY,QAAS,IAAMqF,EAAa,EAAK,EAC1D,SAAAnE,EAAE,yBAAyB,EAC9B,GACF,EACF,GACF,EACA4B,MAAC8B,GAAA,CACC,SAAA9B,MAAC8E,GAAA,EAAc,EACjB,GACF,CAEJ,CAAC,EC1PKC,GAAe,IAAM,CACzB,MAAM3G,EAAIC,EAAA,EAEV,aAAQgE,GAAA,CAAe,MAAOjE,EAAE,yCAAyC,EAAG,aAAa,oBAAoB,CAC/G","names":["_interopRequireDefault","require$$0","ArrowBackIosNewRounded","default_1","_createSvgIcon","require$$1","_jsxRuntime","require$$2","CancelRounded","Modal","styled","MuiModal","ModalContainer","PaperMui","props","size","theme","backgroundImage","backgroundSize","backgroundPosition","backgroundRepeat","width","ModalTitleContainer","BoxMui","ModalContentContainer","ModalActionsContainer","ModalContent","React","children","header","actions","title","subtitle","onClose","onBack","_jsxs","_jsx","IconButton","ArrowBackIosNewRoundedIcon","Typography","event","CancelRoundedIcon","open","className","modalContentProps","BaseModal","CheckCircle","FileDownloadOutlined","ShareOutlined","EMAIL_RE","WALLET_RE","resolveIdentifier","email","wallet","trackCheckpoint","track","params","userIdentifier","identifierType","EPIC_GAMES_URL","DownloadOptionsContainer","Box","DownloadActions","DownloadButtonsContainer","DownloadButtonImage","DownloadCounts","AlternativeContainer","AlternativeButtonsWrapper","AlternativeButton","Button","AlternativeButtonImage","imageByOs","OperativeSystem","microsoftLogo","appleLogo","DownloadOptions","memo","hideDownloadCounts","downloadOnClick","user","isLoadingUserAgentData","userAgentData","useAdvancedUserAgentData","getIdentityId","useGetIdentityId","anonUserId","useAnonUserId","l","useFormatMessage","useAnalytics","onClickHandle","useTrackClick","links","useMemo","sanitizeCDNReleaseLinks","getCDNRelease","CDNSource","downloads","downloadsStatus","useAsyncMemo","ExplorerDownloads","primaryDownloadOptions","secondaryDownloadOptions","onClickDownloadHandler","useCallback","option","getDownloadLinkWithIdentity","ANON_USER_ID_PARAM","redirectPath","redirectUrl","updateUrlWithLastValue","finalUrl","addQueryParamsToUrlString","downloadCountsFormatted","formatToShorthand","jsx","index","CTAButton","SegmentEvent","SectionViewedTrack","jsxs","VerifiedIcon","GOOGLE_PLAY_DESKTOP_URL","assetUrl","DecentralandText","dclColors.brand","WrapDecentralandText","text","parts","part","Fragment","DownloadPageContainer","DownloadWearablePreviewOverlay","DownloadContainer","PreTitleContainer","AlreadyDownloadedContainer","AlreadyDownloadedText","AlreadyDownloadedLink","Link","DownloadImageContainer","DownloadWearablePreviewContainer","DclLogo","Logo","MobileTitle","DownloadTitle","FooterWrapper","ShareContainer","ShareButton","dclModal.Modal","ModalIcon","dclColors.base","ModalTitle","DownloadLayout","openModal","setOpenModal","useState","WearablePreviewComponent","setWearablePreviewComponent","isDesktop","useDesktopMediaQuery","address","useWalletAddress","hasFiredCp5","useRef","useEffect","cleanUrl","profileAddress","profile","useGetProfileQuery","profileName","wearableContainerRef","wearableRef","inView","useInView","handleJumpIn","launchDesktopApp","__vitePreload","module","container","setIframeTitle","iframe","existing","observer","mutations","mutation","node","randomDefaultProfile","handleShare","shareUrl","CheckCircleIcon","getEnv","ShareOutlinedIcon","FileDownloadOutlinedIcon","LandingFooter","DownloadPage"],"ignoreList":[0,1,2,3,4,5,6],"sources":["../../node_modules/@mui/icons-material/ArrowBackIosNewRounded.js","../../node_modules/@mui/icons-material/CancelRounded.js","../../node_modules/decentraland-ui2/dist/components/Modal/Modal.styled.js","../../node_modules/decentraland-ui2/dist/components/Modal/Modal.js","../../node_modules/@mui/icons-material/CheckCircle.js","../../node_modules/@mui/icons-material/FileDownloadOutlined.js","../../node_modules/@mui/icons-material/ShareOutlined.js","../../src/modules/onboardingCheckpoint.ts","../../src/components/Home/shared/epicGames.ts","../../src/components/DownloadOptions/DownloadOptions.styled.ts","../../src/components/DownloadOptions/DownloadOptions.tsx","../../src/components/WrapDecentralandText/WrapDecentralandText.styled.ts","../../src/components/WrapDecentralandText/WrapDecentralandText.tsx","../../src/images/download/download_background.webp","../../src/components/Layout/DownloadLayout.styled.ts","../../src/components/Layout/DownloadLayout.tsx","../../src/pages/download.tsx"],"sourcesContent":["\"use strict\";\n\"use client\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = exports.default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M16.88 2.88c-.49-.49-1.28-.49-1.77 0L6.7 11.29c-.39.39-.39 1.02 0 1.41l8.41 8.41c.49.49 1.28.49 1.77 0s.49-1.28 0-1.77L9.54 12l7.35-7.35c.48-.49.48-1.28-.01-1.77\"\n}), 'ArrowBackIosNewRounded');","\"use strict\";\n\"use client\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = exports.default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M12 2C6.47 2 2 6.47 2 12s4.47 10 10 10 10-4.47 10-10S17.53 2 12 2m4.3 14.3c-.39.39-1.02.39-1.41 0L12 13.41 9.11 16.3c-.39.39-1.02.39-1.41 0a.9959.9959 0 0 1 0-1.41L10.59 12 7.7 9.11a.9959.9959 0 0 1 0-1.41c.39-.39 1.02-.39 1.41 0L12 10.59l2.89-2.89c.39-.39 1.02-.39 1.41 0 .39.39.39 1.02 0 1.41L13.41 12l2.89 2.89c.38.38.38 1.02 0 1.41\"\n}), 'CancelRounded');","import styled from '@emotion/styled';\nimport { Box as BoxMui, Modal as MuiModal, Paper as PaperMui } from '@mui/material';\nconst Modal = styled(MuiModal)({\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center'\n});\nconst ModalContainer = styled(PaperMui)(props => {\n const { size, theme, backgroundImage, backgroundSize, backgroundPosition, backgroundRepeat } = props;\n let width = '900px';\n if (size === 'tiny') {\n width = '540px';\n }\n else if (size === 'small') {\n width = '720px';\n }\n return {\n width,\n borderRadius: '12px',\n overflow: 'hidden',\n backgroundImage: backgroundImage && `url(${backgroundImage})`,\n backgroundSize: backgroundImage && backgroundSize,\n backgroundPosition: backgroundImage && backgroundPosition,\n backgroundRepeat: backgroundImage && backgroundRepeat,\n [theme.breakpoints.down('xs')]: {\n minWidth: '100vw',\n maxWidth: '100vw',\n minHeight: '100vh',\n borderRadius: '0px',\n margin: '0',\n padding: '0'\n }\n };\n});\nconst ModalTitleContainer = styled(BoxMui)({\n display: 'flex',\n justifyContent: 'space-between',\n padding: '24px',\n '& > :only-child': {\n marginLeft: 'auto'\n }\n});\nconst ModalContentContainer = styled(BoxMui)({\n padding: '24px'\n});\nconst ModalActionsContainer = styled(BoxMui)({\n display: 'flex',\n padding: '24px',\n '& > *': {\n flex: 1\n },\n '& > *.MuiButtonBase-root:not(:last-child)': {\n marginRight: '16px'\n }\n});\nexport { Modal, ModalContainer, ModalTitleContainer, ModalContentContainer, ModalActionsContainer };\n//# sourceMappingURL=Modal.styled.js.map","import { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport React from 'react';\nimport ArrowBackIosNewRoundedIcon from '@mui/icons-material/ArrowBackIosNewRounded';\nimport CancelRoundedIcon from '@mui/icons-material/CancelRounded';\nimport { IconButton, Typography } from '@mui/material';\nimport { Modal as BaseModal, ModalActionsContainer, ModalContainer, ModalContentContainer, ModalTitleContainer } from './Modal.styled';\nconst ModalContent = React.memo((props) => {\n const { children, header, actions, title, subtitle, size, onClose, onBack, backgroundImage, backgroundSize, backgroundPosition, backgroundRepeat } = props;\n return (_jsxs(ModalContainer, { elevation: 24, size: size, backgroundImage: backgroundImage, backgroundSize: backgroundSize, backgroundPosition: backgroundPosition, backgroundRepeat: backgroundRepeat, children: [header, (title || onClose || onBack) && (_jsxs(ModalTitleContainer, { children: [onBack && (_jsx(IconButton, { \"aria-label\": \"back\", size: \"large\", onClick: onBack, children: _jsx(ArrowBackIosNewRoundedIcon, {}) })), title && _jsx(Typography, { variant: \"h5\", children: title }), onClose && (_jsx(IconButton, { \"aria-label\": \"close\", size: \"large\", onClick: event => onClose(event, 'escapeKeyDown'), children: _jsx(CancelRoundedIcon, {}) }))] })), subtitle && _jsx(Typography, { variant: \"subtitle1\", children: subtitle }), _jsx(ModalContentContainer, { children: children }), actions && _jsx(ModalActionsContainer, { children: actions })] }));\n});\nconst Modal = React.memo((props) => {\n const { open, onClose, children, className, ...modalContentProps } = props;\n return (_jsx(BaseModal, { open: open, onClose: onClose, className: className, children: _jsx(ModalContent, { ...modalContentProps, onClose: onClose, children: children }) }));\n});\nexport { Modal, ModalContent };\n//# sourceMappingURL=Modal.js.map","\"use strict\";\n\"use client\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = exports.default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2m-2 15-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8z\"\n}), 'CheckCircle');","\"use strict\";\n\"use client\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = exports.default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M18 15v3H6v-3H4v3c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2v-3zm-1-4-1.41-1.41L13 12.17V4h-2v8.17L8.41 9.59 7 11l5 5z\"\n}), 'FileDownloadOutlined');","\"use strict\";\n\"use client\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = exports.default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M18 16.08c-.76 0-1.44.3-1.96.77L8.91 12.7c.05-.23.09-.46.09-.7s-.04-.47-.09-.7l7.05-4.11c.54.5 1.25.81 2.04.81 1.66 0 3-1.34 3-3s-1.34-3-3-3-3 1.34-3 3c0 .24.04.47.09.7L8.04 9.81C7.5 9.31 6.79 9 6 9c-1.66 0-3 1.34-3 3s1.34 3 3 3c.79 0 1.5-.31 2.04-.81l7.12 4.16c-.05.21-.08.43-.08.65 0 1.61 1.31 2.92 2.92 2.92s2.92-1.31 2.92-2.92c0-1.61-1.31-2.92-2.92-2.92M18 4c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1M6 13c-.55 0-1-.45-1-1s.45-1 1-1 1 .45 1 1-.45 1-1 1m12 7.02c-.55 0-1-.45-1-1s.45-1 1-1 1 .45 1 1-.45 1-1 1\"\n}), 'ShareOutlined');","const EMAIL_RE = /^[^\\s@]+@[^\\s@]+\\.[^\\s@]+$/\nconst WALLET_RE = /^0x[0-9a-f]{40}$/i\n\ntype CheckpointParams = {\n checkpointId: 5 | 6\n action?: 'reached' | 'completed'\n email?: string\n wallet?: string\n metadata?: Record<string, unknown>\n}\n\nfunction resolveIdentifier(email?: string, wallet?: string) {\n if (email && EMAIL_RE.test(email)) return { userIdentifier: email, identifierType: 'email' as const }\n if (wallet && WALLET_RE.test(wallet)) return { userIdentifier: wallet, identifierType: 'wallet' as const }\n return { userIdentifier: undefined, identifierType: undefined }\n}\n\nexport function trackCheckpoint(track: (event: string, data?: Record<string, unknown>) => void, params: CheckpointParams): void {\n const { userIdentifier, identifierType } = resolveIdentifier(params.email, params.wallet)\n\n // Don't send checkpoints without an identifier — they cause 400s on the backend\n // and we can't send nudge emails without knowing who the user is\n if (!userIdentifier || !identifierType) return\n\n track('Onboarding Checkpoint', {\n checkpointId: params.checkpointId,\n action: params.action ?? 'reached',\n userIdentifier,\n identifierType,\n email: identifierType === 'email' ? userIdentifier : undefined,\n source: 'landing',\n metadata: params.metadata\n })\n}\n","const EPIC_GAMES_URL = 'https://store.epicgames.com/en-US/p/decentraland-b692fb'\n\nexport { EPIC_GAMES_URL }\n","import { Box, Button, Typography, styled } from 'decentraland-ui2'\n\nconst DownloadOptionsContainer = styled(Box)({\n display: 'flex',\n flexDirection: 'column',\n width: '100%'\n})\n\nconst DownloadActions = styled(Box)({\n display: 'flex',\n flexDirection: 'column',\n marginTop: '60px'\n})\n\nconst DownloadButtonsContainer = styled(Box)(({ theme }) => ({\n display: 'flex',\n flexDirection: 'row',\n gap: '16px',\n [theme.breakpoints.down('xl')]: {\n flexDirection: 'column',\n alignItems: 'flex-start'\n }\n}))\n\nconst DownloadButtonImage = styled('img')({\n height: '32px',\n width: '32px',\n filter: 'brightness(0) invert(1)'\n})\n\nconst DownloadCounts = styled(Typography)({\n display: 'flex',\n alignItems: 'center',\n gap: '12px',\n borderRight: '0.5px solid',\n marginTop: '8px !important',\n paddingRight: '16px',\n marginRight: '16px',\n width: 'fit-content'\n})\n\nconst AlternativeContainer = styled(Box)(({ theme }) => ({\n width: '100%',\n display: 'flex',\n flexDirection: 'row',\n alignItems: 'flex-start',\n justifyContent: 'flex-start',\n marginTop: '16px',\n [theme.breakpoints.down('md')]: {\n justifyContent: 'center'\n }\n}))\n\nconst AlternativeButtonsWrapper = styled(Box)(({ theme }) => ({\n display: 'flex',\n flexDirection: 'row',\n gap: theme.spacing(1.25)\n}))\n\nconst AlternativeButton = styled(Button)(({ theme }) => ({\n display: 'flex',\n alignItems: 'center',\n minWidth: 24,\n ['& span.MuiButton-icon.MuiButton-startIcon.MuiButton-iconSizeMedium']: {\n marginRight: 0,\n marginLeft: 0\n },\n ['&.MuiButtonBase-root.MuiButton-root.MuiButton-sizeMedium']: {\n gap: theme.spacing(0.5),\n ...theme.typography.body1,\n fontWeight: 400,\n letterSpacing: '0px',\n textTransform: 'capitalize'\n }\n}))\n\nconst AlternativeButtonImage = styled('img')({\n height: '24px',\n width: '24px',\n filter: 'brightness(0) invert(1)'\n})\n\nexport {\n AlternativeButton,\n AlternativeButtonImage,\n AlternativeButtonsWrapper,\n AlternativeContainer,\n DownloadActions,\n DownloadButtonImage,\n DownloadButtonsContainer,\n DownloadCounts,\n DownloadOptionsContainer\n}\n","import { memo, useCallback, useMemo } from 'react'\nimport { useAdvancedUserAgentData, useAnalytics, useAsyncMemo } from '@dcl/hooks'\nimport { CDNSource, getCDNRelease } from 'decentraland-ui2/dist/modules/cdnReleases'\nimport { useFormatMessage } from '../../hooks/adapters/useFormatMessage'\nimport { useTrackClick } from '../../hooks/adapters/useTrackLinkContext'\nimport { ANON_USER_ID_PARAM, useAnonUserId } from '../../hooks/useAnonUserId'\nimport { useGetIdentityId } from '../../hooks/useGetIdentityId'\nimport appleLogo from '../../images/apple-logo.svg'\nimport microsoftLogo from '../../images/microsoft-logo.svg'\nimport { getDownloadLinkWithIdentity } from '../../modules/downloadWithIdentity'\nimport { ExplorerDownloads } from '../../modules/explorerDownloads'\nimport { formatToShorthand } from '../../modules/number'\nimport { trackCheckpoint } from '../../modules/onboardingCheckpoint'\nimport { SectionViewedTrack, SegmentEvent } from '../../modules/segment'\nimport { addQueryParamsToUrlString, sanitizeCDNReleaseLinks, updateUrlWithLastValue } from '../../modules/url'\nimport { Architecture, DownloadOptionProps, OperativeSystem } from '../../types/download.types'\nimport { assetUrl } from '../../utils/assetUrl'\nimport { CTAButton } from '../Buttons/CTAButton'\nimport { EPIC_GAMES_URL } from '../Home/shared/epicGames'\nimport { GOOGLE_PLAY_DESKTOP_URL } from '../Home/shared/googlePlay'\nimport { VerifiedIcon } from '../Icon/VerifiedIcon'\nimport {\n AlternativeButton,\n AlternativeButtonImage,\n AlternativeButtonsWrapper,\n AlternativeContainer,\n DownloadActions,\n DownloadButtonImage,\n DownloadButtonsContainer,\n DownloadCounts,\n DownloadOptionsContainer\n} from './DownloadOptions.styled'\n\ninterface DownloadOptionsProps {\n hideDownloadCounts?: boolean\n downloadOnClick?: boolean\n email?: string\n user?: string\n}\n\nconst imageByOs: Record<string, string> = {\n [OperativeSystem.WINDOWS]: microsoftLogo,\n [OperativeSystem.MACOS]: appleLogo\n}\n\nconst DownloadOptions = memo(({ hideDownloadCounts, downloadOnClick, email, user }: DownloadOptionsProps) => {\n const [isLoadingUserAgentData, userAgentData] = useAdvancedUserAgentData()\n const getIdentityId = useGetIdentityId()\n const anonUserId = useAnonUserId()\n const l = useFormatMessage()\n const { track } = useAnalytics()\n const onClickHandle = useTrackClick()\n\n const links = useMemo(() => sanitizeCDNReleaseLinks(getCDNRelease(CDNSource.LAUNCHER)) || {}, [])\n\n const [downloads, downloadsStatus] = useAsyncMemo(async () => ExplorerDownloads.get().getTotalDownloads(), [])\n\n const primaryDownloadOptions: DownloadOptionProps[] = useMemo(() => {\n if (!userAgentData) {\n if (!links[OperativeSystem.WINDOWS]) return []\n return [\n {\n text: OperativeSystem.WINDOWS,\n image: imageByOs[OperativeSystem.WINDOWS],\n link: links[OperativeSystem.WINDOWS].x64,\n arch: 'x64' as Architecture\n }\n ]\n }\n\n if (!links[userAgentData.os.name]) return []\n\n if (userAgentData.os.name === OperativeSystem.MACOS) {\n return [\n {\n text: OperativeSystem.MACOS,\n image: imageByOs[OperativeSystem.MACOS],\n link: links[OperativeSystem.MACOS].arm64,\n arch: userAgentData.cpu.architecture as Architecture\n }\n ]\n }\n\n return [\n {\n text: userAgentData.os.name,\n image: imageByOs[userAgentData.os.name],\n link: links[userAgentData.os.name][userAgentData.cpu.architecture],\n arch: userAgentData.cpu.architecture as Architecture\n }\n ]\n }, [userAgentData, links])\n\n const secondaryDownloadOptions: DownloadOptionProps[] = useMemo(() => {\n if (!userAgentData) {\n if (!links[OperativeSystem.MACOS]) return []\n return [\n {\n text: OperativeSystem.MACOS,\n image: imageByOs[OperativeSystem.MACOS],\n link: links[OperativeSystem.MACOS].arm64\n }\n ]\n }\n\n if (userAgentData.os.name === OperativeSystem.MACOS) {\n return [\n {\n text: OperativeSystem.WINDOWS,\n image: imageByOs[OperativeSystem.WINDOWS],\n link: links[OperativeSystem.WINDOWS]?.x64\n }\n ]\n }\n\n return [\n {\n text: OperativeSystem.MACOS,\n image: imageByOs[OperativeSystem.MACOS],\n link: links[OperativeSystem.MACOS]?.arm64\n }\n ]\n }, [userAgentData, links])\n\n const onClickDownloadHandler = useCallback(\n async (option: DownloadOptionProps) => {\n // CP5 completed + CP6 reached: user clicked download\n trackCheckpoint(track, {\n checkpointId: 5,\n action: 'completed',\n email,\n wallet: user\n })\n trackCheckpoint(track, {\n checkpointId: 6,\n action: 'reached',\n email,\n wallet: user,\n metadata: { os: option.text, arch: option.arch }\n })\n\n if (downloadOnClick) {\n await getDownloadLinkWithIdentity({\n os: option.text,\n arch: option.arch,\n fallbackLinks: links,\n queryParams: { [ANON_USER_ID_PARAM]: anonUserId },\n getIdentityId\n })\n }\n\n const redirectPath = '/download_success'\n const redirectUrl = updateUrlWithLastValue(new URL(redirectPath, window.location.origin).toString(), 'os', option.text)\n const finalUrl = addQueryParamsToUrlString(redirectUrl, { arch: option.arch, [ANON_USER_ID_PARAM]: anonUserId })\n setTimeout(\n () => {\n window.location.href = finalUrl\n },\n downloadOnClick ? 3000 : 0\n )\n },\n [downloadOnClick, getIdentityId, anonUserId, links, track, email, user]\n )\n\n const downloadCountsFormatted = !downloadsStatus.loading && downloadsStatus.loaded && downloads ? formatToShorthand(downloads) : null\n\n if (isLoadingUserAgentData) return null\n\n return (\n <DownloadOptionsContainer>\n {primaryDownloadOptions.length > 0 && (\n <DownloadActions>\n <DownloadButtonsContainer>\n {primaryDownloadOptions.map((option, index) => (\n <CTAButton\n key={index}\n href={option.link!}\n onClick={event => {\n event.preventDefault()\n onClickHandle(event)\n onClickDownloadHandler(option)\n }}\n event={SegmentEvent.DOWNLOAD}\n place={SectionViewedTrack.DOWNLOAD}\n endIcon={<DownloadButtonImage src={option.image} />}\n label={l('page.download.download')}\n isFullWidth={false}\n />\n ))}\n </DownloadButtonsContainer>\n <AlternativeContainer>\n {!hideDownloadCounts && downloadCountsFormatted && (\n <DownloadCounts variant=\"body1\">\n <VerifiedIcon /> {l('page.download.total_downloads', { downloads: downloadCountsFormatted })}\n </DownloadCounts>\n )}\n <AlternativeButtonsWrapper>\n {secondaryDownloadOptions.map((option, index) => (\n <AlternativeButton\n variant=\"text\"\n color=\"inherit\"\n onClick={event => {\n event.preventDefault()\n onClickHandle(event)\n onClickDownloadHandler(option)\n }}\n href={option.link}\n key={index}\n startIcon={<AlternativeButtonImage src={option.image} />}\n >\n {option.arch ? `(${l(`page.download.${option.arch}_processors_short`)})` : undefined}\n </AlternativeButton>\n ))}\n <AlternativeButton\n variant=\"text\"\n color=\"inherit\"\n href={GOOGLE_PLAY_DESKTOP_URL}\n {...{ target: '_blank', rel: 'noopener noreferrer' }}\n startIcon={<AlternativeButtonImage src={assetUrl('/google_play_icon.svg')} />}\n />\n <AlternativeButton\n variant=\"text\"\n color=\"inherit\"\n href={EPIC_GAMES_URL}\n {...{ target: '_blank', rel: 'noopener noreferrer' }}\n startIcon={<AlternativeButtonImage src={assetUrl('/epic_icon.svg')} />}\n />\n </AlternativeButtonsWrapper>\n </AlternativeContainer>\n </DownloadActions>\n )}\n </DownloadOptionsContainer>\n )\n})\n\nDownloadOptions.displayName = 'DownloadOptions'\n\nexport { DownloadOptions }\n","import { dclColors, styled } from 'decentraland-ui2'\n\nconst DecentralandText = styled('span')({\n fontFamily: 'DecentralandHero',\n background: `linear-gradient(261.51deg, ${dclColors.brand.ruby} 6.92%, ${dclColors.brand.yellow} 83.3%)`,\n backgroundClip: 'text',\n webkitBackgroundClip: 'text',\n webkitTextFillColor: 'transparent',\n color: 'transparent',\n fontSize: 'inherit',\n fontWeight: 'inherit',\n lineHeight: 'inherit',\n letterSpacing: 'inherit'\n})\n\nexport { DecentralandText }\n","import { Fragment, memo } from 'react'\nimport { DecentralandText } from './WrapDecentralandText.styled'\n\nconst WrapDecentralandText = memo((props: { text: string }) => {\n const { text } = props\n\n const parts = text.split(/(Decentraland)/gi)\n return (\n <>\n {parts.map((part, index) =>\n part.toLowerCase() === 'decentraland' ? (\n <Fragment key={index}>\n <DecentralandText>{part}</DecentralandText>\n <br />\n </Fragment>\n ) : (\n <Fragment key={index}>{part}</Fragment>\n )\n )}\n </>\n )\n})\n\nexport { WrapDecentralandText }\n","export default \"__VITE_ASSET__C9P6dCJ___\"","import { Box, Button, Link, Logo, Typography, dclColors, dclModal, styled } from 'decentraland-ui2'\nimport backgroundImage from '../../images/download/download_background.webp'\n\nconst DownloadPageContainer = styled(Box)(({ theme }) => ({\n position: 'relative',\n display: 'flex',\n flexDirection: 'column',\n flex: 1,\n height: '100vh',\n minHeight: '650px',\n alignItems: 'center',\n justifyContent: 'center',\n backgroundImage: `linear-gradient(150deg, #2A0C43 0%, #2A0C43 25%, transparent 100%), linear-gradient(225deg, #2A0C43 0%, rgba(42, 12, 67, 0.8) 15%, transparent 100%), url(${backgroundImage})`,\n backgroundSize: 'cover',\n backgroundPosition: 'center',\n [theme.breakpoints.down('sm')]: {\n height: '100svh',\n minHeight: 'unset',\n overflow: 'hidden'\n }\n}))\n\nconst DownloadWearablePreviewOverlay = styled(Box)({\n position: 'absolute',\n top: 0,\n left: 0,\n right: 0,\n bottom: 0,\n background: 'transparent',\n zIndex: 3\n})\n\nconst DownloadContainer = styled(Box)(({ theme }) => ({\n display: 'flex',\n flexDirection: 'row',\n justifyContent: 'space-between',\n alignItems: 'center',\n borderRadius: '32px',\n paddingLeft: theme.spacing(17.5),\n paddingRight: theme.spacing(9),\n paddingTop: 0,\n paddingBottom: 0,\n height: '100vh',\n width: 'calc(100% - 144px)',\n marginLeft: 'auto',\n marginRight: 'auto',\n zIndex: 2,\n [theme.breakpoints.down('lg')]: {\n paddingLeft: theme.spacing(9)\n },\n [theme.breakpoints.down('sm')]: {\n flexDirection: 'column',\n alignItems: 'flex-start',\n width: 'calc(100% - 32px)',\n padding: theme.spacing(15.5),\n height: '100svh',\n overflow: 'visible'\n },\n [theme.breakpoints.down('xs')]: {\n padding: theme.spacing(3),\n width: '100%'\n }\n}))\n\nconst DownloadOptionsContainer = styled(Box)({\n zIndex: 10,\n position: 'relative',\n width: '100vw'\n})\n\nconst PreTitleContainer = styled(Box)(({ theme }) => ({\n display: 'flex',\n alignItems: 'center',\n gap: theme.spacing(1)\n}))\n\nconst AlreadyDownloadedContainer = styled(Box)(({ theme }) => ({\n position: 'absolute',\n bottom: '10%',\n left: '212px',\n display: 'flex',\n flexDirection: 'row',\n alignItems: 'center',\n gap: theme.spacing(0.5),\n zIndex: 10\n}))\n\nconst AlreadyDownloadedText = styled(Typography)({\n fontSize: '20px',\n fontWeight: 500,\n lineHeight: '160%'\n})\n\nconst AlreadyDownloadedLink = styled(Link)({\n textDecoration: 'underline',\n textDecorationStyle: 'solid',\n textDecorationOffset: '0%',\n textDecorationThickness: '0%',\n cursor: 'pointer',\n textTransform: 'uppercase'\n})\n\nconst DownloadImageContainer = styled(Box)(({ theme }) => ({\n maxWidth: '900px',\n minWidth: '50vh',\n width: '100%',\n height: '100%',\n overflow: 'hidden',\n borderRadius: '24px',\n border: 'none',\n position: 'relative',\n display: 'flex',\n [theme.breakpoints.down('md')]: {\n width: '100%'\n },\n [theme.breakpoints.down('sm')]: {\n minWidth: 'unset',\n maxWidth: '100%',\n overflow: 'visible'\n }\n}))\n\nconst DownloadWearablePreviewContainer = styled(Box)(({ theme }) => ({\n width: '100%',\n height: '110%',\n maxHeight: '700px',\n minHeight: '500px',\n position: 'absolute',\n top: '50%',\n transform: 'translateY(-50%)',\n left: 0,\n right: 0,\n bottom: 0,\n zIndex: 2,\n [theme.breakpoints.down('sm')]: {\n minHeight: 'unset',\n height: '60%',\n top: '40%'\n }\n}))\n\nconst DclLogo = styled(Logo)(({ theme }) => ({\n height: '48px',\n width: '48px',\n zIndex: 10,\n cursor: 'pointer',\n [theme.breakpoints.up('sm')]: {\n position: 'absolute',\n top: theme.spacing(9),\n left: theme.spacing(9)\n }\n}))\n\nconst MobileTitle = styled(Typography)(({ theme }) => ({\n marginTop: theme.spacing(4),\n zIndex: 10,\n fontWeight: 500,\n fontStyle: 'Medium',\n fontSize: '30px',\n lineHeight: '124%',\n letterSpacing: '0px'\n}))\n\nconst DownloadTitle = styled(Typography)(({ theme }) => ({\n marginTop: theme.spacing(1),\n [theme.breakpoints.down('sm')]: {\n textAlign: 'center',\n fontSize: '3rem'\n },\n [theme.breakpoints.down('xs')]: {\n fontSize: '1.8rem'\n }\n}))\n\nconst FooterWrapper = styled(Box)(({ theme }) => ({\n [theme.breakpoints.down('sm')]: {\n paddingBottom: '200px'\n }\n}))\n\nconst ShareContainer = styled(Box)(({ theme }) => ({\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center',\n justifyContent: 'center',\n position: 'fixed',\n bottom: 0,\n background: 'linear-gradient(100.12deg, #130119 0%, #320524 100%)',\n width: '100%',\n padding: theme.spacing(3),\n gap: theme.spacing(2),\n zIndex: 100\n}))\n\nconst ShareButton = styled(Button)({\n width: '100%',\n height: '56px'\n})\n\nconst Modal = styled(dclModal.Modal)({})\n\nconst ModalContent = styled(Box)(({ theme }) => ({\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center',\n justifyContent: 'center',\n gap: theme.spacing(3),\n paddingTop: theme.spacing(6),\n paddingBottom: theme.spacing(6)\n}))\n\nconst ModalIcon = styled(Box)({\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n borderRadius: '50%',\n backgroundColor: dclColors.base.primary,\n width: '48px',\n height: '48px'\n})\n\nconst ModalTitle = styled(Typography)({\n fontWeight: 500,\n fontStyle: 'Medium',\n fontSize: '20px',\n lineHeight: '160%',\n letterSpacing: '0px',\n textAlign: 'center',\n verticalAlign: 'middle'\n})\n\nexport {\n AlreadyDownloadedContainer,\n AlreadyDownloadedLink,\n AlreadyDownloadedText,\n DclLogo,\n DownloadContainer,\n DownloadImageContainer,\n DownloadOptionsContainer,\n DownloadPageContainer,\n DownloadTitle,\n DownloadWearablePreviewContainer,\n DownloadWearablePreviewOverlay,\n FooterWrapper,\n MobileTitle,\n Modal,\n ModalContent,\n ModalIcon,\n ModalTitle,\n PreTitleContainer,\n ShareButton,\n ShareContainer\n}\n","import { memo, useCallback, useEffect, useMemo, useRef, useState } from 'react'\nimport { useInView } from 'react-intersection-observer'\n// eslint-disable-next-line @typescript-eslint/naming-convention\nimport CheckCircleIcon from '@mui/icons-material/CheckCircle'\n// eslint-disable-next-line @typescript-eslint/naming-convention\nimport FileDownloadOutlinedIcon from '@mui/icons-material/FileDownloadOutlined'\n// eslint-disable-next-line @typescript-eslint/naming-convention\nimport ShareOutlinedIcon from '@mui/icons-material/ShareOutlined'\nimport { useAnalytics } from '@dcl/hooks'\nimport { Button, Typography, launchDesktopApp, useDesktopMediaQuery } from 'decentraland-ui2'\nimport { getEnv } from '../../config/env'\nimport { useGetProfileQuery } from '../../features/profile/profile.client'\nimport { useFormatMessage } from '../../hooks/adapters/useFormatMessage'\nimport { useWalletAddress } from '../../hooks/useWalletAddress'\nimport { trackCheckpoint } from '../../modules/onboardingCheckpoint'\nimport { DownloadOptions } from '../DownloadOptions'\nimport { LandingFooter } from '../LandingFooter'\nimport { WrapDecentralandText } from '../WrapDecentralandText'\nimport { DownloadLayoutProps } from './DownloadLayout.types'\nimport {\n AlreadyDownloadedContainer,\n AlreadyDownloadedLink,\n AlreadyDownloadedText,\n DclLogo,\n DownloadContainer,\n DownloadImageContainer,\n DownloadOptionsContainer,\n DownloadPageContainer,\n DownloadTitle,\n DownloadWearablePreviewContainer,\n DownloadWearablePreviewOverlay,\n FooterWrapper,\n MobileTitle,\n Modal,\n ModalContent,\n ModalIcon,\n ModalTitle,\n PreTitleContainer,\n ShareButton,\n ShareContainer\n} from './DownloadLayout.styled'\n\nconst DownloadLayout = memo((props: DownloadLayoutProps) => {\n const { title } = props\n\n const [openModal, setOpenModal] = useState(false)\n // eslint-disable-next-line @typescript-eslint/naming-convention, @typescript-eslint/no-explicit-any\n const [WearablePreviewComponent, setWearablePreviewComponent] = useState<any>(null)\n\n const l = useFormatMessage()\n const { track } = useAnalytics()\n const isDesktop = useDesktopMediaQuery()\n\n const { address } = useWalletAddress()\n\n const [email, user] = useMemo(() => {\n const params = new URLSearchParams(window.location.search)\n return [params.get('email') || undefined, params.get('user') || undefined]\n }, [])\n\n // CP5 reached: download page viewed (fire once, ref guard prevents re-fires)\n const hasFiredCp5 = useRef(false)\n useEffect(() => {\n if (hasFiredCp5.current) return\n hasFiredCp5.current = true\n trackCheckpoint(track, {\n checkpointId: 5,\n action: 'reached',\n email,\n wallet: user\n })\n\n // Strip PII from URL so it doesn't leak via Referer header to external resources\n // (e.g. WearablePreview iframe). We already captured the values above.\n if (email || user) {\n const cleanUrl = new URL(window.location.href)\n cleanUrl.searchParams.delete('email')\n cleanUrl.searchParams.delete('user')\n window.history.replaceState(null, '', cleanUrl.toString())\n }\n }, [track, email, user])\n\n const profileAddress = user || address\n const { data: profile } = useGetProfileQuery(profileAddress ?? undefined, { skip: !profileAddress })\n const profileName = profile?.avatars?.[0]?.name\n\n const wearableContainerRef = useRef<HTMLDivElement | null>(null)\n const { ref: wearableRef, inView } = useInView({ triggerOnce: true, rootMargin: '200px' })\n\n const handleJumpIn = useCallback(async () => {\n const hasLauncher = await launchDesktopApp({})\n if (!hasLauncher) {\n setOpenModal(true)\n }\n }, [])\n\n useEffect(() => {\n if (inView) {\n import('decentraland-ui2/dist/components/WearablePreview/WearablePreview').then(module => {\n setWearablePreviewComponent(() => module.WearablePreview)\n })\n }\n }, [inView])\n\n useEffect(() => {\n if (!WearablePreviewComponent) return\n const container = wearableContainerRef.current\n if (!container) return\n\n const setIframeTitle = (iframe: HTMLIFrameElement) => {\n if (!iframe.title) {\n iframe.title = l('page.download.avatar_preview')\n }\n }\n\n const existing = container.querySelector<HTMLIFrameElement>('iframe')\n if (existing) {\n setIframeTitle(existing)\n return\n }\n\n const observer = new MutationObserver(mutations => {\n for (const mutation of mutations) {\n for (const node of mutation.addedNodes) {\n if (node instanceof HTMLIFrameElement) {\n setIframeTitle(node)\n observer.disconnect()\n return\n }\n if (node instanceof HTMLElement) {\n const iframe = node.querySelector<HTMLIFrameElement>('iframe')\n if (iframe) {\n setIframeTitle(iframe)\n observer.disconnect()\n return\n }\n }\n }\n }\n })\n\n observer.observe(container, { childList: true, subtree: true })\n return () => observer.disconnect()\n }, [WearablePreviewComponent, l])\n\n const randomDefaultProfile = useMemo(() => {\n return 'default' + (Math.floor(Math.random() * (160 - 1 + 1)) + 1)\n }, [])\n\n const handleShare = useCallback(async () => {\n try {\n const shareUrl = new URL(window.location.href)\n shareUrl.searchParams.delete('email')\n shareUrl.searchParams.delete('user')\n await navigator.share({\n title: l('page.download.share_title'),\n text: l('page.download.share_title'),\n url: shareUrl.toString()\n })\n } catch {\n /* user cancelled or API unavailable */\n }\n }, [l])\n\n return (\n <>\n <DownloadPageContainer>\n <DownloadContainer>\n <DclLogo onClick={() => (window.location.href = 'https://decentraland.org')} />\n\n {isDesktop && (\n <>\n <AlreadyDownloadedContainer>\n <AlreadyDownloadedText>\n {l('page.download.already_downloaded')}{' '}\n <AlreadyDownloadedLink onClick={handleJumpIn}>{l('page.download.jump_in')}</AlreadyDownloadedLink>\n </AlreadyDownloadedText>\n </AlreadyDownloadedContainer>\n <DownloadOptionsContainer>\n <PreTitleContainer>\n <CheckCircleIcon htmlColor=\"#34CE77\" fontSize=\"large\" />\n <Typography variant=\"h4\">\n {l('page.download.pre_title', {\n name: profileName || l('page.download.your_account')\n })}\n </Typography>\n </PreTitleContainer>\n <DownloadTitle variant=\"h2\">\n <WrapDecentralandText text={title} />\n </DownloadTitle>\n <DownloadOptions email={email} user={user} />\n </DownloadOptionsContainer>\n </>\n )}\n\n {!isDesktop && (\n <MobileTitle variant=\"h2\">\n <WrapDecentralandText text={title} />\n </MobileTitle>\n )}\n\n <DownloadImageContainer>\n {!isDesktop && <DownloadWearablePreviewOverlay />}\n <DownloadWearablePreviewContainer\n ref={(node: HTMLDivElement | null) => {\n wearableRef(node)\n wearableContainerRef.current = node\n }}\n >\n {WearablePreviewComponent && (\n <WearablePreviewComponent\n unity\n unityMode=\"jesus\"\n profile={profile?.avatars?.[0]?.ethAddress || randomDefaultProfile}\n disableBackground={true}\n lockBeta={true}\n dev={false}\n baseUrl={getEnv('WEARABLE_PREVIEW_URL')}\n />\n )}\n </DownloadWearablePreviewContainer>\n </DownloadImageContainer>\n </DownloadContainer>\n\n {!isDesktop && typeof navigator !== 'undefined' && !!navigator.share && (\n <ShareContainer>\n <Typography variant=\"h6\">{l('page.download.mobile.switch_to_computer')}</Typography>\n <ShareButton onClick={handleShare} endIcon={<ShareOutlinedIcon />} variant=\"contained\">\n {l('page.download.mobile.send_link')}\n </ShareButton>\n </ShareContainer>\n )}\n <Modal open={openModal} size=\"tiny\">\n <ModalContent>\n <ModalIcon>\n <FileDownloadOutlinedIcon />\n </ModalIcon>\n <ModalTitle>\n {l('page.download.modal.title_first_line')}\n <br />\n {l('page.download.modal.title_second_line')}\n </ModalTitle>\n <Button variant=\"contained\" onClick={() => setOpenModal(false)}>\n {l('page.download.modal.cta')}\n </Button>\n </ModalContent>\n </Modal>\n </DownloadPageContainer>\n <FooterWrapper>\n <LandingFooter />\n </FooterWrapper>\n </>\n )\n})\n\nexport { DownloadLayout }\n","import { DownloadLayout } from '../components/Layout/DownloadLayout'\nimport { useFormatMessage } from '../hooks/adapters/useFormatMessage'\n\nconst DownloadPage = () => {\n const l = useFormatMessage()\n\n return <DownloadLayout title={l('page.download.download_onboarding_title')} redirectPath=\"/download_success\" />\n}\n\nexport { DownloadPage }\n// eslint-disable-next-line import/no-default-export\nexport default DownloadPage\n"],"file":"assets/download-rD4GIwoM.js"}
1
+ {"version":3,"mappings":"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","names":["_interopRequireDefault","require$$0","ArrowBackIosNewRounded","default_1","_createSvgIcon","require$$1","_jsxRuntime","require$$2","CancelRounded","Modal","styled","MuiModal","ModalContainer","PaperMui","props","size","theme","backgroundImage","backgroundSize","backgroundPosition","backgroundRepeat","width","ModalTitleContainer","BoxMui","ModalContentContainer","ModalActionsContainer","ModalContent","React","children","header","actions","title","subtitle","onClose","onBack","_jsxs","_jsx","IconButton","ArrowBackIosNewRoundedIcon","Typography","event","CancelRoundedIcon","open","className","modalContentProps","BaseModal","CheckCircle","FileDownloadOutlined","ShareOutlined","EMAIL_RE","WALLET_RE","resolveIdentifier","email","wallet","trackCheckpoint","track","params","userIdentifier","identifierType","EPIC_GAMES_URL","DownloadOptionsContainer","Box","DownloadActions","DownloadButtonsContainer","DownloadButtonImage","DownloadCounts","AlternativeContainer","AlternativeButtonsWrapper","AlternativeButton","Button","AlternativeButtonImage","imageByOs","OperativeSystem","microsoftLogo","appleLogo","DownloadOptions","memo","hideDownloadCounts","downloadOnClick","user","isLoadingUserAgentData","userAgentData","useAdvancedUserAgentData","getIdentityId","useGetIdentityId","anonUserId","useAnonUserId","l","useFormatMessage","useAnalytics","onClickHandle","useTrackClick","links","useMemo","sanitizeCDNReleaseLinks","getCDNRelease","CDNSource","downloads","downloadsStatus","useAsyncMemo","ExplorerDownloads","primaryDownloadOptions","secondaryDownloadOptions","onClickDownloadHandler","useCallback","option","getDownloadLinkWithIdentity","ANON_USER_ID_PARAM","redirectPath","redirectUrl","updateUrlWithLastValue","finalUrl","addQueryParamsToUrlString","downloadCountsFormatted","formatToShorthand","jsx","index","CTAButton","SegmentEvent","SectionViewedTrack","jsxs","VerifiedIcon","GOOGLE_PLAY_DESKTOP_URL","assetUrl","DecentralandText","dclColors.brand","WrapDecentralandText","text","parts","part","Fragment","DownloadPageContainer","DownloadWearablePreviewOverlay","DownloadContainer","PreTitleContainer","AlreadyDownloadedContainer","AlreadyDownloadedText","AlreadyDownloadedLink","Link","DownloadImageContainer","DownloadWearablePreviewContainer","DclLogo","Logo","MobileTitle","DownloadTitle","FooterWrapper","ShareContainer","ShareButton","dclModal.Modal","ModalIcon","dclColors.base","ModalTitle","DownloadLayout","openModal","setOpenModal","useState","WearablePreviewComponent","setWearablePreviewComponent","isDesktop","useDesktopMediaQuery","address","useWalletAddress","hasFiredCp5","useRef","useEffect","cleanUrl","profileAddress","profile","useGetProfileQuery","profileName","wearableContainerRef","wearableRef","inView","useInView","handleJumpIn","launchDesktopApp","__vitePreload","module","container","setIframeTitle","iframe","existing","observer","mutations","mutation","node","randomDefaultProfile","handleShare","shareUrl","CheckCircleIcon","getEnv","ShareOutlinedIcon","FileDownloadOutlinedIcon","LandingFooter","DownloadPage"],"ignoreList":[0,1,2,3,4,5,6],"sources":["../../node_modules/@mui/icons-material/ArrowBackIosNewRounded.js","../../node_modules/@mui/icons-material/CancelRounded.js","../../node_modules/decentraland-ui2/dist/components/Modal/Modal.styled.js","../../node_modules/decentraland-ui2/dist/components/Modal/Modal.js","../../node_modules/@mui/icons-material/CheckCircle.js","../../node_modules/@mui/icons-material/FileDownloadOutlined.js","../../node_modules/@mui/icons-material/ShareOutlined.js","../../src/modules/onboardingCheckpoint.ts","../../src/components/Home/shared/epicGames.ts","../../src/components/DownloadOptions/DownloadOptions.styled.ts","../../src/components/DownloadOptions/DownloadOptions.tsx","../../src/components/WrapDecentralandText/WrapDecentralandText.styled.ts","../../src/components/WrapDecentralandText/WrapDecentralandText.tsx","../../src/images/download/download_background.webp","../../src/components/Layout/DownloadLayout.styled.ts","../../src/components/Layout/DownloadLayout.tsx","../../src/pages/download.tsx"],"sourcesContent":["\"use strict\";\n\"use client\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = exports.default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M16.88 2.88c-.49-.49-1.28-.49-1.77 0L6.7 11.29c-.39.39-.39 1.02 0 1.41l8.41 8.41c.49.49 1.28.49 1.77 0s.49-1.28 0-1.77L9.54 12l7.35-7.35c.48-.49.48-1.28-.01-1.77\"\n}), 'ArrowBackIosNewRounded');","\"use strict\";\n\"use client\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = exports.default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M12 2C6.47 2 2 6.47 2 12s4.47 10 10 10 10-4.47 10-10S17.53 2 12 2m4.3 14.3c-.39.39-1.02.39-1.41 0L12 13.41 9.11 16.3c-.39.39-1.02.39-1.41 0a.9959.9959 0 0 1 0-1.41L10.59 12 7.7 9.11a.9959.9959 0 0 1 0-1.41c.39-.39 1.02-.39 1.41 0L12 10.59l2.89-2.89c.39-.39 1.02-.39 1.41 0 .39.39.39 1.02 0 1.41L13.41 12l2.89 2.89c.38.38.38 1.02 0 1.41\"\n}), 'CancelRounded');","import styled from '@emotion/styled';\nimport { Box as BoxMui, Modal as MuiModal, Paper as PaperMui } from '@mui/material';\nconst Modal = styled(MuiModal)({\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center'\n});\nconst ModalContainer = styled(PaperMui)(props => {\n const { size, theme, backgroundImage, backgroundSize, backgroundPosition, backgroundRepeat } = props;\n let width = '900px';\n if (size === 'tiny') {\n width = '540px';\n }\n else if (size === 'small') {\n width = '720px';\n }\n return {\n width,\n borderRadius: '12px',\n overflow: 'hidden',\n backgroundImage: backgroundImage && `url(${backgroundImage})`,\n backgroundSize: backgroundImage && backgroundSize,\n backgroundPosition: backgroundImage && backgroundPosition,\n backgroundRepeat: backgroundImage && backgroundRepeat,\n [theme.breakpoints.down('xs')]: {\n minWidth: '100vw',\n maxWidth: '100vw',\n minHeight: '100vh',\n borderRadius: '0px',\n margin: '0',\n padding: '0'\n }\n };\n});\nconst ModalTitleContainer = styled(BoxMui)({\n display: 'flex',\n justifyContent: 'space-between',\n padding: '24px',\n '& > :only-child': {\n marginLeft: 'auto'\n }\n});\nconst ModalContentContainer = styled(BoxMui)({\n padding: '24px'\n});\nconst ModalActionsContainer = styled(BoxMui)({\n display: 'flex',\n padding: '24px',\n '& > *': {\n flex: 1\n },\n '& > *.MuiButtonBase-root:not(:last-child)': {\n marginRight: '16px'\n }\n});\nexport { Modal, ModalContainer, ModalTitleContainer, ModalContentContainer, ModalActionsContainer };\n//# sourceMappingURL=Modal.styled.js.map","import { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport React from 'react';\nimport ArrowBackIosNewRoundedIcon from '@mui/icons-material/ArrowBackIosNewRounded';\nimport CancelRoundedIcon from '@mui/icons-material/CancelRounded';\nimport { IconButton, Typography } from '@mui/material';\nimport { Modal as BaseModal, ModalActionsContainer, ModalContainer, ModalContentContainer, ModalTitleContainer } from './Modal.styled';\nconst ModalContent = React.memo((props) => {\n const { children, header, actions, title, subtitle, size, onClose, onBack, backgroundImage, backgroundSize, backgroundPosition, backgroundRepeat } = props;\n return (_jsxs(ModalContainer, { elevation: 24, size: size, backgroundImage: backgroundImage, backgroundSize: backgroundSize, backgroundPosition: backgroundPosition, backgroundRepeat: backgroundRepeat, children: [header, (title || onClose || onBack) && (_jsxs(ModalTitleContainer, { children: [onBack && (_jsx(IconButton, { \"aria-label\": \"back\", size: \"large\", onClick: onBack, children: _jsx(ArrowBackIosNewRoundedIcon, {}) })), title && _jsx(Typography, { variant: \"h5\", children: title }), onClose && (_jsx(IconButton, { \"aria-label\": \"close\", size: \"large\", onClick: event => onClose(event, 'escapeKeyDown'), children: _jsx(CancelRoundedIcon, {}) }))] })), subtitle && _jsx(Typography, { variant: \"subtitle1\", children: subtitle }), _jsx(ModalContentContainer, { children: children }), actions && _jsx(ModalActionsContainer, { children: actions })] }));\n});\nconst Modal = React.memo((props) => {\n const { open, onClose, children, className, ...modalContentProps } = props;\n return (_jsx(BaseModal, { open: open, onClose: onClose, className: className, children: _jsx(ModalContent, { ...modalContentProps, onClose: onClose, children: children }) }));\n});\nexport { Modal, ModalContent };\n//# sourceMappingURL=Modal.js.map","\"use strict\";\n\"use client\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = exports.default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2m-2 15-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8z\"\n}), 'CheckCircle');","\"use strict\";\n\"use client\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = exports.default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M18 15v3H6v-3H4v3c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2v-3zm-1-4-1.41-1.41L13 12.17V4h-2v8.17L8.41 9.59 7 11l5 5z\"\n}), 'FileDownloadOutlined');","\"use strict\";\n\"use client\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = exports.default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M18 16.08c-.76 0-1.44.3-1.96.77L8.91 12.7c.05-.23.09-.46.09-.7s-.04-.47-.09-.7l7.05-4.11c.54.5 1.25.81 2.04.81 1.66 0 3-1.34 3-3s-1.34-3-3-3-3 1.34-3 3c0 .24.04.47.09.7L8.04 9.81C7.5 9.31 6.79 9 6 9c-1.66 0-3 1.34-3 3s1.34 3 3 3c.79 0 1.5-.31 2.04-.81l7.12 4.16c-.05.21-.08.43-.08.65 0 1.61 1.31 2.92 2.92 2.92s2.92-1.31 2.92-2.92c0-1.61-1.31-2.92-2.92-2.92M18 4c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1M6 13c-.55 0-1-.45-1-1s.45-1 1-1 1 .45 1 1-.45 1-1 1m12 7.02c-.55 0-1-.45-1-1s.45-1 1-1 1 .45 1 1-.45 1-1 1\"\n}), 'ShareOutlined');","const EMAIL_RE = /^[^\\s@]+@[^\\s@]+\\.[^\\s@]+$/\nconst WALLET_RE = /^0x[0-9a-f]{40}$/i\n\ntype CheckpointParams = {\n checkpointId: 5 | 6\n action?: 'reached' | 'completed'\n email?: string\n wallet?: string\n metadata?: Record<string, unknown>\n}\n\nfunction resolveIdentifier(email?: string, wallet?: string) {\n if (email && EMAIL_RE.test(email)) return { userIdentifier: email, identifierType: 'email' as const }\n if (wallet && WALLET_RE.test(wallet)) return { userIdentifier: wallet, identifierType: 'wallet' as const }\n return { userIdentifier: undefined, identifierType: undefined }\n}\n\nexport function trackCheckpoint(track: (event: string, data?: Record<string, unknown>) => void, params: CheckpointParams): void {\n const { userIdentifier, identifierType } = resolveIdentifier(params.email, params.wallet)\n\n // Don't send checkpoints without an identifier — they cause 400s on the backend\n // and we can't send nudge emails without knowing who the user is\n if (!userIdentifier || !identifierType) return\n\n track('Onboarding Checkpoint', {\n checkpointId: params.checkpointId,\n action: params.action ?? 'reached',\n userIdentifier,\n identifierType,\n email: identifierType === 'email' ? userIdentifier : undefined,\n source: 'landing',\n metadata: params.metadata\n })\n}\n","const EPIC_GAMES_URL = 'https://store.epicgames.com/en-US/p/decentraland-b692fb'\n\nexport { EPIC_GAMES_URL }\n","import { Box, Button, Typography, styled } from 'decentraland-ui2'\n\nconst DownloadOptionsContainer = styled(Box)({\n display: 'flex',\n flexDirection: 'column',\n width: '100%'\n})\n\nconst DownloadActions = styled(Box)({\n display: 'flex',\n flexDirection: 'column',\n marginTop: '60px'\n})\n\nconst DownloadButtonsContainer = styled(Box)(({ theme }) => ({\n display: 'flex',\n flexDirection: 'row',\n gap: '16px',\n [theme.breakpoints.down('xl')]: {\n flexDirection: 'column',\n alignItems: 'flex-start'\n }\n}))\n\nconst DownloadButtonImage = styled('img')({\n height: '32px',\n width: '32px',\n filter: 'brightness(0) invert(1)'\n})\n\nconst DownloadCounts = styled(Typography)({\n display: 'flex',\n alignItems: 'center',\n gap: '12px',\n borderRight: '0.5px solid',\n marginTop: '8px !important',\n paddingRight: '16px',\n marginRight: '16px',\n width: 'fit-content'\n})\n\nconst AlternativeContainer = styled(Box)(({ theme }) => ({\n width: '100%',\n display: 'flex',\n flexDirection: 'row',\n alignItems: 'flex-start',\n justifyContent: 'flex-start',\n marginTop: '16px',\n [theme.breakpoints.down('md')]: {\n justifyContent: 'center'\n }\n}))\n\nconst AlternativeButtonsWrapper = styled(Box)(({ theme }) => ({\n display: 'flex',\n flexDirection: 'row',\n gap: theme.spacing(1.25)\n}))\n\nconst AlternativeButton = styled(Button)(({ theme }) => ({\n display: 'flex',\n alignItems: 'center',\n minWidth: 24,\n ['& span.MuiButton-icon.MuiButton-startIcon.MuiButton-iconSizeMedium']: {\n marginRight: 0,\n marginLeft: 0\n },\n ['&.MuiButtonBase-root.MuiButton-root.MuiButton-sizeMedium']: {\n gap: theme.spacing(0.5),\n ...theme.typography.body1,\n fontWeight: 400,\n letterSpacing: '0px',\n textTransform: 'capitalize'\n }\n}))\n\nconst AlternativeButtonImage = styled('img')({\n height: '24px',\n width: '24px',\n filter: 'brightness(0) invert(1)'\n})\n\nexport {\n AlternativeButton,\n AlternativeButtonImage,\n AlternativeButtonsWrapper,\n AlternativeContainer,\n DownloadActions,\n DownloadButtonImage,\n DownloadButtonsContainer,\n DownloadCounts,\n DownloadOptionsContainer\n}\n","import { memo, useCallback, useMemo } from 'react'\nimport { useAdvancedUserAgentData, useAnalytics, useAsyncMemo } from '@dcl/hooks'\nimport { CDNSource, getCDNRelease } from 'decentraland-ui2/dist/modules/cdnReleases'\nimport { useFormatMessage } from '../../hooks/adapters/useFormatMessage'\nimport { useTrackClick } from '../../hooks/adapters/useTrackLinkContext'\nimport { ANON_USER_ID_PARAM, useAnonUserId } from '../../hooks/useAnonUserId'\nimport { useGetIdentityId } from '../../hooks/useGetIdentityId'\nimport appleLogo from '../../images/apple-logo.svg'\nimport microsoftLogo from '../../images/microsoft-logo.svg'\nimport { getDownloadLinkWithIdentity } from '../../modules/downloadWithIdentity'\nimport { ExplorerDownloads } from '../../modules/explorerDownloads'\nimport { formatToShorthand } from '../../modules/number'\nimport { trackCheckpoint } from '../../modules/onboardingCheckpoint'\nimport { SectionViewedTrack, SegmentEvent } from '../../modules/segment'\nimport { addQueryParamsToUrlString, sanitizeCDNReleaseLinks, updateUrlWithLastValue } from '../../modules/url'\nimport { Architecture, DownloadOptionProps, OperativeSystem } from '../../types/download.types'\nimport { assetUrl } from '../../utils/assetUrl'\nimport { CTAButton } from '../Buttons/CTAButton'\nimport { EPIC_GAMES_URL } from '../Home/shared/epicGames'\nimport { GOOGLE_PLAY_DESKTOP_URL } from '../Home/shared/googlePlay'\nimport { VerifiedIcon } from '../Icon/VerifiedIcon'\nimport {\n AlternativeButton,\n AlternativeButtonImage,\n AlternativeButtonsWrapper,\n AlternativeContainer,\n DownloadActions,\n DownloadButtonImage,\n DownloadButtonsContainer,\n DownloadCounts,\n DownloadOptionsContainer\n} from './DownloadOptions.styled'\n\ninterface DownloadOptionsProps {\n hideDownloadCounts?: boolean\n downloadOnClick?: boolean\n email?: string\n user?: string\n}\n\nconst imageByOs: Record<string, string> = {\n [OperativeSystem.WINDOWS]: microsoftLogo,\n [OperativeSystem.MACOS]: appleLogo\n}\n\nconst DownloadOptions = memo(({ hideDownloadCounts, downloadOnClick, email, user }: DownloadOptionsProps) => {\n const [isLoadingUserAgentData, userAgentData] = useAdvancedUserAgentData()\n const getIdentityId = useGetIdentityId()\n const anonUserId = useAnonUserId()\n const l = useFormatMessage()\n const { track } = useAnalytics()\n const onClickHandle = useTrackClick()\n\n const links = useMemo(() => sanitizeCDNReleaseLinks(getCDNRelease(CDNSource.LAUNCHER)) || {}, [])\n\n const [downloads, downloadsStatus] = useAsyncMemo(async () => ExplorerDownloads.get().getTotalDownloads(), [])\n\n const primaryDownloadOptions: DownloadOptionProps[] = useMemo(() => {\n if (!userAgentData) {\n if (!links[OperativeSystem.WINDOWS]) return []\n return [\n {\n text: OperativeSystem.WINDOWS,\n image: imageByOs[OperativeSystem.WINDOWS],\n link: links[OperativeSystem.WINDOWS].x64,\n arch: 'x64' as Architecture\n }\n ]\n }\n\n if (!links[userAgentData.os.name]) return []\n\n if (userAgentData.os.name === OperativeSystem.MACOS) {\n return [\n {\n text: OperativeSystem.MACOS,\n image: imageByOs[OperativeSystem.MACOS],\n link: links[OperativeSystem.MACOS].arm64,\n arch: userAgentData.cpu.architecture as Architecture\n }\n ]\n }\n\n return [\n {\n text: userAgentData.os.name,\n image: imageByOs[userAgentData.os.name],\n link: links[userAgentData.os.name][userAgentData.cpu.architecture],\n arch: userAgentData.cpu.architecture as Architecture\n }\n ]\n }, [userAgentData, links])\n\n const secondaryDownloadOptions: DownloadOptionProps[] = useMemo(() => {\n if (!userAgentData) {\n if (!links[OperativeSystem.MACOS]) return []\n return [\n {\n text: OperativeSystem.MACOS,\n image: imageByOs[OperativeSystem.MACOS],\n link: links[OperativeSystem.MACOS].arm64\n }\n ]\n }\n\n if (userAgentData.os.name === OperativeSystem.MACOS) {\n return [\n {\n text: OperativeSystem.WINDOWS,\n image: imageByOs[OperativeSystem.WINDOWS],\n link: links[OperativeSystem.WINDOWS]?.x64\n }\n ]\n }\n\n return [\n {\n text: OperativeSystem.MACOS,\n image: imageByOs[OperativeSystem.MACOS],\n link: links[OperativeSystem.MACOS]?.arm64\n }\n ]\n }, [userAgentData, links])\n\n const onClickDownloadHandler = useCallback(\n async (option: DownloadOptionProps) => {\n // CP5 completed + CP6 reached: user clicked download\n trackCheckpoint(track, {\n checkpointId: 5,\n action: 'completed',\n email,\n wallet: user\n })\n trackCheckpoint(track, {\n checkpointId: 6,\n action: 'reached',\n email,\n wallet: user,\n metadata: { os: option.text, arch: option.arch }\n })\n\n if (downloadOnClick) {\n await getDownloadLinkWithIdentity({\n os: option.text,\n arch: option.arch,\n fallbackLinks: links,\n queryParams: { [ANON_USER_ID_PARAM]: anonUserId },\n getIdentityId\n })\n }\n\n const redirectPath = '/download_success'\n const redirectUrl = updateUrlWithLastValue(new URL(redirectPath, window.location.origin).toString(), 'os', option.text)\n const finalUrl = addQueryParamsToUrlString(redirectUrl, { arch: option.arch, [ANON_USER_ID_PARAM]: anonUserId })\n setTimeout(\n () => {\n window.location.href = finalUrl\n },\n downloadOnClick ? 3000 : 0\n )\n },\n [downloadOnClick, getIdentityId, anonUserId, links, track, email, user]\n )\n\n const downloadCountsFormatted = !downloadsStatus.loading && downloadsStatus.loaded && downloads ? formatToShorthand(downloads) : null\n\n if (isLoadingUserAgentData) return null\n\n return (\n <DownloadOptionsContainer>\n {primaryDownloadOptions.length > 0 && (\n <DownloadActions>\n <DownloadButtonsContainer>\n {primaryDownloadOptions.map((option, index) => (\n <CTAButton\n key={index}\n href={option.link!}\n onClick={event => {\n event.preventDefault()\n onClickHandle(event)\n onClickDownloadHandler(option)\n }}\n event={SegmentEvent.DOWNLOAD}\n place={SectionViewedTrack.DOWNLOAD}\n endIcon={<DownloadButtonImage src={option.image} />}\n label={l('page.download.download')}\n isFullWidth={false}\n />\n ))}\n </DownloadButtonsContainer>\n <AlternativeContainer>\n {!hideDownloadCounts && downloadCountsFormatted && (\n <DownloadCounts variant=\"body1\">\n <VerifiedIcon /> {l('page.download.total_downloads', { downloads: downloadCountsFormatted })}\n </DownloadCounts>\n )}\n <AlternativeButtonsWrapper>\n {secondaryDownloadOptions.map((option, index) => (\n <AlternativeButton\n variant=\"text\"\n color=\"inherit\"\n onClick={event => {\n event.preventDefault()\n onClickHandle(event)\n onClickDownloadHandler(option)\n }}\n href={option.link}\n key={index}\n startIcon={<AlternativeButtonImage src={option.image} />}\n >\n {option.arch ? `(${l(`page.download.${option.arch}_processors_short`)})` : undefined}\n </AlternativeButton>\n ))}\n <AlternativeButton\n variant=\"text\"\n color=\"inherit\"\n href={GOOGLE_PLAY_DESKTOP_URL}\n {...{ target: '_blank', rel: 'noopener noreferrer' }}\n startIcon={<AlternativeButtonImage src={assetUrl('/google_play_icon.svg')} />}\n />\n <AlternativeButton\n variant=\"text\"\n color=\"inherit\"\n href={EPIC_GAMES_URL}\n {...{ target: '_blank', rel: 'noopener noreferrer' }}\n startIcon={<AlternativeButtonImage src={assetUrl('/epic_icon.svg')} />}\n />\n </AlternativeButtonsWrapper>\n </AlternativeContainer>\n </DownloadActions>\n )}\n </DownloadOptionsContainer>\n )\n})\n\nDownloadOptions.displayName = 'DownloadOptions'\n\nexport { DownloadOptions }\n","import { dclColors, styled } from 'decentraland-ui2'\n\nconst DecentralandText = styled('span')({\n fontFamily: 'DecentralandHero',\n background: `linear-gradient(261.51deg, ${dclColors.brand.ruby} 6.92%, ${dclColors.brand.yellow} 83.3%)`,\n backgroundClip: 'text',\n webkitBackgroundClip: 'text',\n webkitTextFillColor: 'transparent',\n color: 'transparent',\n fontSize: 'inherit',\n fontWeight: 'inherit',\n lineHeight: 'inherit',\n letterSpacing: 'inherit'\n})\n\nexport { DecentralandText }\n","import { Fragment, memo } from 'react'\nimport { DecentralandText } from './WrapDecentralandText.styled'\n\nconst WrapDecentralandText = memo((props: { text: string }) => {\n const { text } = props\n\n const parts = text.split(/(Decentraland)/gi)\n return (\n <>\n {parts.map((part, index) =>\n part.toLowerCase() === 'decentraland' ? (\n <Fragment key={index}>\n <DecentralandText>{part}</DecentralandText>\n <br />\n </Fragment>\n ) : (\n <Fragment key={index}>{part}</Fragment>\n )\n )}\n </>\n )\n})\n\nexport { WrapDecentralandText }\n","export default \"__VITE_ASSET__C9P6dCJ___\"","import { Box, Button, Link, Logo, Typography, dclColors, dclModal, styled } from 'decentraland-ui2'\nimport backgroundImage from '../../images/download/download_background.webp'\n\nconst DownloadPageContainer = styled(Box)(({ theme }) => ({\n position: 'relative',\n display: 'flex',\n flexDirection: 'column',\n flex: 1,\n height: '100vh',\n minHeight: '650px',\n alignItems: 'center',\n justifyContent: 'center',\n backgroundImage: `linear-gradient(150deg, #2A0C43 0%, #2A0C43 25%, transparent 100%), linear-gradient(225deg, #2A0C43 0%, rgba(42, 12, 67, 0.8) 15%, transparent 100%), url(${backgroundImage})`,\n backgroundSize: 'cover',\n backgroundPosition: 'center',\n [theme.breakpoints.down('sm')]: {\n height: '100svh',\n minHeight: 'unset',\n overflow: 'hidden'\n }\n}))\n\nconst DownloadWearablePreviewOverlay = styled(Box)({\n position: 'absolute',\n top: 0,\n left: 0,\n right: 0,\n bottom: 0,\n background: 'transparent',\n zIndex: 3\n})\n\nconst DownloadContainer = styled(Box)(({ theme }) => ({\n display: 'flex',\n flexDirection: 'row',\n justifyContent: 'space-between',\n alignItems: 'center',\n borderRadius: '32px',\n paddingLeft: theme.spacing(17.5),\n paddingRight: theme.spacing(9),\n paddingTop: 0,\n paddingBottom: 0,\n height: '100vh',\n width: 'calc(100% - 144px)',\n marginLeft: 'auto',\n marginRight: 'auto',\n zIndex: 2,\n [theme.breakpoints.down('lg')]: {\n paddingLeft: theme.spacing(9)\n },\n [theme.breakpoints.down('sm')]: {\n flexDirection: 'column',\n alignItems: 'flex-start',\n width: 'calc(100% - 32px)',\n padding: theme.spacing(15.5),\n height: '100svh',\n overflow: 'visible'\n },\n [theme.breakpoints.down('xs')]: {\n padding: theme.spacing(3),\n width: '100%'\n }\n}))\n\nconst DownloadOptionsContainer = styled(Box)({\n zIndex: 10,\n position: 'relative',\n width: '100vw'\n})\n\nconst PreTitleContainer = styled(Box)(({ theme }) => ({\n display: 'flex',\n alignItems: 'center',\n gap: theme.spacing(1)\n}))\n\nconst AlreadyDownloadedContainer = styled(Box)(({ theme }) => ({\n position: 'absolute',\n bottom: '10%',\n left: '212px',\n display: 'flex',\n flexDirection: 'row',\n alignItems: 'center',\n gap: theme.spacing(0.5),\n zIndex: 10\n}))\n\nconst AlreadyDownloadedText = styled(Typography)({\n fontSize: '20px',\n fontWeight: 500,\n lineHeight: '160%'\n})\n\nconst AlreadyDownloadedLink = styled(Link)({\n textDecoration: 'underline',\n textDecorationStyle: 'solid',\n textDecorationOffset: '0%',\n textDecorationThickness: '0%',\n cursor: 'pointer',\n textTransform: 'uppercase'\n})\n\nconst DownloadImageContainer = styled(Box)(({ theme }) => ({\n maxWidth: '900px',\n minWidth: '50vh',\n width: '100%',\n height: '100%',\n overflow: 'hidden',\n borderRadius: '24px',\n border: 'none',\n position: 'relative',\n display: 'flex',\n [theme.breakpoints.down('md')]: {\n width: '100%'\n },\n [theme.breakpoints.down('sm')]: {\n minWidth: 'unset',\n maxWidth: '100%',\n overflow: 'visible'\n }\n}))\n\nconst DownloadWearablePreviewContainer = styled(Box)(({ theme }) => ({\n width: '100%',\n height: '110%',\n maxHeight: '700px',\n minHeight: '500px',\n position: 'absolute',\n top: '50%',\n transform: 'translateY(-50%)',\n left: 0,\n right: 0,\n bottom: 0,\n zIndex: 2,\n [theme.breakpoints.down('sm')]: {\n minHeight: 'unset',\n height: '60%',\n top: '40%'\n }\n}))\n\nconst DclLogo = styled(Logo)(({ theme }) => ({\n height: '48px',\n width: '48px',\n zIndex: 10,\n cursor: 'pointer',\n [theme.breakpoints.up('sm')]: {\n position: 'absolute',\n top: theme.spacing(9),\n left: theme.spacing(9)\n }\n}))\n\nconst MobileTitle = styled(Typography)(({ theme }) => ({\n marginTop: theme.spacing(4),\n zIndex: 10,\n fontWeight: 500,\n fontStyle: 'Medium',\n fontSize: '30px',\n lineHeight: '124%',\n letterSpacing: '0px'\n}))\n\nconst DownloadTitle = styled(Typography)(({ theme }) => ({\n marginTop: theme.spacing(1),\n [theme.breakpoints.down('sm')]: {\n textAlign: 'center',\n fontSize: '3rem'\n },\n [theme.breakpoints.down('xs')]: {\n fontSize: '1.8rem'\n }\n}))\n\nconst FooterWrapper = styled(Box)(({ theme }) => ({\n [theme.breakpoints.down('sm')]: {\n paddingBottom: '200px'\n }\n}))\n\nconst ShareContainer = styled(Box)(({ theme }) => ({\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center',\n justifyContent: 'center',\n position: 'fixed',\n bottom: 0,\n background: 'linear-gradient(100.12deg, #130119 0%, #320524 100%)',\n width: '100%',\n padding: theme.spacing(3),\n gap: theme.spacing(2),\n zIndex: 100\n}))\n\nconst ShareButton = styled(Button)({\n width: '100%',\n height: '56px'\n})\n\nconst Modal = styled(dclModal.Modal)({})\n\nconst ModalContent = styled(Box)(({ theme }) => ({\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center',\n justifyContent: 'center',\n gap: theme.spacing(3),\n paddingTop: theme.spacing(6),\n paddingBottom: theme.spacing(6)\n}))\n\nconst ModalIcon = styled(Box)({\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n borderRadius: '50%',\n backgroundColor: dclColors.base.primary,\n width: '48px',\n height: '48px'\n})\n\nconst ModalTitle = styled(Typography)({\n fontWeight: 500,\n fontStyle: 'Medium',\n fontSize: '20px',\n lineHeight: '160%',\n letterSpacing: '0px',\n textAlign: 'center',\n verticalAlign: 'middle'\n})\n\nexport {\n AlreadyDownloadedContainer,\n AlreadyDownloadedLink,\n AlreadyDownloadedText,\n DclLogo,\n DownloadContainer,\n DownloadImageContainer,\n DownloadOptionsContainer,\n DownloadPageContainer,\n DownloadTitle,\n DownloadWearablePreviewContainer,\n DownloadWearablePreviewOverlay,\n FooterWrapper,\n MobileTitle,\n Modal,\n ModalContent,\n ModalIcon,\n ModalTitle,\n PreTitleContainer,\n ShareButton,\n ShareContainer\n}\n","import { memo, useCallback, useEffect, useMemo, useRef, useState } from 'react'\nimport { useInView } from 'react-intersection-observer'\n// eslint-disable-next-line @typescript-eslint/naming-convention\nimport CheckCircleIcon from '@mui/icons-material/CheckCircle'\n// eslint-disable-next-line @typescript-eslint/naming-convention\nimport FileDownloadOutlinedIcon from '@mui/icons-material/FileDownloadOutlined'\n// eslint-disable-next-line @typescript-eslint/naming-convention\nimport ShareOutlinedIcon from '@mui/icons-material/ShareOutlined'\nimport { useAnalytics } from '@dcl/hooks'\nimport { Button, Typography, launchDesktopApp, useDesktopMediaQuery } from 'decentraland-ui2'\nimport { getEnv } from '../../config/env'\nimport { useGetProfileQuery } from '../../features/profile/profile.client'\nimport { useFormatMessage } from '../../hooks/adapters/useFormatMessage'\nimport { useWalletAddress } from '../../hooks/useWalletAddress'\nimport { trackCheckpoint } from '../../modules/onboardingCheckpoint'\nimport { DownloadOptions } from '../DownloadOptions'\nimport { LandingFooter } from '../LandingFooter'\nimport { WrapDecentralandText } from '../WrapDecentralandText'\nimport { DownloadLayoutProps } from './DownloadLayout.types'\nimport {\n AlreadyDownloadedContainer,\n AlreadyDownloadedLink,\n AlreadyDownloadedText,\n DclLogo,\n DownloadContainer,\n DownloadImageContainer,\n DownloadOptionsContainer,\n DownloadPageContainer,\n DownloadTitle,\n DownloadWearablePreviewContainer,\n DownloadWearablePreviewOverlay,\n FooterWrapper,\n MobileTitle,\n Modal,\n ModalContent,\n ModalIcon,\n ModalTitle,\n PreTitleContainer,\n ShareButton,\n ShareContainer\n} from './DownloadLayout.styled'\n\nconst DownloadLayout = memo((props: DownloadLayoutProps) => {\n const { title } = props\n\n const [openModal, setOpenModal] = useState(false)\n // eslint-disable-next-line @typescript-eslint/naming-convention, @typescript-eslint/no-explicit-any\n const [WearablePreviewComponent, setWearablePreviewComponent] = useState<any>(null)\n\n const l = useFormatMessage()\n const { track } = useAnalytics()\n const isDesktop = useDesktopMediaQuery()\n\n const { address } = useWalletAddress()\n\n const [email, user] = useMemo(() => {\n const params = new URLSearchParams(window.location.search)\n return [params.get('email') || undefined, params.get('user') || undefined]\n }, [])\n\n // CP5 reached: download page viewed (fire once, ref guard prevents re-fires)\n const hasFiredCp5 = useRef(false)\n useEffect(() => {\n if (hasFiredCp5.current) return\n hasFiredCp5.current = true\n trackCheckpoint(track, {\n checkpointId: 5,\n action: 'reached',\n email,\n wallet: user\n })\n\n // Strip PII from URL so it doesn't leak via Referer header to external resources\n // (e.g. WearablePreview iframe). We already captured the values above.\n if (email || user) {\n const cleanUrl = new URL(window.location.href)\n cleanUrl.searchParams.delete('email')\n cleanUrl.searchParams.delete('user')\n window.history.replaceState(null, '', cleanUrl.toString())\n }\n }, [track, email, user])\n\n const profileAddress = user || address\n const { data: profile } = useGetProfileQuery(profileAddress ?? undefined, { skip: !profileAddress })\n const profileName = profile?.avatars?.[0]?.name\n\n const wearableContainerRef = useRef<HTMLDivElement | null>(null)\n const { ref: wearableRef, inView } = useInView({ triggerOnce: true, rootMargin: '200px' })\n\n const handleJumpIn = useCallback(async () => {\n const hasLauncher = await launchDesktopApp({})\n if (!hasLauncher) {\n setOpenModal(true)\n }\n }, [])\n\n useEffect(() => {\n if (inView) {\n import('decentraland-ui2/dist/components/WearablePreview/WearablePreview').then(module => {\n setWearablePreviewComponent(() => module.WearablePreview)\n })\n }\n }, [inView])\n\n useEffect(() => {\n if (!WearablePreviewComponent) return\n const container = wearableContainerRef.current\n if (!container) return\n\n const setIframeTitle = (iframe: HTMLIFrameElement) => {\n if (!iframe.title) {\n iframe.title = l('page.download.avatar_preview')\n }\n }\n\n const existing = container.querySelector<HTMLIFrameElement>('iframe')\n if (existing) {\n setIframeTitle(existing)\n return\n }\n\n const observer = new MutationObserver(mutations => {\n for (const mutation of mutations) {\n for (const node of mutation.addedNodes) {\n if (node instanceof HTMLIFrameElement) {\n setIframeTitle(node)\n observer.disconnect()\n return\n }\n if (node instanceof HTMLElement) {\n const iframe = node.querySelector<HTMLIFrameElement>('iframe')\n if (iframe) {\n setIframeTitle(iframe)\n observer.disconnect()\n return\n }\n }\n }\n }\n })\n\n observer.observe(container, { childList: true, subtree: true })\n return () => observer.disconnect()\n }, [WearablePreviewComponent, l])\n\n const randomDefaultProfile = useMemo(() => {\n return 'default' + (Math.floor(Math.random() * (160 - 1 + 1)) + 1)\n }, [])\n\n const handleShare = useCallback(async () => {\n try {\n const shareUrl = new URL(window.location.href)\n shareUrl.searchParams.delete('email')\n shareUrl.searchParams.delete('user')\n await navigator.share({\n title: l('page.download.share_title'),\n text: l('page.download.share_title'),\n url: shareUrl.toString()\n })\n } catch {\n /* user cancelled or API unavailable */\n }\n }, [l])\n\n return (\n <>\n <DownloadPageContainer>\n <DownloadContainer>\n <DclLogo onClick={() => (window.location.href = 'https://decentraland.org')} />\n\n {isDesktop && (\n <>\n <AlreadyDownloadedContainer>\n <AlreadyDownloadedText>\n {l('page.download.already_downloaded')}{' '}\n <AlreadyDownloadedLink onClick={handleJumpIn}>{l('page.download.jump_in')}</AlreadyDownloadedLink>\n </AlreadyDownloadedText>\n </AlreadyDownloadedContainer>\n <DownloadOptionsContainer>\n <PreTitleContainer>\n <CheckCircleIcon htmlColor=\"#34CE77\" fontSize=\"large\" />\n <Typography variant=\"h4\">\n {l('page.download.pre_title', {\n name: profileName || l('page.download.your_account')\n })}\n </Typography>\n </PreTitleContainer>\n <DownloadTitle variant=\"h2\">\n <WrapDecentralandText text={title} />\n </DownloadTitle>\n <DownloadOptions email={email} user={user} />\n </DownloadOptionsContainer>\n </>\n )}\n\n {!isDesktop && (\n <MobileTitle variant=\"h2\">\n <WrapDecentralandText text={title} />\n </MobileTitle>\n )}\n\n <DownloadImageContainer>\n {!isDesktop && <DownloadWearablePreviewOverlay />}\n <DownloadWearablePreviewContainer\n ref={(node: HTMLDivElement | null) => {\n wearableRef(node)\n wearableContainerRef.current = node\n }}\n >\n {WearablePreviewComponent && (\n <WearablePreviewComponent\n unity\n unityMode=\"jesus\"\n profile={profile?.avatars?.[0]?.ethAddress || randomDefaultProfile}\n disableBackground={true}\n lockBeta={true}\n dev={false}\n baseUrl={getEnv('WEARABLE_PREVIEW_URL')}\n />\n )}\n </DownloadWearablePreviewContainer>\n </DownloadImageContainer>\n </DownloadContainer>\n\n {!isDesktop && typeof navigator !== 'undefined' && !!navigator.share && (\n <ShareContainer>\n <Typography variant=\"h6\">{l('page.download.mobile.switch_to_computer')}</Typography>\n <ShareButton onClick={handleShare} endIcon={<ShareOutlinedIcon />} variant=\"contained\">\n {l('page.download.mobile.send_link')}\n </ShareButton>\n </ShareContainer>\n )}\n <Modal open={openModal} size=\"tiny\">\n <ModalContent>\n <ModalIcon>\n <FileDownloadOutlinedIcon />\n </ModalIcon>\n <ModalTitle>\n {l('page.download.modal.title_first_line')}\n <br />\n {l('page.download.modal.title_second_line')}\n </ModalTitle>\n <Button variant=\"contained\" onClick={() => setOpenModal(false)}>\n {l('page.download.modal.cta')}\n </Button>\n </ModalContent>\n </Modal>\n </DownloadPageContainer>\n <FooterWrapper>\n <LandingFooter />\n </FooterWrapper>\n </>\n )\n})\n\nexport { DownloadLayout }\n","import { DownloadLayout } from '../components/Layout/DownloadLayout'\nimport { useFormatMessage } from '../hooks/adapters/useFormatMessage'\n\nconst DownloadPage = () => {\n const l = useFormatMessage()\n\n return <DownloadLayout title={l('page.download.download_onboarding_title')} redirectPath=\"/download_success\" />\n}\n\nexport { DownloadPage }\n// eslint-disable-next-line import/no-default-export\nexport default DownloadPage\n"],"file":"assets/download-Csh0UAX4.js"}
@@ -1 +1 @@
1
- import{b as k,r as d}from"./vendor-router-D_36sTKu.js";import{A as E}from"./vendor-crypto-uuuQA3i5.js";import{ab as w,ac as L}from"./index-Cjx-6-Fc.js";import{u as D}from"./useAuthIdentity-BqEUIFS1.js";import{t as _}from"./file-Cr_gl9BS.js";import{c as y,e as p,a as b}from"./url-N3MWyY77.js";const h=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i,P="anon_user_id";function F(){const[a]=k();return d.useMemo(()=>{const e=a.get(P);if(e&&h.test(e))return e;const t=localStorage.getItem("ajs_anonymous_id");if(t){const n=t.replace(/^"|"$/g,"");if(h.test(n))return n}},[a])}const S="x-identity-auth-chain-",U="x-identity-timestamp",O="x-identity-metadata";function H(){const{identity:a}=D(),e=d.useRef(a);return e.current=a,d.useCallback(async()=>{const t=e.current;if(!(!t?.authChain||!t?.ephemeralIdentity))try{const n=w()===L.DEVELOPMENT?"https://auth-api.decentraland.zone":"https://auth-api.decentraland.org",r="POST",s="/identities",c={signer:"dcl:auth",intent:"dcl:auth:create-identity"},i=String(Date.now()),o=[r,s,i,JSON.stringify(c)].join(":").toLowerCase(),l=E.Authenticator.signPayload(t,o),f={"Content-Type":"application/json",[U]:i,[O]:JSON.stringify(c)};l.forEach((A,I)=>{f[`${S}${I}`]=JSON.stringify(A)});const u=await fetch(`${n}${s}`,{method:r,headers:f,body:JSON.stringify({identity:t}),signal:AbortSignal.timeout(5e3)});if(!u.ok)throw new Error(`Auth API responded with status ${u.status}`);const m=await u.json();return m.data?.identityId??m.identityId}catch(n){console.error("Failed to create identity ID:",n);return}},[])}function g(a,e,t){if(!t?.[a])return;const n=t[a];return e&&n[e]?n[e]:a==="macOS"&&n.arm64?n.arm64:Object.values(n)[0]}function R(a){try{const n=new URL(a).pathname.split("/"),r=n[n.length-1];return r&&r.includes(".")?r:"launcher"}catch{const e=a.split("/"),t=e[e.length-1];return t&&t.includes(".")?t:"launcher"}}async function $(a){const{os:e,arch:t,fallbackLinks:n,getIdentityId:r}=a,s=g(e,t,n),c=await y(r,n||null),i=p(e,t,s,c);if(!i)throw new Error("No download link available");const o=R(i);return{url:i,filename:o}}async function M(a){const{os:e,arch:t,fallbackLinks:n,queryParams:r,getIdentityId:s}=a,c=g(e,t,n),i=await y(s,n||null),o=p(e,t,c,i);if(!o)return;const l=r?b(o,r):o;return _(l),l}export{P as A,F as a,$ as c,M as g,H as u};
1
+ import{b as k,r as d}from"./vendor-router-D_36sTKu.js";import{A as E}from"./vendor-crypto-uuuQA3i5.js";import{ab as w,ac as L}from"./index-DUmIu2EK.js";import{u as D}from"./useAuthIdentity-D2zQ3q5X.js";import{t as _}from"./file-Cr_gl9BS.js";import{c as y,e as p,a as b}from"./url-BHzlJYXC.js";const h=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i,P="anon_user_id";function F(){const[a]=k();return d.useMemo(()=>{const e=a.get(P);if(e&&h.test(e))return e;const t=localStorage.getItem("ajs_anonymous_id");if(t){const n=t.replace(/^"|"$/g,"");if(h.test(n))return n}},[a])}const S="x-identity-auth-chain-",U="x-identity-timestamp",O="x-identity-metadata";function H(){const{identity:a}=D(),e=d.useRef(a);return e.current=a,d.useCallback(async()=>{const t=e.current;if(!(!t?.authChain||!t?.ephemeralIdentity))try{const n=w()===L.DEVELOPMENT?"https://auth-api.decentraland.zone":"https://auth-api.decentraland.org",r="POST",s="/identities",c={signer:"dcl:auth",intent:"dcl:auth:create-identity"},i=String(Date.now()),o=[r,s,i,JSON.stringify(c)].join(":").toLowerCase(),l=E.Authenticator.signPayload(t,o),f={"Content-Type":"application/json",[U]:i,[O]:JSON.stringify(c)};l.forEach((A,I)=>{f[`${S}${I}`]=JSON.stringify(A)});const u=await fetch(`${n}${s}`,{method:r,headers:f,body:JSON.stringify({identity:t}),signal:AbortSignal.timeout(5e3)});if(!u.ok)throw new Error(`Auth API responded with status ${u.status}`);const m=await u.json();return m.data?.identityId??m.identityId}catch(n){console.error("Failed to create identity ID:",n);return}},[])}function g(a,e,t){if(!t?.[a])return;const n=t[a];return e&&n[e]?n[e]:a==="macOS"&&n.arm64?n.arm64:Object.values(n)[0]}function R(a){try{const n=new URL(a).pathname.split("/"),r=n[n.length-1];return r&&r.includes(".")?r:"launcher"}catch{const e=a.split("/"),t=e[e.length-1];return t&&t.includes(".")?t:"launcher"}}async function $(a){const{os:e,arch:t,fallbackLinks:n,getIdentityId:r}=a,s=g(e,t,n),c=await y(r,n||null),i=p(e,t,s,c);if(!i)throw new Error("No download link available");const o=R(i);return{url:i,filename:o}}async function M(a){const{os:e,arch:t,fallbackLinks:n,queryParams:r,getIdentityId:s}=a,c=g(e,t,n),i=await y(s,n||null),o=p(e,t,c,i);if(!o)return;const l=r?b(o,r):o;return _(l),l}export{P as A,F as a,$ as c,M as g,H as u};