@dcl-regenesislabs/bevy-explorer-web 0.1.0-31020266160.commit-e05e645 → 0.1.0-31020299785.commit-e05e645
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/assets/{Showcase-BDKSZ3kP.js → Showcase-B9SEYtXX.js} +1 -1
- package/assets/{design-M-GO8W9C.js → design-DkITlBuB.js} +1 -1
- package/assets/{index-STAyU_zC.css → index-Btoo_g6b.css} +1 -1
- package/assets/{index-K4Z_9Ij4.js → index-CSXT-sRg.js} +3 -3
- package/assets/{menus-BnruNDEu.js → menus-YuAVzJzt.js} +1 -1
- package/assets/{vendor-ApAF2HP7.css → vendor-C5p0F8bL.css} +1 -1
- package/assets/{vendor-B9L28gj6.js → vendor-Cc8t3wII.js} +1 -1
- package/bridge-scene/static/BevyExplorerUI/about +1 -1
- package/bridge-scene/static/{bafkreicsi2zuz6b5zjskys66ev4cyn6vkfxlvqfpnxqylbuhxww7ht7gti → bafkreiapgotiz3ujx53eq2zrom3c23ovn36z5v5ryv2m6whjyndkq4c5yu} +1 -1
- package/index.html +17 -17
- package/package.json +2 -2
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/Showcase-
|
|
2
|
-
import{A as e,C as t,D as n,E as r,M as i,N as a,T as o,_ as s,c,j as l,n as u,r as d,s as f,t as p,v as m,w as h,x as g,y as ee}from"./design-M-GO8W9C.js";import{t as te}from"./vendor-B9L28gj6.js";import{C as ne,D as re,E as _,S as ie,T as v,_ as y,a as b,b as x,c as S,d as C,f as w,g as ae,h as oe,i as se,l as ce,m as le,n as ue,o as de,p as fe,r as pe,s as me,t as he,u as ge,v as T,w as E,x as D,y as _e}from"./menus-BnruNDEu.js";import{a as ve,i as ye,n as be,o as xe,r as Se,t as Ce}from"./emoji-DrfHOLaz.js";(function(){let e=document.createElement(`link`).relList;if(e&&e.supports&&e.supports(`modulepreload`))return;for(let e of document.querySelectorAll(`link[rel="modulepreload"]`))n(e);new MutationObserver(e=>{for(let t of e)if(t.type===`childList`)for(let e of t.addedNodes)e.tagName===`LINK`&&e.rel===`modulepreload`&&n(e)}).observe(document,{childList:!0,subtree:!0});function t(e){let t={};return e.integrity&&(t.integrity=e.integrity),e.referrerPolicy&&(t.referrerPolicy=e.referrerPolicy),e.crossOrigin===`use-credentials`?t.credentials=`include`:e.crossOrigin===`anonymous`?t.credentials=`omit`:t.credentials=`same-origin`,t}function n(e){if(e.ep)return;e.ep=!0;let n=t(e);fetch(e.href,n)}})();var O=a(),we=te(),Te=`bevy-ui-bridge`,Ee=class{ch;pending=new Map;listeners=new Set;constructor(e=Te){this.ch=new BroadcastChannel(e),this.ch.onmessage=e=>{let t=e.data;t?.to===`page`&&this.handle(t.msg)}}getPreviousLogin(){return this.rpc(`getPreviousLogin`)}loginPrevious(){return this.rpc(`loginPrevious`)}loginGuest(){return this.rpc(`loginGuest`)}loginCancel(){return this.rpc(`loginCancel`)}logout(){return this.rpc(`logout`)}loginWithIdentity(e){return this.rpc(`loginIdentity`)}async jumpIn(){let e=await this.rpc(`loginPrevious`);if(e&&e.success===!1)throw Error(e.error||`Could not reuse your login`)}async loginNew(){let e=await this.rpc(`loginNew`);if(e&&e.success===!1)throw Error(e.error||`Sign-in failed`)}send(e){this.ch.postMessage({to:`scene`,msg:e})}on(e){return this.listeners.add(e),()=>this.listeners.delete(e)}dispose(){this.ch.close(),this.pending.clear(),this.listeners.clear()}rpc(e){let t=crypto.randomUUID();return new Promise((n,r)=>{this.pending.set(t,{resolve:n,reject:r}),this.send({kind:`rpc:req`,id:t,method:e})})}handle(e){if(e.kind===`rpc:res`){let t=this.pending.get(e.id);if(!t)return;this.pending.delete(e.id),e.ok?t.resolve(e.value):t.reject(Error(e.error??`bridge rpc failed`));return}this.listeners.forEach(t=>t(e))}};function De(e){return btoa(JSON.stringify(e))}var Oe=class{rpc;ch;listeners=new Set;playerReadyFired=!1;readyFallbackTimer=null;constructor(e){this.rpc=e,this.ch=new BroadcastChannel(Te),this.ch.onmessage=e=>{let t=e.data;t?.to===`page`&&(t.msg.kind===`event`&&t.msg.name===`playerReady`&&(this.playerReadyFired=!0),this.emit(t.msg))}}async getPreviousLogin(){let e=_();return{userId:e?re(e.identity):null}}async loginPrevious(e){let t=e===!0?` --default-on-error`:``,n=await this.rpc.command(`/login_previous${t}`);return this.scheduleReadyFallback(),n}async loginGuest(){await this.rpc.command(`/login_guest`),this.scheduleReadyFallback()}async loginCancel(){}async logout(){await this.rpc.command(`/logout`)}async loginWithIdentity(e,t){let n=t===!0?` --default-on-error`:``;await this.rpc.command(`/login_identity ${De(e)}${n}`),this.scheduleReadyFallback()}async jumpIn(e){let t=_();t?await this.loginWithIdentity(t.identity,e):await this.loginPrevious(e)}send(e){this.ch.postMessage({to:`scene`,msg:e})}on(e){return this.listeners.add(e),()=>this.listeners.delete(e)}dispose(){this.readyFallbackTimer!=null&&clearTimeout(this.readyFallbackTimer),this.ch.close(),this.listeners.clear()}renderBusy(){return this.rpc.renderBusy()}engineReady(){return this.rpc.readyToLaunch()}loadProgress(){return this.rpc.loadProgress()}loadStep(){return this.rpc.loadStep()}enginePanic(){return this.rpc.enginePanic()}clearEnginePanic(){this.rpc.clearEnginePanic()}rearmCrashWatchdog(){this.rpc.rearmCrashWatchdog()}launch(e,t){this.rpc.launch(e,t)}emit(e){this.listeners.forEach(t=>t(e))}scheduleReadyFallback(){this.readyFallbackTimer!=null&&clearTimeout(this.readyFallbackTimer),this.readyFallbackTimer=setTimeout(()=>{this.readyFallbackTimer=null,this.playerReadyFired||(this.playerReadyFired=!0,this.emit({kind:`event`,name:`playerReady`}))},6e3)}},ke=class{win=null;setWindow(e){this.win=e}readyToLaunch(){return this.win?.__bevyReadyToLaunch===!0}loadProgress(){return this.win?.__bevyLoadProgress??0}loadStep(){return this.win?.__bevyLoadStep??null}enginePanic(){return this.win?.__bevyPanic??null}clearEnginePanic(){this.win&&(this.win.__bevyPanic=void 0)}rearmCrashWatchdog(){this.win?.__rearmCrashWatchdog?.()}launch(e,t){this.win?.__bevyLaunch?.(e,t)}ready(){return typeof this.win?.engine_console_command==`function`}async waitReady(e=9e4){let t=performance.now();for(;!this.ready();){if(performance.now()-t>e)throw Error(`engine RPC did not become ready in time`);await new Promise(e=>setTimeout(e,150))}}async command(e){return await this.waitReady(),this.win.engine_console_command(e)}renderBusy(){try{let e=this.win,t=e?.document.getElementById(`shader-compiling`);return t!=null&&e.getComputedStyle(t).display!==`none`}catch{return!1}}};function Ae(e,t,n){return{address:e,name:t,picture:`https://profile-images.decentraland.org/entities/bafkreid5btlh76opew65hxu6dtkdo6ybqhymdof6vrrmjy2p5a74oy4huq/face.png`,bodyImage:`https://picsum.photos/seed/${encodeURIComponent(e)}/360/760`,hasClaimedName:!t.includes(`#`),isGuest:n,description:`Exploring Decentraland one plaza at a time. 🌅 DCL citizen since 2022.`,links:[{title:`Twitter`,url:`https://twitter.com`},{title:`Discord`,url:`https://discord.com`}],mutuals:30,badges:Array.from({length:8},(e,t)=>({id:`b${t}`,name:`Badge ${t+1}`,tier:[`bronze`,`silver`,`gold`][t%3],image:`https://picsum.photos/seed/badge${t}/96/96`})),photos:Array.from({length:6},(e,t)=>`https://picsum.photos/seed/photo${t}/300/300`),info:{gender:`Male`,birthdate:`26/11/1991`,pronouns:`He / Him`,relationship:`Single`,language:`Persian`,profession:`IT`,employment:`Chilling`,hobby:`games.movie.party`,realName:`mohammad`}}}var je=[{address:`0x5854cce95d5e25817b41f4c41f06b695a83bc495`,name:`Mojito`,picture:`https://profile-images.decentraland.org/entities/bafkreid5btlh76opew65hxu6dtkdo6ybqhymdof6vrrmjy2p5a74oy4huq/face.png`},{address:`0x6723dcb07f3ca735223cd1c0acfa62dd994a1bb4`,name:`Sharknado`,picture:`https://profile-images.decentraland.org/entities/bafkreie5bpho47gnh3jrfxoezwc4pxffup4cmmhmdxsmpf3oslopxb4enm/face.png`},{address:`0x1e105bb213754519903788022b962fe2b9c4b263`,name:`Pravus`,picture:`https://profile-images.decentraland.org/entities/bafkreig4xay5oxgbf75hwkjefx5hgdcdvm6a4tnpiisltslxf4jtajkbyq/face.png`},{address:`0x9f8c2a1b4d6e7f0a3b5c8d9e1f2a4b6c8d0e1f23`,name:`Johnny`},{address:`0x3a1b2c4d5e6f7081920a3b4c5d6e7f8091a2b3c4`,name:`Clara`},{address:`0x77a0b1c2d3e4f5061728394a5b6c7d8e9f001122`,name:`SpottyGoat`},{address:`0xc0ffee254729296a45a3885639ac7e10f9d54979`,name:``}],k=[{id:`c1`,name:`Decentraland Foundation`,description:`The official Decentraland Foundation community. Stay up to date with events, releases and everything happening across the metaverse.`,thumbnail:`https://picsum.photos/seed/dcl/540/360`,membersCount:1242,role:`member`,ownerName:`DCLOfficial`,privacy:`public`},{id:`c2`,name:`Chiri Storytelling`,description:`This space brings to life Chiri's adventures. Gathering cozy Social Gamers, Creators, Digi Fashion lovers, Virtual Citizens & more!`,thumbnail:``,membersCount:374,role:`none`,ownerName:`Chiri`,privacy:`private`},{id:`c3`,name:`VTATV`,description:`Virtual television and live shows broadcast from inside Decentraland.`,thumbnail:``,membersCount:186,role:`none`,ownerName:`VTATV`},{id:`c4`,name:`ABC Decentraland`,description:`Adventures and education for newcomers to the metaverse.`,thumbnail:``,membersCount:436,role:`none`,ownerName:`BillyTeacoin`},{id:`c5`,name:`Toxic Events`,description:`The wildest parties and events in DCL.`,thumbnail:``,membersCount:601,role:`member`,ownerName:`ToxicWaifu`},{id:`c6`,name:`Last Slice Creators`,description:`A community of pizza-loving 3D creators.`,thumbnail:``,membersCount:164,role:`none`,ownerName:`Lastraum`},{id:`c7`,name:`SheFi`,description:`Empowering women in web3 and DeFi.`,thumbnail:``,membersCount:310,role:`none`,ownerName:`msjoedor`},{id:`c8`,name:`Community Building DCL`,description:`Helping communities grow in Decentraland.`,thumbnail:``,membersCount:639,role:`owner`,ownerName:`TheCryptKeeper`}],Me=[`base`,`common`,`uncommon`,`rare`,`epic`,`legendary`,`mythic`,`unique`,`exotic`],Ne=e=>`https://peer.decentraland.org/lambdas/collections/contents/${e}/thumbnail`,A=[{name:`casual_hair_01`,category:`hair`,label:`Casual Hair`},{name:`cornrows`,category:`hair`,label:`Cornrows`},{name:`hair_anime_01`,category:`hair`,label:`Anime Hair`},{name:`eyebrows_00`,category:`eyebrows`,label:`Eyebrows`},{name:`mouth_00`,category:`mouth`,label:`Mouth`},{name:`beard`,category:`facial_hair`,label:`Beard`},{name:`granpa_beard`,category:`facial_hair`,label:`Grandpa Beard`},{name:`f_sweater`,category:`upper_body`,label:`Sweater`},{name:`m_greenhoodie`,category:`upper_body`,label:`Green Hoodie`},{name:`blue_tshirt`,category:`upper_body`,label:`Blue T-Shirt`},{name:`sport_jacket`,category:`upper_body`,label:`Sport Jacket`},{name:`f_jeans`,category:`lower_body`,label:`Jeans`},{name:`f_brown_trousers`,category:`lower_body`,label:`Brown Trousers`},{name:`basketball_shorts`,category:`lower_body`,label:`Basketball Shorts`},{name:`sneakers`,category:`feet`,label:`Sneakers`},{name:`bun_shoes`,category:`feet`,label:`Bun Shoes`},{name:`m_greenflipflops`,category:`feet`,label:`Flip Flops`},{name:`hat`,category:`hat`,label:`Hat`},{name:`bandana`,category:`hat`,label:`Bandana`},{name:`black_sun_glasses`,category:`eyewear`,label:`Sunglasses`},{name:`piratepatch`,category:`eyewear`,label:`Pirate Patch`},{name:`blue_bandana`,category:`mask`,label:`Blue Bandana`},{name:`pink_gem_earring`,category:`earring`,label:`Pink Gem Earring`},{name:`Thunder_earring`,category:`earring`,label:`Thunder Earring`}].map((e,t)=>{let n=`urn:decentraland:off-chain:base-avatars:${e.name}`;return{urn:n,name:e.label,rarity:Me[t%Me.length],category:e.category,thumbnail:Ne(n),equipped:t%6==0}}),Pe=`urn:decentraland:off-chain:base-avatars:BaseMale`,Fe=e=>({bodyShape:Pe,eyes:{color:{r:.37,g:.22,b:.19}},hair:{color:{r:.6,g:.36,b:.2}},skin:{color:{r:.8,g:.6,b:.47}},wearables:e,forceRender:[]}),Ie=[{urn:`urn:decentraland:off-chain:base-avatars:thug_life`,name:`Off-catalog Eyewear`,rarity:`epic`,category:`eyewear`,thumbnail:Ne(`urn:decentraland:off-chain:base-avatars:black_sun_glasses`),equipped:!0}],Le=()=>[...A.filter(e=>e.equipped),...Ie],j=e=>({name:e,description:``}),Re=[{name:`fullscreen`,category:`general`,description:`Run in fullscreen mode.`,minValue:0,maxValue:1,namedVariants:[j(`Off`),j(`On`)],value:1,default:1,stepSize:1},{name:`resolution`,category:`general`,description:``,minValue:0,maxValue:2,namedVariants:[j(`1280 × 720`),j(`1920 × 1080`),j(`2560 × 1440`)],value:1,default:1,stepSize:1},{name:`graphics_quality`,category:`graphics`,description:`Overall visual quality.`,minValue:0,maxValue:3,namedVariants:[j(`Low`),j(`Medium`),j(`High`),j(`Ultra`)],value:2,default:1,stepSize:1},{name:`fps_limit`,category:`graphics`,description:`Cap the frame rate.`,minValue:30,maxValue:144,namedVariants:[],value:60,default:60,stepSize:1},{name:`master_volume`,category:`audio`,description:``,minValue:0,maxValue:100,namedVariants:[],value:80,default:100,stepSize:1},{name:`voice_chat`,category:`audio`,description:`Enable voice chat.`,minValue:0,maxValue:1,namedVariants:[j(`Off`),j(`On`)],value:1,default:1,stepSize:1}],ze={hasPreviousLogin:new URLSearchParams(location.search).get(`previousLogin`)===`1`,userId:`0xmock00000000000000000000000000000000beef`,latency:600};function Be(e){let t=`single-sign-on-${e.userId}`;e.hasPreviousLogin?localStorage.getItem(t)||localStorage.setItem(t,JSON.stringify({ephemeralIdentity:{address:`0xeeee000000000000000000000000000000000001`,publicKey:`0x04`,privateKey:`0x`+`11`.repeat(32)},expiration:new Date(Date.now()+720*3600*1e3).toISOString(),authChain:[{type:`SIGNER`,payload:e.userId,signature:``},{type:`ECDSA_EPHEMERAL`,payload:`Decentraland Login
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/Showcase-B9SEYtXX.js","assets/design-DkITlBuB.js","assets/rolldown-runtime-D9-fqq9M.js","assets/design-BdxsbUvY.css","assets/menus-YuAVzJzt.js","assets/menus-BDWqQaLj.css"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{A as e,C as t,D as n,E as r,M as i,N as a,T as o,_ as s,c,j as l,n as u,r as d,s as f,t as p,v as m,w as h,x as g,y as ee}from"./design-DkITlBuB.js";import{t as te}from"./vendor-Cc8t3wII.js";import{C as ne,D as re,E as _,S as ie,T as v,_ as y,a as b,b as x,c as S,d as C,f as w,g as ae,h as oe,i as se,l as ce,m as le,n as ue,o as de,p as fe,r as pe,s as me,t as he,u as ge,v as T,w as E,x as D,y as _e}from"./menus-YuAVzJzt.js";import{a as ve,i as ye,n as be,o as xe,r as Se,t as Ce}from"./emoji-DrfHOLaz.js";(function(){let e=document.createElement(`link`).relList;if(e&&e.supports&&e.supports(`modulepreload`))return;for(let e of document.querySelectorAll(`link[rel="modulepreload"]`))n(e);new MutationObserver(e=>{for(let t of e)if(t.type===`childList`)for(let e of t.addedNodes)e.tagName===`LINK`&&e.rel===`modulepreload`&&n(e)}).observe(document,{childList:!0,subtree:!0});function t(e){let t={};return e.integrity&&(t.integrity=e.integrity),e.referrerPolicy&&(t.referrerPolicy=e.referrerPolicy),e.crossOrigin===`use-credentials`?t.credentials=`include`:e.crossOrigin===`anonymous`?t.credentials=`omit`:t.credentials=`same-origin`,t}function n(e){if(e.ep)return;e.ep=!0;let n=t(e);fetch(e.href,n)}})();var O=a(),we=te(),Te=`bevy-ui-bridge`,Ee=class{ch;pending=new Map;listeners=new Set;constructor(e=Te){this.ch=new BroadcastChannel(e),this.ch.onmessage=e=>{let t=e.data;t?.to===`page`&&this.handle(t.msg)}}getPreviousLogin(){return this.rpc(`getPreviousLogin`)}loginPrevious(){return this.rpc(`loginPrevious`)}loginGuest(){return this.rpc(`loginGuest`)}loginCancel(){return this.rpc(`loginCancel`)}logout(){return this.rpc(`logout`)}loginWithIdentity(e){return this.rpc(`loginIdentity`)}async jumpIn(){let e=await this.rpc(`loginPrevious`);if(e&&e.success===!1)throw Error(e.error||`Could not reuse your login`)}async loginNew(){let e=await this.rpc(`loginNew`);if(e&&e.success===!1)throw Error(e.error||`Sign-in failed`)}send(e){this.ch.postMessage({to:`scene`,msg:e})}on(e){return this.listeners.add(e),()=>this.listeners.delete(e)}dispose(){this.ch.close(),this.pending.clear(),this.listeners.clear()}rpc(e){let t=crypto.randomUUID();return new Promise((n,r)=>{this.pending.set(t,{resolve:n,reject:r}),this.send({kind:`rpc:req`,id:t,method:e})})}handle(e){if(e.kind===`rpc:res`){let t=this.pending.get(e.id);if(!t)return;this.pending.delete(e.id),e.ok?t.resolve(e.value):t.reject(Error(e.error??`bridge rpc failed`));return}this.listeners.forEach(t=>t(e))}};function De(e){return btoa(JSON.stringify(e))}var Oe=class{rpc;ch;listeners=new Set;playerReadyFired=!1;readyFallbackTimer=null;constructor(e){this.rpc=e,this.ch=new BroadcastChannel(Te),this.ch.onmessage=e=>{let t=e.data;t?.to===`page`&&(t.msg.kind===`event`&&t.msg.name===`playerReady`&&(this.playerReadyFired=!0),this.emit(t.msg))}}async getPreviousLogin(){let e=_();return{userId:e?re(e.identity):null}}async loginPrevious(e){let t=e===!0?` --default-on-error`:``,n=await this.rpc.command(`/login_previous${t}`);return this.scheduleReadyFallback(),n}async loginGuest(){await this.rpc.command(`/login_guest`),this.scheduleReadyFallback()}async loginCancel(){}async logout(){await this.rpc.command(`/logout`)}async loginWithIdentity(e,t){let n=t===!0?` --default-on-error`:``;await this.rpc.command(`/login_identity ${De(e)}${n}`),this.scheduleReadyFallback()}async jumpIn(e){let t=_();t?await this.loginWithIdentity(t.identity,e):await this.loginPrevious(e)}send(e){this.ch.postMessage({to:`scene`,msg:e})}on(e){return this.listeners.add(e),()=>this.listeners.delete(e)}dispose(){this.readyFallbackTimer!=null&&clearTimeout(this.readyFallbackTimer),this.ch.close(),this.listeners.clear()}renderBusy(){return this.rpc.renderBusy()}engineReady(){return this.rpc.readyToLaunch()}loadProgress(){return this.rpc.loadProgress()}loadStep(){return this.rpc.loadStep()}enginePanic(){return this.rpc.enginePanic()}clearEnginePanic(){this.rpc.clearEnginePanic()}rearmCrashWatchdog(){this.rpc.rearmCrashWatchdog()}launch(e,t){this.rpc.launch(e,t)}emit(e){this.listeners.forEach(t=>t(e))}scheduleReadyFallback(){this.readyFallbackTimer!=null&&clearTimeout(this.readyFallbackTimer),this.readyFallbackTimer=setTimeout(()=>{this.readyFallbackTimer=null,this.playerReadyFired||(this.playerReadyFired=!0,this.emit({kind:`event`,name:`playerReady`}))},6e3)}},ke=class{win=null;setWindow(e){this.win=e}readyToLaunch(){return this.win?.__bevyReadyToLaunch===!0}loadProgress(){return this.win?.__bevyLoadProgress??0}loadStep(){return this.win?.__bevyLoadStep??null}enginePanic(){return this.win?.__bevyPanic??null}clearEnginePanic(){this.win&&(this.win.__bevyPanic=void 0)}rearmCrashWatchdog(){this.win?.__rearmCrashWatchdog?.()}launch(e,t){this.win?.__bevyLaunch?.(e,t)}ready(){return typeof this.win?.engine_console_command==`function`}async waitReady(e=9e4){let t=performance.now();for(;!this.ready();){if(performance.now()-t>e)throw Error(`engine RPC did not become ready in time`);await new Promise(e=>setTimeout(e,150))}}async command(e){return await this.waitReady(),this.win.engine_console_command(e)}renderBusy(){try{let e=this.win,t=e?.document.getElementById(`shader-compiling`);return t!=null&&e.getComputedStyle(t).display!==`none`}catch{return!1}}};function Ae(e,t,n){return{address:e,name:t,picture:`https://profile-images.decentraland.org/entities/bafkreid5btlh76opew65hxu6dtkdo6ybqhymdof6vrrmjy2p5a74oy4huq/face.png`,bodyImage:`https://picsum.photos/seed/${encodeURIComponent(e)}/360/760`,hasClaimedName:!t.includes(`#`),isGuest:n,description:`Exploring Decentraland one plaza at a time. 🌅 DCL citizen since 2022.`,links:[{title:`Twitter`,url:`https://twitter.com`},{title:`Discord`,url:`https://discord.com`}],mutuals:30,badges:Array.from({length:8},(e,t)=>({id:`b${t}`,name:`Badge ${t+1}`,tier:[`bronze`,`silver`,`gold`][t%3],image:`https://picsum.photos/seed/badge${t}/96/96`})),photos:Array.from({length:6},(e,t)=>`https://picsum.photos/seed/photo${t}/300/300`),info:{gender:`Male`,birthdate:`26/11/1991`,pronouns:`He / Him`,relationship:`Single`,language:`Persian`,profession:`IT`,employment:`Chilling`,hobby:`games.movie.party`,realName:`mohammad`}}}var je=[{address:`0x5854cce95d5e25817b41f4c41f06b695a83bc495`,name:`Mojito`,picture:`https://profile-images.decentraland.org/entities/bafkreid5btlh76opew65hxu6dtkdo6ybqhymdof6vrrmjy2p5a74oy4huq/face.png`},{address:`0x6723dcb07f3ca735223cd1c0acfa62dd994a1bb4`,name:`Sharknado`,picture:`https://profile-images.decentraland.org/entities/bafkreie5bpho47gnh3jrfxoezwc4pxffup4cmmhmdxsmpf3oslopxb4enm/face.png`},{address:`0x1e105bb213754519903788022b962fe2b9c4b263`,name:`Pravus`,picture:`https://profile-images.decentraland.org/entities/bafkreig4xay5oxgbf75hwkjefx5hgdcdvm6a4tnpiisltslxf4jtajkbyq/face.png`},{address:`0x9f8c2a1b4d6e7f0a3b5c8d9e1f2a4b6c8d0e1f23`,name:`Johnny`},{address:`0x3a1b2c4d5e6f7081920a3b4c5d6e7f8091a2b3c4`,name:`Clara`},{address:`0x77a0b1c2d3e4f5061728394a5b6c7d8e9f001122`,name:`SpottyGoat`},{address:`0xc0ffee254729296a45a3885639ac7e10f9d54979`,name:``}],k=[{id:`c1`,name:`Decentraland Foundation`,description:`The official Decentraland Foundation community. Stay up to date with events, releases and everything happening across the metaverse.`,thumbnail:`https://picsum.photos/seed/dcl/540/360`,membersCount:1242,role:`member`,ownerName:`DCLOfficial`,privacy:`public`},{id:`c2`,name:`Chiri Storytelling`,description:`This space brings to life Chiri's adventures. Gathering cozy Social Gamers, Creators, Digi Fashion lovers, Virtual Citizens & more!`,thumbnail:``,membersCount:374,role:`none`,ownerName:`Chiri`,privacy:`private`},{id:`c3`,name:`VTATV`,description:`Virtual television and live shows broadcast from inside Decentraland.`,thumbnail:``,membersCount:186,role:`none`,ownerName:`VTATV`},{id:`c4`,name:`ABC Decentraland`,description:`Adventures and education for newcomers to the metaverse.`,thumbnail:``,membersCount:436,role:`none`,ownerName:`BillyTeacoin`},{id:`c5`,name:`Toxic Events`,description:`The wildest parties and events in DCL.`,thumbnail:``,membersCount:601,role:`member`,ownerName:`ToxicWaifu`},{id:`c6`,name:`Last Slice Creators`,description:`A community of pizza-loving 3D creators.`,thumbnail:``,membersCount:164,role:`none`,ownerName:`Lastraum`},{id:`c7`,name:`SheFi`,description:`Empowering women in web3 and DeFi.`,thumbnail:``,membersCount:310,role:`none`,ownerName:`msjoedor`},{id:`c8`,name:`Community Building DCL`,description:`Helping communities grow in Decentraland.`,thumbnail:``,membersCount:639,role:`owner`,ownerName:`TheCryptKeeper`}],Me=[`base`,`common`,`uncommon`,`rare`,`epic`,`legendary`,`mythic`,`unique`,`exotic`],Ne=e=>`https://peer.decentraland.org/lambdas/collections/contents/${e}/thumbnail`,A=[{name:`casual_hair_01`,category:`hair`,label:`Casual Hair`},{name:`cornrows`,category:`hair`,label:`Cornrows`},{name:`hair_anime_01`,category:`hair`,label:`Anime Hair`},{name:`eyebrows_00`,category:`eyebrows`,label:`Eyebrows`},{name:`mouth_00`,category:`mouth`,label:`Mouth`},{name:`beard`,category:`facial_hair`,label:`Beard`},{name:`granpa_beard`,category:`facial_hair`,label:`Grandpa Beard`},{name:`f_sweater`,category:`upper_body`,label:`Sweater`},{name:`m_greenhoodie`,category:`upper_body`,label:`Green Hoodie`},{name:`blue_tshirt`,category:`upper_body`,label:`Blue T-Shirt`},{name:`sport_jacket`,category:`upper_body`,label:`Sport Jacket`},{name:`f_jeans`,category:`lower_body`,label:`Jeans`},{name:`f_brown_trousers`,category:`lower_body`,label:`Brown Trousers`},{name:`basketball_shorts`,category:`lower_body`,label:`Basketball Shorts`},{name:`sneakers`,category:`feet`,label:`Sneakers`},{name:`bun_shoes`,category:`feet`,label:`Bun Shoes`},{name:`m_greenflipflops`,category:`feet`,label:`Flip Flops`},{name:`hat`,category:`hat`,label:`Hat`},{name:`bandana`,category:`hat`,label:`Bandana`},{name:`black_sun_glasses`,category:`eyewear`,label:`Sunglasses`},{name:`piratepatch`,category:`eyewear`,label:`Pirate Patch`},{name:`blue_bandana`,category:`mask`,label:`Blue Bandana`},{name:`pink_gem_earring`,category:`earring`,label:`Pink Gem Earring`},{name:`Thunder_earring`,category:`earring`,label:`Thunder Earring`}].map((e,t)=>{let n=`urn:decentraland:off-chain:base-avatars:${e.name}`;return{urn:n,name:e.label,rarity:Me[t%Me.length],category:e.category,thumbnail:Ne(n),equipped:t%6==0}}),Pe=`urn:decentraland:off-chain:base-avatars:BaseMale`,Fe=e=>({bodyShape:Pe,eyes:{color:{r:.37,g:.22,b:.19}},hair:{color:{r:.6,g:.36,b:.2}},skin:{color:{r:.8,g:.6,b:.47}},wearables:e,forceRender:[]}),Ie=[{urn:`urn:decentraland:off-chain:base-avatars:thug_life`,name:`Off-catalog Eyewear`,rarity:`epic`,category:`eyewear`,thumbnail:Ne(`urn:decentraland:off-chain:base-avatars:black_sun_glasses`),equipped:!0}],Le=()=>[...A.filter(e=>e.equipped),...Ie],j=e=>({name:e,description:``}),Re=[{name:`fullscreen`,category:`general`,description:`Run in fullscreen mode.`,minValue:0,maxValue:1,namedVariants:[j(`Off`),j(`On`)],value:1,default:1,stepSize:1},{name:`resolution`,category:`general`,description:``,minValue:0,maxValue:2,namedVariants:[j(`1280 × 720`),j(`1920 × 1080`),j(`2560 × 1440`)],value:1,default:1,stepSize:1},{name:`graphics_quality`,category:`graphics`,description:`Overall visual quality.`,minValue:0,maxValue:3,namedVariants:[j(`Low`),j(`Medium`),j(`High`),j(`Ultra`)],value:2,default:1,stepSize:1},{name:`fps_limit`,category:`graphics`,description:`Cap the frame rate.`,minValue:30,maxValue:144,namedVariants:[],value:60,default:60,stepSize:1},{name:`master_volume`,category:`audio`,description:``,minValue:0,maxValue:100,namedVariants:[],value:80,default:100,stepSize:1},{name:`voice_chat`,category:`audio`,description:`Enable voice chat.`,minValue:0,maxValue:1,namedVariants:[j(`Off`),j(`On`)],value:1,default:1,stepSize:1}],ze={hasPreviousLogin:new URLSearchParams(location.search).get(`previousLogin`)===`1`,userId:`0xmock00000000000000000000000000000000beef`,latency:600};function Be(e){let t=`single-sign-on-${e.userId}`;e.hasPreviousLogin?localStorage.getItem(t)||localStorage.setItem(t,JSON.stringify({ephemeralIdentity:{address:`0xeeee000000000000000000000000000000000001`,publicKey:`0x04`,privateKey:`0x`+`11`.repeat(32)},expiration:new Date(Date.now()+720*3600*1e3).toISOString(),authChain:[{type:`SIGNER`,payload:e.userId,signature:``},{type:`ECDSA_EPHEMERAL`,payload:`Decentraland Login
|
|
3
3
|
Ephemeral address: 0xeeee
|
|
4
4
|
Expiration: `,signature:`0xabc`}]})):localStorage.removeItem(t)}function Ve(e={}){let t={...ze,...e};Be(t);let n=17e11,r=[{id:`n1`,type:`social_service_friendship_accepted`,read:!1,timestamp:new Date(n).toISOString(),metadata:{sender:{address:`0x5854cce95d5e25817b41f4c41f06b695a83bc495`,name:`Mojito`,profileImageUrl:`https://profile-images.decentraland.org/entities/bafkreid5btlh76opew65hxu6dtkdo6ybqhymdof6vrrmjy2p5a74oy4huq/face.png`}}},{id:`n2`,type:`social_service_friendship_request`,read:!1,timestamp:new Date(n-18e5).toISOString(),metadata:{sender:{address:`0x6723dcb07f3ca735223cd1c0acfa62dd994a1bb4`,name:`Sharknado`,profileImageUrl:`https://profile-images.decentraland.org/entities/bafkreie5bpho47gnh3jrfxoezwc4pxffup4cmmhmdxsmpf3oslopxb4enm/face.png`}}},{id:`n3`,type:`item_sold`,read:!1,timestamp:new Date(n-36e5).toISOString(),metadata:{title:`Item sold`,description:`Your “Sunset Hoodie” sold for 120 MANA.`,image:`https://profile-images.decentraland.org/entities/bafkreie5bpho47gnh3jrfxoezwc4pxffup4cmmhmdxsmpf3oslopxb4enm/face.png`}},{id:`n4`,type:`event_started`,read:!0,timestamp:new Date(n-864e5).toISOString(),metadata:{title:`Event live`,description:`Music Festival is happening now in Genesis Plaza.`}},{id:`n5`,type:`community_post_added`,read:!1,timestamp:new Date(n-24e5).toISOString(),metadata:{communityName:`Toxic Events`,communityId:`c5`,thumbnailUrl:`https://picsum.photos/seed/dcl/80/80`}},{id:`n6`,type:`credits_reminder_claim_credits`,read:!1,timestamp:new Date(n-54e5).toISOString(),metadata:{}}],i=Array.from({length:14},(e,t)=>({id:`g${t}`,url:`https://picsum.photos/seed/reel${t}/1200/800`,thumbnailUrl:`https://picsum.photos/seed/reel${t}/400/300`,isPublic:t%2==0,dateTime:String(Math.floor((n-t*3*864e5)/1e3))})),a={outfits:[{slot:0,outfit:Fe(A.slice(0,5).map(e=>e.urn))},{slot:2,outfit:Fe(A.slice(5,10).map(e=>e.urn))}],namesForExtraSlots:[]},o=new BroadcastChannel(Te),s=e=>new Promise(t=>setTimeout(t,e)),c=e=>{o.postMessage({to:`page`,msg:e})},l=null,u=e=>{e.key===`Escape`&&c({kind:`systemAction`,action:`Cancel`})};window.addEventListener(`keydown`,u);let d=()=>{setTimeout(()=>{c({kind:`event`,name:`playerReady`}),c({kind:`chatVisibility`,open:!0});let e=[564,60,0],t=n=>{let r=e[n];c({kind:`sceneLoading`,state:{visible:r>0,realmConnected:!0,title:`Genesis Plaza`,pendingAssets:r>0?r:null}}),r>0&&setTimeout(()=>t(n+1),250)};t(0)},500),setTimeout(()=>c({kind:`members`,members:je}),1400);let e=Number(new URLSearchParams(location.search).get(`simhover`)??0);if(e>0){let t=[{button:0,text:`Show Profile`,enabled:!0},{button:1,text:`Open`,enabled:!0},{button:2,text:`Inspect`,enabled:!0},{button:8,text:`Jump`,enabled:!0},{button:4,text:`Grab`,enabled:!1,tooFarReason:`camera`},{button:10,text:`Use`,enabled:!0},{button:11,text:`Activate`,enabled:!0}].slice(0,Math.min(e,7));setTimeout(()=>c({kind:`hover`,actions:t}),1500)}setTimeout(()=>c({kind:`friends`,available:!0,friends:[{address:`0x5854cce95d5e25817b41f4c41f06b695a83bc495`,name:`Mojito`,status:`online`,picture:`https://profile-images.decentraland.org/entities/bafkreid5btlh76opew65hxu6dtkdo6ybqhymdof6vrrmjy2p5a74oy4huq/face.png`},{address:`0x6723dcb07f3ca735223cd1c0acfa62dd994a1bb4`,name:`Sharknado`,status:`online`},{address:`0x1e105bb213754519903788022b962fe2b9c4b263`,name:`Pravus`,status:`away`},{address:`0x3a1b2c4d5e6f7081920a3b4c5d6e7f8091a2b3c4`,name:`Clara#1l0u`,status:`offline`}],received:[{id:`r1`,address:`0x77a0b1c2d3e4f5061728394a5b6c7d8e9f001122`,name:`SpottyGoat`,message:`Met you at the plaza!`}],sent:[{id:`s1`,address:`0x9f8c2a1b4d6e7f0a3b5c8d9e1f2a4b6c8d0e1f23`,name:`Johnny`}],blocked:[]}),1600),setTimeout(()=>c({kind:`settings`,settings:Re}),1700),[[`0x5854cce95d5e25817b41f4c41f06b695a83bc495`,`gm everyone 👋`],[`0x6723dcb07f3ca735223cd1c0acfa62dd994a1bb4`,`anyone going to the event?`],[`0x1e105bb213754519903788022b962fe2b9c4b263`,`this plaza looks great`]].forEach(([e,t],n)=>setTimeout(()=>c({kind:`chat`,chat:{sender:e,message:t,channel:`Nearby`}}),2500+n*2200)),new URLSearchParams(location.search).get(`perm`)===`1`&&setTimeout(()=>c({kind:`permissionRequest`,id:1,ty:`ChangeRealm`,sceneName:`Genesis Plaza`,scene:`bafkreigenesisplazahash`,realm:`https://realm-provider.decentraland.org/main`,additional:`Jump to DCL Kickoff Challenge?`}),3e3)};return o.onmessage=async e=>{let n=e.data;if(n?.to!==`scene`)return;let o=n.msg;if(await s(t.latency),o.kind===`sendChat`){c({kind:`chat`,chat:{sender:`You`,message:o.message,channel:o.channel}});return}if(o.kind!==`navAction`&&o.kind!==`friendAction`){if(o.kind===`getSettings`){c({kind:`settings`,settings:Re});return}if(o.kind===`setSetting`){let e=Re.find(e=>e.name===o.name);e&&(e.value=o.value),c({kind:`settings`,settings:Re});return}if(o.kind===`getEmotes`){c({kind:`emotes`,emotes:[`Hands Air`,`Wave`,`Fist Pump`,`Dance`,`Raise Hand`,`Clap`,`Money`,`Kiss`,`Head Explode`,`Shrug`].map((e,t)=>({slot:t,urn:`urn:decentraland:off-chain:base-emotes:${e.toLowerCase().replace(/ /g,``)}`,name:e,rarity:`base`}))});return}if(o.kind!==`triggerEmote`&&o.kind!==`equipEmote`){if(o.kind===`getWearables`){c({kind:`wearables`,equipped:Le()});return}if(o.kind===`catalogQuery`){if(o.catalog!==`wearables`){c({kind:`catalogPage`,catalog:o.catalog,items:[],total:0,requestId:o.requestId});return}let e=A.slice();o.category!=null&&o.category!==`all`&&(e=e.filter(e=>e.category===o.category)),o.search!=null&&o.search!==``&&(e=e.filter(e=>(e.name??``).toLowerCase().includes(o.search.toLowerCase()))),o.collectiblesOnly===!0&&(e=e.filter(e=>(e.rarity??`base`)!==`base`));let t=o.direction===`asc`?1:-1;o.orderBy===`name`?e.sort((e,n)=>t*(e.name??``).localeCompare(n.name??``)):o.orderBy===`rarity`&&e.sort((e,n)=>t*(Me.indexOf(e.rarity)-Me.indexOf(n.rarity)));let n=e.length,r=o.page*o.pageSize;c({kind:`catalogPage`,catalog:`wearables`,items:e.slice(r,r+o.pageSize),total:n,requestId:o.requestId});return}if(o.kind===`equip`){let e=new Set(o.urns);for(let t of A)t.equipped=e.has(t.urn);c({kind:`wearables`,equipped:Le()});return}if(o.kind===`getOutfits`){c({kind:`outfits`,metadata:a});return}if(o.kind===`saveOutfit`){a.outfits=a.outfits.filter(e=>e.slot!==o.slot),a.outfits.push({slot:o.slot,outfit:Fe(Le().map(e=>e.urn))}),a.outfits.sort((e,t)=>e.slot-t.slot),c({kind:`outfits`,metadata:a});return}if(o.kind===`deleteOutfit`){a.outfits=a.outfits.filter(e=>e.slot!==o.slot),c({kind:`outfits`,metadata:a});return}if(o.kind===`equipOutfit`){let e=a.outfits.find(e=>e.slot===o.slot);if(e){let t=new Set(e.outfit.wearables);for(let e of A)e.equipped=t.has(e.urn);c({kind:`wearables`,equipped:Le()})}return}if(o.kind===`setMic`){c({kind:`mic`,enabled:o.enabled,available:!0});return}if(o.kind===`getMap`){c({kind:`mapState`,x:0,y:0});return}if(o.kind!==`engineViewport`&&o.kind!==`previewAvatar`){if(o.kind===`teleport`){c({kind:`mapState`,x:o.x,y:o.y});return}if(o.kind!==`changeRealm`&&o.kind!==`permissionResolve`){if(o.kind===`getCommunities`){c({kind:`communities`,communities:k});return}if(o.kind===`createCommunity`){k.unshift({id:`new-${k.length}`,name:o.name,description:o.description,thumbnail:``,membersCount:1,role:`owner`,ownerName:`You`,privacy:o.privacy}),c({kind:`communities`,communities:k});return}if(o.kind===`joinCommunity`){let e=k.find(e=>e.id===o.id);e&&(e.role=`member`,e.membersCount+=1),c({kind:`communities`,communities:k});return}if(o.kind===`leaveCommunity`){let e=k.find(e=>e.id===o.id);e&&(e.role=`none`,e.membersCount=Math.max(0,e.membersCount-1)),c({kind:`communities`,communities:k});return}if(o.kind===`getCommunityDetail`){let e=[`DCLOfficial`,`KazeNoKai`,`METAWOLF`,`laurenmae`,`Eax`,`Thund`,`aixa`,`Kimbo`,`BayBackner`,`Rochyou`,`Soultasium`,`franfranfran`,`olavra`,`Meshroom`],t=e=>`0x${(e+1).toString(16).padStart(40,`0`)}`,n=1440*60*1e3;c({kind:`communityDetail`,id:o.id,members:e.map((e,n)=>({address:t(n),name:e,role:n===0?`owner`:n<3?`moderator`:`member`,picture:`https://i.pravatar.cc/80?u=${e}`,hasClaimedName:!0,isFriend:n%5==0})),posts:[{id:`p1`,author:`Kimbo`,authorAddress:t(7),authorPicture:`https://i.pravatar.cc/80?u=Kimbo`,text:`It was TIME for an update. See you all in the new Plaza. Enjoy!`,timestamp:Date.now()-2*n,likes:10},{id:`p2`,author:`Kimbo`,authorAddress:t(7),authorPicture:`https://i.pravatar.cc/80?u=Kimbo`,text:`EPIC Launch Party happening now in the theatre!`,timestamp:Date.now()-16*n,likes:4},{id:`p3`,author:`Kimbo`,authorAddress:t(7),authorPicture:`https://i.pravatar.cc/80?u=Kimbo`,text:`Hey everyone! Happy Epic and Mobile Launch Day!!! Please help us spread the word and get ready to celebrate together on April 2nd! It will be EPIC.`,timestamp:Date.now()-18*n,likes:1}],places:[{id:`pl1`,title:`Music Festival Main Stage`,thumbnail:`https://picsum.photos/seed/mfest/420/260`,positions:`-66,56`,likeRate:1}],photos:Array.from({length:9},(e,t)=>({id:`ph${t}`,url:`https://picsum.photos/seed/dclph${t}/600/600`,thumbnail:`https://picsum.photos/seed/dclph${t}/300/300`})),events:[{id:`e1`,name:`Watch scary movies with Cult Horror Club`,thumbnail:`https://picsum.photos/seed/horror1/200/120`,startsAt:Date.now()+1*n},{id:`e2`,name:`Pride Sound Set with Artist X`,thumbnail:`https://picsum.photos/seed/pride/200/120`,startsAt:Date.now()+1*n+360*60*1e3},{id:`e3`,name:`Join DEEJAY FAMILY at Takeover Tuesdays`,thumbnail:`https://picsum.photos/seed/takeover/200/120`,startsAt:Date.now()+4*n},{id:`e4`,name:`PRIDE: Join Watch Party Wednesdays`,thumbnail:`https://picsum.photos/seed/watch/200/120`,startsAt:Date.now()+5*n}]});return}if(o.kind===`getNotifications`){c({kind:`notifications`,notifications:r});return}if(o.kind===`markNotificationsRead`){for(let e of r)o.ids.includes(e.id)&&(e.read=!0);return}if(o.kind===`getGallery`){c({kind:`gallery`,photos:i,current:i.length,max:500});return}if(o.kind===`getGalleryPhoto`){c({kind:`galleryPhoto`,id:o.id,meta:{userName:t.hasPreviousLogin?`Mojito`:`Guest`,userAddress:t.userId,sceneName:`Genesis Plaza`,x:-9,y:14,realm:`main`,people:je.slice(0,3).map(e=>({address:e.address,name:e.name||`Guest`,isGuest:!1}))}});return}if(o.kind===`deleteGalleryPhoto`){let e=i.findIndex(e=>e.id===o.id);e>=0&&i.splice(e,1),c({kind:`gallery`,photos:i,current:i.length,max:500});return}if(o.kind===`getProfile`){c({kind:`profile`,profile:Ae(t.userId,t.hasPreviousLogin?`Mojito`:`Guest#beef`,!t.hasPreviousLogin)});return}if(o.kind===`getUserProfile`){let e=je.find(e=>e.address.toLowerCase()===o.address.toLowerCase())?.name||`${o.address.slice(0,6)}…${o.address.slice(-4)}`;c({kind:`userProfile`,address:o.address,profile:Ae(o.address,e,!1)});return}if(o.kind===`reloadScene`){c({kind:`chat`,chat:{sender:``,message:`Reloading the current scene…`,channel:`Nearby`}});return}if(o.kind===`consoleCommand`){c({kind:`chat`,chat:{sender:``,message:`Console commands: reload, help, show_ui, noclip, speed, jump`,channel:`Nearby`}});return}switch(o.method){case`getPreviousLogin`:c({kind:`rpc:res`,id:o.id,ok:!0,value:{userId:t.hasPreviousLogin?t.userId:null}});return;case`loginPrevious`:c({kind:`rpc:res`,id:o.id,ok:!0,value:{success:!0,error:``}}),d();return;case`loginGuest`:c({kind:`rpc:res`,id:o.id,ok:!0}),d();return;case`loginIdentity`:c({kind:`rpc:res`,id:o.id,ok:!0}),d();return;case`loginNew`:c({kind:`loginCode`,code:`42`}),l={id:o.id,timer:setTimeout(()=>{l=null,c({kind:`rpc:res`,id:o.id,ok:!0,value:{success:!0,error:``}}),d()},2500)};return;case`loginCancel`:case`logout`:l!=null&&(clearTimeout(l.timer),c({kind:`rpc:res`,id:l.id,ok:!0,value:{success:!1,error:`cancelled`}}),l=null),c({kind:`rpc:res`,id:o.id,ok:!0});return}}}}}},()=>{window.removeEventListener(`keydown`,u),o.close()}}var M=l(),N={root:`_root_byo9o_2`,tabs:`_tabs_byo9o_14`,tab:`_tab_byo9o_14`,tabActive:`_tabActive_byo9o_43`,close:`_close_byo9o_47`,searchRow:`_searchRow_byo9o_63`,searchIcon:`_searchIcon_byo9o_70`,search:`_search_byo9o_63`,body:`_body_byo9o_97`,sectionHeader:`_sectionHeader_byo9o_111`,grid:`_grid_byo9o_123`,emoji:`_emoji_byo9o_128`,noResults:`_noResults_byo9o_145`};function He({emojis:e,onPick:t}){return(0,M.jsx)(`div`,{className:N.grid,children:e.map(e=>(0,M.jsx)(`button`,{type:`button`,className:N.emoji,title:e.expression,onClick:()=>t(e),children:e.emoji},e.code))})}function Ue({onPick:e,onClose:t}){let[n,r]=(0,O.useState)(0),[i,a]=(0,O.useState)(``),[o,s]=(0,O.useState)(()=>ye()),c=t=>{e(t.emoji),s(ve(t.code))},l=i.trim(),u=(0,O.useMemo)(()=>l?xe(l,80):[],[l]),d=(0,O.useMemo)(()=>o.map(e=>Ce.get(e)).filter(e=>e!=null),[o]),f=be[n];return(0,M.jsxs)(`div`,{className:N.root,role:`dialog`,"aria-label":`Emoji picker`,children:[(0,M.jsxs)(`div`,{className:N.tabs,children:[be.map((e,t)=>(0,M.jsx)(`button`,{type:`button`,className:`${N.tab} ${t===n&&!l?N.tabActive:``}`.trim(),title:e.name,onClick:()=>{r(t),a(``)},children:e.icon},e.name)),(0,M.jsx)(`button`,{type:`button`,className:N.close,title:`Close`,onClick:t,children:`×`})]}),(0,M.jsxs)(`div`,{className:N.searchRow,children:[(0,M.jsx)(`span`,{className:N.searchIcon,"aria-hidden":`true`,children:`🔍`}),(0,M.jsx)(`input`,{className:N.search,value:i,onChange:e=>a(e.target.value),placeholder:`Search emoji`,onKeyDown:e=>e.stopPropagation()})]}),(0,M.jsx)(`div`,{className:N.body,children:l?u.length>0?(0,M.jsx)(He,{emojis:u,onPick:c}):(0,M.jsx)(`div`,{className:N.noResults,children:`No results`}):(0,M.jsxs)(M.Fragment,{children:[d.length>0&&(0,M.jsxs)(M.Fragment,{children:[(0,M.jsx)(`div`,{className:N.sectionHeader,children:`Frequently used`}),(0,M.jsx)(He,{emojis:d,onPick:c})]}),(0,M.jsx)(`div`,{className:N.sectionHeader,children:f.name}),(0,M.jsx)(He,{emojis:f.emojis,onPick:c})]})})]})}var We=/(?<url>https?:\/\/[^\s<>"']+)|(?<world>[a-z0-9][\w-]*\.(?:dcl\.)?eth\b)|(?<loc>-?\d{1,3}\s*,\s*-?\d{1,3})|(?<mention>@[\w-]+(?:#[\w]+)?)/gi;function Ge(e){let t=[],n=0;for(let r of e.matchAll(We)){let i=r.index??0;i>n&&t.push({type:`text`,value:e.slice(n,i)});let a=r.groups??{};if(a.url)t.push({type:`url`,value:a.url});else if(a.world)t.push({type:`world`,value:a.world});else if(a.loc){let[e,n]=a.loc.split(`,`).map(e=>parseInt(e.trim(),10));t.push({type:`location`,value:a.loc,x:e,y:n})}else if(a.mention){let[e,n]=a.mention.slice(1).split(`#`);t.push({type:`mention`,value:a.mention,name:e,tag:n})}n=i+r[0].length}return n<e.length&&t.push({type:`text`,value:e.slice(n)}),t}function Ke(e){let t=new Map;for(let n of e)n.name.trim()&&(t.set(n.name.toLowerCase(),n.address),t.set(n.name.split(`#`)[0].toLowerCase(),n.address));return t}function qe(e,t){return t.get(`${e.name}#${e.tag}`.toLowerCase())??t.get(e.name.toLowerCase())}function Je(e,t,n){if(!t)return!1;let r=t.name?.split(`#`)[0].toLowerCase();return Ge(e).some(e=>{if(e.type!==`mention`)return!1;let i=qe(e,n);return i&&t.address&&i.toLowerCase()===t.address.toLowerCase()||!!r&&e.name.toLowerCase()===r})}function Ye({text:e,members:t,styles:n,onMention:r,onLocation:i,onWorld:a}){let o=Ke(t);return(0,M.jsx)(M.Fragment,{children:Ge(e).map((e,t)=>{if(e.type===`url`)return(0,M.jsx)(`a`,{className:n.url,href:e.value,target:`_blank`,rel:`noreferrer noopener`,children:e.value},t);if(e.type===`world`)return a?(0,M.jsx)(`button`,{type:`button`,className:n.world,onClick:()=>a(e.value),children:e.value},t):(0,M.jsx)(`span`,{children:e.value},t);if(e.type===`location`)return(0,M.jsx)(`button`,{type:`button`,className:n.location,onClick:()=>i(e.x,e.y),children:e.value},t);if(e.type===`mention`){let i=qe(e,o);return i?(0,M.jsxs)(`button`,{type:`button`,className:n.mention,onClick:t=>r(i,e.name,t),onContextMenu:t=>r(i,e.name,t),children:[`@`,e.name]},t):(0,M.jsx)(`span`,{children:e.value},t)}return(0,M.jsx)(`span`,{children:e.value},t)})})}var P={root:`_root_1mxu6_4`,open:`_open_1mxu6_24`,active:`_active_1mxu6_31`,messages:`_messages_1mxu6_40`,nav:`_nav_1mxu6_45`,navLeft:`_navLeft_1mxu6_57`,channelIcon:`_channelIcon_1mxu6_64`,navTitle:`_navTitle_1mxu6_69`,navRight:`_navRight_1mxu6_76`,glyph:`_glyph_1mxu6_83`,glyphLg:`_glyphLg_1mxu6_86`,empty:`_empty_1mxu6_114`,dayRow:`_dayRow_1mxu6_121`,dayPill:`_dayPill_1mxu6_126`,entry:`_entry_1mxu6_137`,bubble:`_bubble_1mxu6_142`,name:`_name_1mxu6_152`,tag:`_tag_1mxu6_157`,text:`_text_1mxu6_161`,time:`_time_1mxu6_172`,pickerWrap:`_pickerWrap_1mxu6_179`,suggest:`_suggest_1mxu6_180`,suggestList:`_suggestList_1mxu6_194`,suggestItem:`_suggestItem_1mxu6_202`,suggestActive:`_suggestActive_1mxu6_218`,suggestGlyph:`_suggestGlyph_1mxu6_222`,suggestName:`_suggestName_1mxu6_226`,noResults:`_noResults_1mxu6_229`,inputRow:`_inputRow_1mxu6_238`,input:`_input_1mxu6_238`,inputBare:`_inputBare_1mxu6_267`,ring:`_ring_1mxu6_271`,emojiBtn:`_emojiBtn_1mxu6_280`,membersPanel:`_membersPanel_1mxu6_288`,membersHeader:`_membersHeader_1mxu6_296`,back:`_back_1mxu6_305`,membersTitle:`_membersTitle_1mxu6_322`,membersCount:`_membersCount_1mxu6_327`,personIcon:`_personIcon_1mxu6_336`,membersList:`_membersList_1mxu6_340`,memberRow:`_memberRow_1mxu6_353`,memberInfo:`_memberInfo_1mxu6_363`,memberName:`_memberName_1mxu6_369`,memberStatus:`_memberStatus_1mxu6_378`,avatarBtn:`_avatarBtn_1mxu6_398`,url:`_url_1mxu6_409`,location:`_location_1mxu6_417`,mention:`_mention_1mxu6_418`,world:`_world_1mxu6_419`,mentionMe:`_mentionMe_1mxu6_435`},Xe=500,Ze=/^0x[0-9a-fA-F]{6,}$/,Qe=[`#73d3d3`,`#acf8f8`,`#ff8362`,`#ff4bed`,`#caff73`,`#a14bf3`,`#e8b9ff`,`#fea217`,`#81e1ff`,`#ff7439`,`#ffa25a`,`#ffc95b`,`#a0abff`,`#c640cd`],$e=`#61d04f`;function et(e){return!e||e.toLowerCase()===`system`}function tt(e){return Ze.test(e)?`${e.slice(0,6)}…${e.slice(-4)}`:e}function nt(e){return et(e)?`DCL System`:tt(e)}function rt(e){return e.name.trim()?e.name:tt(e.address)}function it(e){let t=e.indexOf(`#`);return t>=0?{base:e.slice(0,t),tag:e.slice(t)}:{base:e,tag:``}}function at(e){let t=0;for(let n=0;n<e.length;n++)t=t*31+e.charCodeAt(n)>>>0;return t}function ot(e){return et(e)?$e:Qe[at(e)%Qe.length]}function st(e){return new Date(e).toLocaleTimeString([],{hour:`numeric`,minute:`2-digit`})}function ct(e){let t=new Date(e);return`${t.getFullYear()}-${t.getMonth()}-${t.getDate()}`}function lt(e){return ct(e)===ct(Date.now())?`Today`:new Date(e).toLocaleDateString([],{weekday:`short`,day:`numeric`,month:`short`})}function ut(){return(0,M.jsxs)(`svg`,{width:`15`,height:`15`,viewBox:`0 0 16 16`,fill:`none`,"aria-hidden":`true`,children:[(0,M.jsx)(`circle`,{cx:`8`,cy:`5`,r:`2.6`,stroke:`currentColor`,strokeWidth:`1.4`}),(0,M.jsx)(`path`,{d:`M3.2 13c0-2.4 2.1-3.8 4.8-3.8s4.8 1.4 4.8 3.8`,stroke:`currentColor`,strokeWidth:`1.4`,strokeLinecap:`round`})]})}function dt(){return(0,M.jsxs)(`svg`,{width:`20`,height:`20`,viewBox:`0 0 22 22`,fill:`none`,"aria-hidden":`true`,children:[(0,M.jsx)(`circle`,{cx:`11`,cy:`11`,r:`10`,stroke:`currentColor`,strokeWidth:`2`}),(0,M.jsx)(`circle`,{cx:`7.6`,cy:`9`,r:`1.15`,fill:`currentColor`}),(0,M.jsx)(`circle`,{cx:`14.4`,cy:`9`,r:`1.15`,fill:`currentColor`}),(0,M.jsx)(`path`,{d:`M7 13.4c1 1.6 2.5 2.4 4 2.4s3-.8 4-2.4`,stroke:`currentColor`,strokeWidth:`1.7`,strokeLinecap:`round`})]})}function ft({len:e}){let t=Math.min(1,e/Xe),n=2*Math.PI*8,r=t>=.9?`var(--brand)`:t>=.7?`var(--gold)`:`var(--green)`;return(0,M.jsxs)(`svg`,{className:P.ring,width:`20`,height:`20`,viewBox:`0 0 20 20`,"aria-hidden":`true`,children:[(0,M.jsx)(`circle`,{cx:`10`,cy:`10`,r:8,fill:`none`,stroke:`rgba(255,255,255,0.25)`,strokeWidth:`2`}),(0,M.jsx)(`circle`,{cx:`10`,cy:`10`,r:8,fill:`none`,stroke:r,strokeWidth:`2`,strokeLinecap:`round`,strokeDasharray:n,strokeDashoffset:n*(1-t),transform:`rotate(-90 10 10)`})]})}function pt({ts:e}){return(0,M.jsx)(`div`,{className:P.dayRow,children:(0,M.jsx)(`span`,{className:P.dayPill,children:lt(e)})})}var mt={url:P.url,mention:P.mention,location:P.location,world:P.world};function ht({line:e,name:t,picture:n,members:r=[],me:i,onOpenProfile:a,onLocation:o,onVisitWorld:s}){let c=ot(e.sender),{base:l,tag:u}=it(t),d={address:e.sender,name:t,picture:n},f=Je(e.message,i??null,Ke(r)),p=e=>{e.type===`contextmenu`&&e.preventDefault(),a?.(d,e)};return(0,M.jsxs)(`div`,{className:`${P.entry} ${f?P.mentionMe:``}`.trim(),children:[(0,M.jsx)(`button`,{type:`button`,className:P.avatarBtn,"aria-label":`View ${l}`,onClick:p,onContextMenu:p,children:(0,M.jsx)(g,{src:n,name:t,color:c,size:28})}),(0,M.jsxs)(`div`,{className:P.bubble,children:[(0,M.jsxs)(`button`,{type:`button`,className:P.name,style:{color:c},onClick:p,onContextMenu:p,children:[l,u&&(0,M.jsx)(`span`,{className:P.tag,children:u})]}),(0,M.jsx)(`span`,{className:P.text,children:(0,M.jsx)(Ye,{text:e.message,members:r,styles:mt,onMention:(e,t,n)=>{n.type===`contextmenu`&&n.preventDefault();let i=r.find(t=>t.address.toLowerCase()===e.toLowerCase());a?.({address:e,name:i?.name??`@${t}`,picture:i?.picture},n)},onLocation:(e,t)=>o?.(e,t),onWorld:s})}),(0,M.jsx)(`span`,{className:P.time,children:st(e.ts)})]})]})}function gt({member:e}){let{base:t,tag:n}=it(rt(e)),r=ot(e.address);return(0,M.jsxs)(`div`,{className:P.memberRow,children:[(0,M.jsx)(g,{src:e.picture,name:t,color:r,size:40,status:`online`}),(0,M.jsxs)(`div`,{className:P.memberInfo,children:[(0,M.jsxs)(`span`,{className:P.memberName,style:{color:r},children:[t,n&&(0,M.jsx)(`span`,{className:P.tag,children:n})]}),(0,M.jsx)(`span`,{className:P.memberStatus,children:`Online`})]})]})}function _t({members:e,onBack:t,onClose:n}){return(0,M.jsxs)(`div`,{className:P.membersPanel,children:[(0,M.jsxs)(`header`,{className:P.membersHeader,children:[(0,M.jsx)(r,{variant:`ghost`,className:P.glyphLg,"aria-label":`Back`,onClick:t,children:`‹`}),(0,M.jsx)(`span`,{className:P.membersTitle,children:`Nearby`}),(0,M.jsxs)(`span`,{className:P.membersCount,children:[(0,M.jsx)(`span`,{className:P.personIcon,"aria-hidden":`true`,children:`●`}),e.length,` Online`]}),(0,M.jsx)(r,{variant:`solid`,className:P.glyph,"aria-label":`Close chat`,onClick:n,children:`×`})]}),(0,M.jsx)(`div`,{className:P.membersList,children:e.length===0?(0,M.jsx)(`div`,{className:P.empty,children:`No one nearby`}):e.map(e=>(0,M.jsx)(gt,{member:e},e.address))})]})}function vt({chat:e,hidden:t=!1,me:n,onTeleport:i,onVisitWorld:a}){let[o,s]=(0,O.useState)(``),[c,l]=(0,O.useState)(!1),[u,d]=(0,O.useState)(!1),[f,p]=(0,O.useState)([]),[m,h]=(0,O.useState)(null),[te,ne]=(0,O.useState)(!1),[re,_]=(0,O.useState)(!1),[ie,v]=(0,O.useState)(null),[y,b]=(0,O.useState)([]),x=(0,O.useRef)(null),S=(0,O.useRef)(null),C=e.open,w=C&&(te||re||c),ae=!w,oe=(0,O.useMemo)(()=>{let t=new Map;for(let n of e.members)n.name.trim()&&t.set(n.address.toLowerCase(),n.name);return t},[e.members]),se=(0,O.useMemo)(()=>{let t=new Map;for(let n of e.members)n.picture&&t.set(n.address.toLowerCase(),n.picture);return t},[e.members]),ce=e=>oe.get(e.toLowerCase())??nt(e),ue=(0,O.useMemo)(()=>{let t=[],n=``;for(let r of e.messages){let e=ct(r.ts);e!==n&&(t.push({kind:`day`,ts:r.ts,id:`day-${e}`}),n=e),t.push({kind:`msg`,line:r})}return t},[e.messages]);(0,O.useEffect)(()=>{if(!C)return;let e=x.current;e&&(e.scrollTop=e.scrollHeight)},[C,w]);let de=(0,O.useRef)(!0);(0,O.useEffect)(()=>{let e=x.current;if(!e)return;let t=()=>{de.current=e.scrollHeight-e.scrollTop-e.clientHeight<80};return e.addEventListener(`scroll`,t),()=>e.removeEventListener(`scroll`,t)},[C]),(0,O.useEffect)(()=>{if(!C)return;let e=x.current;e&&de.current&&(e.scrollTop=e.scrollHeight)},[e.messages,C]),(0,O.useEffect)(()=>{C&&S.current?.focus()},[C,e.focusTick]),(0,O.useEffect)(()=>{w||d(!1)},[w]);let fe=()=>{e.open||e.toggle()},pe=(e,t)=>{le(e.address,t.clientX,t.clientY)},me=e=>{s(t=>`${t.replace(/\s*$/,``)} @${e} `.trimStart()),fe(),S.current?.focus()};(0,O.useEffect)(()=>{e.pendingMention&&(me(e.pendingMention),e.consumeMention())},[e.pendingMention]);let he=/@([\w-]*)$/,ge=t=>{s(t);let n=t.match(Se);h(n?n[1]:null),p(n?xe(n[1]):[]);let r=t.match(he);v(r?r[1]:null);let i=(r?.[1]??``).toLowerCase();b(r?e.members.filter(e=>(e.name||e.address).toLowerCase().includes(i)).slice(0,6):[])},T=e=>{let t=e.name.trim()?e.name.split(`#`)[0]:e.address;s(e=>e.replace(he,`@${t} `)),b([]),v(null),S.current?.focus()},E=e=>{s(t=>{let n=t.match(Se);return(n?t.slice(0,n.index):t)+e}),p([]),h(null),S.current?.focus()},D=()=>{o.trim()&&(e.send(o),s(``),p([]),h(null),b([]),v(null))};return t?null:(0,M.jsxs)(`div`,{className:`${P.root} ${C?P.open:``} ${w?P.active:``}`.trim(),onMouseEnter:()=>ne(!0),onMouseLeave:()=>ne(!1),children:[C&&w&&(0,M.jsxs)(`header`,{className:P.nav,children:[(0,M.jsxs)(`div`,{className:P.navLeft,children:[(0,M.jsx)(ee,{size:26,className:P.channelIcon}),(0,M.jsx)(`span`,{className:P.navTitle,children:`Nearby`})]}),(0,M.jsxs)(`div`,{className:P.navRight,children:[e.members.length>0&&(0,M.jsxs)(r,{variant:`ghost`,shape:`pill`,active:u,"aria-label":`${e.members.length} nearby`,onClick:()=>d(e=>!e),children:[(0,M.jsx)(ut,{}),e.members.length]}),(0,M.jsx)(r,{variant:`solid`,className:P.glyph,"aria-label":`Close chat`,onClick:e.toggle,children:`×`})]})]}),C&&(0,M.jsx)(`div`,{ref:x,className:P.messages,children:ue.length===0?(0,M.jsx)(`div`,{className:P.empty,children:`No messages yet`}):ue.map(t=>t.kind===`day`?(0,M.jsx)(pt,{ts:t.ts},t.id):(0,M.jsx)(ht,{line:t.line,name:ce(t.line.sender),picture:se.get(t.line.sender.toLowerCase()),members:e.members,me:n,onOpenProfile:pe,onLocation:(e,t)=>i?.(e,t),onVisitWorld:a},t.line.id))}),w&&c&&(0,M.jsx)(`div`,{className:P.pickerWrap,children:(0,M.jsx)(Ue,{onPick:E,onClose:()=>l(!1)})}),w&&ie!=null&&y.length>0&&(0,M.jsx)(`div`,{className:P.suggest,children:(0,M.jsx)(`ul`,{className:P.suggestList,children:y.map((e,t)=>(0,M.jsx)(`li`,{children:(0,M.jsxs)(`button`,{type:`button`,className:`${P.suggestItem} ${t===0?P.suggestActive:``}`.trim(),onClick:()=>T(e),children:[(0,M.jsx)(g,{src:e.picture,name:e.name,color:ot(e.address),size:20}),(0,M.jsx)(`span`,{className:P.suggestName,children:e.name||tt(e.address)})]})},e.address))})}),w&&m!=null&&(0,M.jsx)(`div`,{className:P.suggest,children:f.length===0?(0,M.jsx)(`div`,{className:P.noResults,children:`No results`}):(0,M.jsx)(`ul`,{className:P.suggestList,children:f.map((e,t)=>(0,M.jsx)(`li`,{children:(0,M.jsxs)(`button`,{type:`button`,className:`${P.suggestItem} ${t===0?P.suggestActive:``}`.trim(),onClick:()=>E(e.emoji),children:[(0,M.jsx)(`span`,{className:P.suggestGlyph,children:e.emoji}),(0,M.jsx)(`span`,{className:P.suggestName,children:e.expression})]})},e.code))})}),(0,M.jsxs)(`form`,{className:P.inputRow,onSubmit:e=>{e.preventDefault(),D()},children:[(0,M.jsx)(`input`,{ref:S,className:`${P.input} ${ae?P.inputBare:``}`.trim(),value:o,onChange:e=>ge(e.target.value),onFocus:()=>{_(!0),fe()},onBlur:()=>_(!1),placeholder:re?`Message Nearby`:`Press Enter to chat`,maxLength:Xe,onKeyDown:e=>{e.stopPropagation(),e.key===`Enter`?(e.preventDefault(),y.length>0?T(y[0]):f.length>0?E(f[0].emoji):D()):e.key===`Escape`&&(ie==null?m==null?c?l(!1):S.current?.blur():(h(null),p([])):(v(null),b([])))}}),!ae&&o.length>0&&(0,M.jsx)(ft,{len:o.length}),!ae&&(0,M.jsx)(r,{variant:`ghost`,size:`sm`,active:c,className:P.emojiBtn,"aria-label":`Emoji`,onClick:()=>{fe(),l(e=>!e)},children:(0,M.jsx)(dt,{})})]}),C&&w&&u&&(0,M.jsx)(_t,{members:e.members,onBack:()=>d(!1),onClose:()=>{d(!1),e.toggle()}})]})}var F={root:`_root_hrk0u_5`,tabs:`_tabs_hrk0u_25`,tab:`_tab_hrk0u_25`,tabActive:`_tabActive_hrk0u_55`,tabBadge:`_tabBadge_hrk0u_59`,closeGlyph:`_closeGlyph_hrk0u_72`,body:`_body_hrk0u_77`,sectionHead:`_sectionHead_hrk0u_92`,chev:`_chev_hrk0u_108`,chevOpen:`_chevOpen_hrk0u_113`,row:`_row_hrk0u_117`,info:`_info_hrk0u_127`,name:`_name_hrk0u_134`,verified:`_verified_hrk0u_146`,tag:`_tag_hrk0u_151`,status:`_status_hrk0u_155`,online:`_online_hrk0u_160`,sub:`_sub_hrk0u_163`,date:`_date_hrk0u_173`,actions:`_actions_hrk0u_178`,empty:`_empty_hrk0u_190`,placeholder:`_placeholder_hrk0u_197`,phIcon:`_phIcon_hrk0u_205`,phTitle:`_phTitle_hrk0u_216`,phText:`_phText_hrk0u_221`,rowBtn:`_rowBtn_hrk0u_229`};function I(e,t){return e.trim()?e:T(t)}function yt(e){return e.trim().length>0&&!e.includes(`#`)&&!/^0x[0-9a-f]+$/i.test(e)}function bt(){return(0,M.jsxs)(`svg`,{className:F.verified,viewBox:`0 0 16 16`,"aria-label":`verified`,children:[(0,M.jsx)(`defs`,{children:(0,M.jsxs)(`linearGradient`,{id:`vrf`,x1:`0`,y1:`0`,x2:`0`,y2:`1`,children:[(0,M.jsx)(`stop`,{offset:`0`,stopColor:`#ff2d55`}),(0,M.jsx)(`stop`,{offset:`1`,stopColor:`#c640cd`})]})}),(0,M.jsx)(`path`,{d:`M8 1l1.7 1.2 2.1-.2 1 1.8 1.9.9-.5 2 .9 1.9-1.6 1.4.1 2.1-2 .6-1.1 1.8-2-.7-2 .7-1.1-1.8-2-.6.1-2.1L1.6 8.6l.9-1.9-.5-2 1.9-.9 1-1.8 2.1.2z`,fill:`url(#vrf)`}),(0,M.jsx)(`path`,{d:`M5.5 8l1.7 1.7L10.8 6`,stroke:`#fff`,strokeWidth:`1.4`,fill:`none`,strokeLinecap:`round`,strokeLinejoin:`round`})]})}function xt({name:e,address:t}){let{base:n,tag:r}=_e(I(e,t));return(0,M.jsxs)(`span`,{className:F.name,style:{color:y(t)},children:[n,yt(e)&&(0,M.jsx)(bt,{}),r&&(0,M.jsx)(`span`,{className:F.tag,children:r})]})}function St({open:e}){return(0,M.jsx)(`svg`,{className:`${F.chev} ${e?F.chevOpen:``}`.trim(),viewBox:`0 0 12 12`,"aria-hidden":`true`,children:(0,M.jsx)(`path`,{d:`M2.5 7.5L6 4l3.5 3.5`,stroke:`currentColor`,strokeWidth:`1.6`,fill:`none`,strokeLinecap:`round`,strokeLinejoin:`round`})})}function L({title:e,count:t,children:n}){let[r,i]=(0,O.useState)(!0);return(0,M.jsxs)(M.Fragment,{children:[(0,M.jsxs)(`button`,{type:`button`,className:F.sectionHead,onClick:()=>i(e=>!e),children:[(0,M.jsx)(St,{open:r}),e,` (`,t,`)`]}),r&&n]})}var Ct={online:`Online`,away:`Away`,offline:`Offline`};function wt({friend:e,onOpen:t}){let n={address:e.address,name:e.name,picture:e.picture},r=e=>{e.type===`contextmenu`&&e.preventDefault(),t?.(n,e)};return(0,M.jsxs)(`button`,{type:`button`,className:`${F.row} ${F.rowBtn}`,onClick:r,onContextMenu:r,children:[(0,M.jsx)(g,{src:e.picture,name:I(e.name,e.address),color:y(e.address),size:40,status:e.status}),(0,M.jsxs)(`div`,{className:F.info,children:[(0,M.jsx)(xt,{name:e.name,address:e.address}),(0,M.jsx)(`span`,{className:`${F.status} ${F[e.status]}`,children:Ct[e.status]})]})]})}function Tt(e){return e?new Date(e).toLocaleDateString([],{month:`short`,day:`numeric`}).toUpperCase():``}function Et({req:t,onAccept:n,onReject:r}){return(0,M.jsxs)(`div`,{className:F.row,children:[(0,M.jsx)(g,{src:t.picture,name:I(t.name,t.address),color:y(t.address),size:40}),(0,M.jsxs)(`div`,{className:F.info,children:[(0,M.jsx)(xt,{name:t.name,address:t.address}),t.message&&(0,M.jsx)(`span`,{className:F.sub,children:t.message})]}),(0,M.jsx)(`span`,{className:F.date,children:Tt(t.createdAt)}),(0,M.jsxs)(`div`,{className:F.actions,children:[(0,M.jsx)(e,{variant:`secondary`,size:`sm`,onClick:r,children:`Delete`}),(0,M.jsx)(e,{variant:`primary`,size:`sm`,onClick:n,children:`Accept`})]})]})}function Dt({req:t,onCancel:n}){return(0,M.jsxs)(`div`,{className:F.row,children:[(0,M.jsx)(g,{src:t.picture,name:I(t.name,t.address),color:y(t.address),size:40}),(0,M.jsxs)(`div`,{className:F.info,children:[(0,M.jsx)(xt,{name:t.name,address:t.address}),(0,M.jsx)(`span`,{className:F.sub,children:`Request sent`})]}),(0,M.jsx)(`span`,{className:F.date,children:Tt(t.createdAt)}),(0,M.jsx)(`div`,{className:F.actions,children:(0,M.jsx)(e,{variant:`secondary`,size:`sm`,onClick:n,children:`Cancel`})})]})}function Ot({friends:t}){let[n,i]=(0,O.useState)(`friends`),a=(e,t)=>le(e.address,t.clientX,t.clientY),{online:o,offline:s}=(0,O.useMemo)(()=>{let e=[],n=[];for(let r of[...t.list].sort((e,t)=>e.name.localeCompare(t.name)))(r.status===`offline`?n:e).push(r);return{online:e,offline:n}},[t.list]);if(!t.open)return null;let c=[{id:`friends`,label:`Friends`},{id:`requests`,label:`Requests`,badge:t.received.length},{id:`blocked`,label:`Blocked`}];return(0,M.jsxs)(`div`,{className:F.root,children:[(0,M.jsxs)(`header`,{className:F.tabs,children:[c.map(e=>(0,M.jsxs)(`button`,{type:`button`,className:`${F.tab} ${n===e.id?F.tabActive:``}`.trim(),onClick:()=>i(e.id),children:[e.label,e.badge?(0,M.jsx)(`span`,{className:F.tabBadge,children:e.badge}):null]},e.id)),(0,M.jsx)(r,{variant:`solid`,className:F.closeGlyph,"aria-label":`Close friends`,onClick:t.toggle,children:`×`})]}),(0,M.jsx)(`div`,{className:F.body,children:t.available?n===`friends`?t.list.length===0?(0,M.jsx)(`div`,{className:F.empty,children:`No friends yet.`}):(0,M.jsxs)(M.Fragment,{children:[(0,M.jsx)(L,{title:`Online`,count:o.length,children:o.map(e=>(0,M.jsx)(wt,{friend:e,onOpen:a},e.address))}),(0,M.jsx)(L,{title:`Offline`,count:s.length,children:s.map(e=>(0,M.jsx)(wt,{friend:e,onOpen:a},e.address))})]}):n===`requests`?(0,M.jsxs)(M.Fragment,{children:[(0,M.jsx)(L,{title:`Received`,count:t.received.length,children:t.received.length===0?(0,M.jsx)(`div`,{className:F.empty,children:`No Requests`}):t.received.map(e=>(0,M.jsx)(Et,{req:e,onAccept:()=>t.act(`accept`,e.address),onReject:()=>t.act(`reject`,e.address)},e.id))}),(0,M.jsx)(L,{title:`Sent`,count:t.sent.length,children:t.sent.length===0?(0,M.jsx)(`div`,{className:F.empty,children:`No Requests`}):t.sent.map(e=>(0,M.jsx)(Dt,{req:e,onCancel:()=>t.act(`cancel`,e.address)},e.id))})]}):t.blocked.length===0?(0,M.jsxs)(`div`,{className:F.placeholder,children:[(0,M.jsx)(`div`,{className:F.phIcon,"aria-hidden":`true`,children:`⊘`}),(0,M.jsx)(`div`,{className:F.phTitle,children:`No Blocked Accounts`}),(0,M.jsx)(`div`,{className:F.phText,children:`If you block someone, you won’t see each other in-world or exchange messages, and their name and messages are hidden in public chats.`})]}):t.blocked.map(n=>(0,M.jsxs)(`div`,{className:F.row,children:[(0,M.jsx)(g,{name:T(n),color:y(n),size:40}),(0,M.jsx)(`div`,{className:F.info,children:(0,M.jsx)(`span`,{className:F.name,children:T(n)})}),(0,M.jsx)(`div`,{className:F.actions,children:(0,M.jsx)(e,{variant:`secondary`,size:`sm`,onClick:()=>t.act(`unblock`,n),children:`Unblock`})})]},n)):(0,M.jsxs)(`div`,{className:F.placeholder,children:[(0,M.jsx)(`div`,{className:F.phTitle,children:`Friends aren’t available`}),(0,M.jsx)(`div`,{className:F.phText,children:`Sign in with a wallet to add and manage friends.`})]})})]})}var R={head:`_head_1bdpk_2`,title:`_title_1bdpk_8`,tabs:`_tabs_1bdpk_14`,tab:`_tab_1bdpk_14`,tabActive:`_tabActive_1bdpk_34`,reset:`_reset_1bdpk_41`,card:`_card_1bdpk_61`,grid:`_grid_1bdpk_68`,field:`_field_1bdpk_75`,fieldHead:`_fieldHead_1bdpk_80`,label:`_label_1bdpk_86`,value:`_value_1bdpk_91`,empty:`_empty_1bdpk_97`};function kt(e){return e.replace(/[_-]+/g,` `).replace(/\b\w/g,e=>e.toUpperCase())}function At(e){return e.namedVariants.length===2||e.namedVariants.length===0&&e.maxValue-e.minValue<=1&&e.stepSize>=1}function jt(e){return!At(e)&&e.namedVariants.length<=2}function Mt({s:e,onSet:n}){return At(e)?(0,M.jsx)(o,{checked:e.value>=1,onChange:t=>n(e.name,+!!t),"aria-label":e.name}):e.namedVariants.length>2?(0,M.jsx)(t,{variant:`light`,value:String(e.value),options:e.namedVariants.map((e,t)=>({value:String(t),label:e.name})),onChange:t=>n(e.name,Number(t)),"aria-label":e.name}):(0,M.jsx)(h,{arrows:!0,value:e.value,min:e.minValue,max:e.maxValue,step:e.stepSize||1,onChange:t=>n(e.name,t),"aria-label":e.name})}var Nt=(0,O.memo)(function({s:e,onSet:t}){return(0,M.jsxs)(`div`,{className:R.field,children:[(0,M.jsxs)(`div`,{className:R.fieldHead,children:[(0,M.jsx)(`span`,{className:R.label,children:kt(e.name)}),jt(e)&&(0,M.jsx)(`span`,{className:R.value,children:e.value})]}),(0,M.jsx)(Mt,{s:e,onSet:t})]})},(e,t)=>e.s.name===t.s.name&&e.s.value===t.s.value&&e.onSet===t.onSet);function Pt({settings:e,profile:t,onNavigate:n}){let r=(0,O.useMemo)(()=>[...new Set(e.list.map(e=>e.category))],[e.list]),[i,a]=(0,O.useState)(null);if(!e.open)return null;let o=i&&r.includes(i)?i:r[0],s=e.list.filter(e=>e.category===o),c=()=>s.forEach(t=>e.set(t.name,t.default)),l=t.data;return(0,M.jsxs)(fe,{active:`settings`,profileName:l?.name,profilePicture:l?.picture,profileAddress:l?.address,profileClaimed:l?.hasClaimedName,onNavigate:n,onClose:e.toggle,children:[(0,M.jsxs)(`div`,{className:R.head,children:[(0,M.jsx)(`h1`,{className:R.title,children:`Settings`}),(0,M.jsx)(`div`,{className:R.tabs,children:r.map(e=>(0,M.jsx)(`button`,{type:`button`,className:`${R.tab} ${e===o?R.tabActive:``}`.trim(),onClick:()=>a(e),children:kt(e)},e))}),(0,M.jsx)(`button`,{type:`button`,className:R.reset,onClick:c,children:`↺ Reset all defaults`})]}),(0,M.jsx)(`div`,{className:R.card,children:s.length===0?(0,M.jsx)(`div`,{className:R.empty,children:`No settings available.`}):(0,M.jsx)(`div`,{className:R.grid,children:s.map(t=>(0,M.jsx)(Nt,{s:t,onSet:e.set},t.name))})})]})}var z={root:`_root_fhnuh_2`,head:`_head_fhnuh_21`,title:`_title_fhnuh_30`,closeGlyph:`_closeGlyph_fhnuh_35`,body:`_body_fhnuh_39`,name:`_name_fhnuh_48`,tag:`_tag_fhnuh_58`,addr:`_addr_fhnuh_62`,guest:`_guest_fhnuh_67`,desc:`_desc_fhnuh_75`,links:`_links_fhnuh_81`,link:`_link_fhnuh_81`,empty:`_empty_fhnuh_101`};function Ft({profile:e}){if(!e.open)return null;let t=e.data,{base:n,tag:i}=_e(t?t.name.trim()?t.name:T(t.address):``),a=t?y(t.address):`var(--fill-4)`;return(0,M.jsxs)(`div`,{className:z.root,children:[(0,M.jsxs)(`header`,{className:z.head,children:[(0,M.jsx)(`span`,{className:z.title,children:`Profile`}),(0,M.jsx)(r,{variant:`solid`,className:z.closeGlyph,"aria-label":`Close profile`,onClick:e.toggle,children:`×`})]}),t?(0,M.jsxs)(`div`,{className:z.body,children:[(0,M.jsx)(g,{src:t.picture,name:n,color:a,size:88,status:`online`}),(0,M.jsxs)(`div`,{className:z.name,style:{color:a},children:[n,i&&(0,M.jsx)(`span`,{className:z.tag,children:i})]}),(0,M.jsx)(`div`,{className:z.addr,children:T(t.address)}),t.isGuest&&(0,M.jsx)(`span`,{className:z.guest,children:`Guest`}),t.description&&(0,M.jsx)(`p`,{className:z.desc,children:t.description}),t.links&&t.links.length>0&&(0,M.jsx)(`div`,{className:z.links,children:t.links.map(e=>(0,M.jsx)(`a`,{className:z.link,href:e.url,target:`_blank`,rel:`noreferrer`,children:e.title},e.url))})]}):(0,M.jsx)(`div`,{className:z.empty,children:`Profile unavailable.`})]})}var B={root:`_root_8hwrw_2`,head:`_head_8hwrw_21`,heading:`_heading_8hwrw_30`,markRead:`_markRead_8hwrw_36`,closeGlyph:`_closeGlyph_8hwrw_48`,body:`_body_8hwrw_52`,row:`_row_8hwrw_66`,unread:`_unread_8hwrw_77`,thumb:`_thumb_8hwrw_81`,img:`_img_8hwrw_92`,dot:`_dot_8hwrw_97`,info:`_info_8hwrw_104`,title:`_title_8hwrw_111`,bodyText:`_bodyText_8hwrw_120`,time:`_time_8hwrw_130`,unreadDot:`_unreadDot_8hwrw_136`,empty:`_empty_8hwrw_146`};function It(e){return e.replace(/[_-]+/g,` `).replace(/\b\w/g,e=>e.toUpperCase())}function V(e,...t){for(let n of t){let t=e[n];if(typeof t==`string`&&t)return t}}function Lt(e,t,...n){let r=e[t];if(r&&typeof r==`object`)return V(r,...n)}function Rt(e){let t=new Date(e).getTime();if(Number.isNaN(t))return``;let n=Math.floor((Date.now()-t)/6e4);if(n<1)return`now`;if(n<60)return`${n}m`;let r=Math.floor(n/60);if(r<24)return`${r}h`;let i=Math.floor(r/24);return i<7?`${i}d`:new Date(t).toLocaleDateString([],{month:`short`,day:`numeric`})}function zt(e){return V(e,`image`,`thumbnail`,`thumbnailUrl`,`tokenImage`,`profileImageUrl`)??Lt(e,`sender`,`profileImageUrl`,`image`)}var Bt={social_service_friendship_request:`wants to be your friend!`,social_service_friendship_accepted:`accepted your friend request.`},H=e=>V(e,`communityName`)??`a community`,Vt={community_post_added:e=>({title:`New Community Announcement`,body:`A new announcement was posted in ${H(e)}.`}),community_invite_received:e=>({title:`Community Invite Received`,body:`You've been invited to join ${H(e)}.`}),community_voice_chat_started:e=>({title:`Community Voice Stream Started`,body:`${H(e)} is streaming — click to join.`}),community_renamed:e=>({title:`Community Renamed`,body:`${V(e,`oldName`)??`A community`} was renamed to ${V(e,`newName`)??H(e)}.`}),community_request_to_join_received:e=>({title:`Membership Request Received`,body:`${V(e,`userName`,`memberName`)??`Someone`} wants to join ${H(e)}.`}),community_request_to_join_accepted:e=>({title:`Membership Request Accepted`,body:`You're now a member of ${H(e)}.`}),community_deleted:e=>({title:`Community Deleted`,body:`${H(e)} has been deleted.`}),community_deleted_content_violation:e=>({title:`Community Deleted`,body:`${H(e)} was deleted for a content violation.`}),community_member_banned:e=>({title:`Banned from Community`,body:`You've been banned from ${H(e)}.`}),community_member_removed:e=>({title:`Removed from Community`,body:`You've been removed from ${H(e)}.`}),community_ownership_transferred:e=>({title:`Community Ownership Transferred`,body:`You're now the owner of ${H(e)}.`}),credits_reminder_claim_credits:()=>({title:`Marketplace Credits`,body:`You have Credits waiting to be claimed.`}),credits_reminder_complete_goals:()=>({title:`Marketplace Credits`,body:`Complete your goals to earn Credits.`}),credits_reminder_usage:()=>({title:`Marketplace Credits`,body:`Don't forget to use your Credits.`}),credits_reminder_usage_24_hours:()=>({title:`Marketplace Credits`,body:`Your Credits expire soon — use them now.`}),credits_reminder_do_not_miss_out:()=>({title:`Marketplace Credits`,body:`Don't miss out on your Credits.`}),credits_new_season_reminder:()=>({title:`New Credits Season`,body:`A new Marketplace Credits season has started.`})};function Ht(e){let t=e.metadata,n=zt(t);if(Bt[e.type])return{title:Lt(t,`sender`,`name`)??V(t,`title`)??`Someone`,body:Bt[e.type],image:n};let r=V(t,`title`);if(r!=null)return{title:r,body:V(t,`description`,`message`),image:n};let i=Vt[e.type];return i?{...i(t),image:n}:{title:It(e.type),body:V(t,`description`,`message`,`name`),image:n}}function Ut({n:e}){let{title:t,body:n,image:r}=Ht(e);return(0,M.jsxs)(`div`,{className:`${B.row} ${e.read?``:B.unread}`.trim(),children:[(0,M.jsx)(`div`,{className:B.thumb,children:r?(0,M.jsx)(`img`,{className:B.img,src:r,alt:``}):(0,M.jsx)(`span`,{className:B.dot})}),(0,M.jsxs)(`div`,{className:B.info,children:[(0,M.jsx)(`span`,{className:B.title,children:t}),n&&(0,M.jsx)(`span`,{className:B.bodyText,children:n})]}),(0,M.jsx)(`span`,{className:B.time,children:Rt(e.timestamp)}),!e.read&&(0,M.jsx)(`span`,{className:B.unreadDot,"aria-label":`unread`})]})}function Wt({notifications:e}){return e.open?(0,M.jsxs)(`div`,{className:B.root,children:[(0,M.jsxs)(`header`,{className:B.head,children:[(0,M.jsx)(`span`,{className:B.heading,children:`Notifications`}),e.unread>0&&(0,M.jsx)(`button`,{type:`button`,className:B.markRead,onClick:e.markAllRead,children:`Mark all read`}),(0,M.jsx)(r,{variant:`solid`,className:B.closeGlyph,"aria-label":`Close notifications`,onClick:e.toggle,children:`×`})]}),(0,M.jsx)(`div`,{className:B.body,children:e.list.length===0?(0,M.jsx)(`div`,{className:B.empty,children:`You’re all caught up.`}):e.list.map(e=>(0,M.jsx)(Ut,{n:e},e.id))})]}):null}var Gt={slot:`_slot_10ky5_2`,bg:`_bg_10ky5_6`,num:`_num_10ky5_15`},Kt=182,qt=168,Jt=92,Yt=74,Xt={base:{flap:`#A09BA8`,glows:[{c:`#CFCDD4`,cx:156.62,cy:134.02,r:123.28,b:53.79},{c:`#FCFCFC`,cx:33.93,cy:.93,r:121.93,b:53.79,o:.8}]},common:{flap:`#73D3D3`,glows:[{c:`#73D3D3`,cx:137,cy:115,r:119,b:89.96},{c:`#B5FFF6`,cx:44,cy:32,r:68,b:50}]},uncommon:{flap:`#FF8362`,glows:[{c:`#FF8362`,cx:137,cy:115,r:119,b:81.65},{c:`#FFE0B2`,cx:29.47,cy:18.47,r:77.47,b:50}]},rare:{flap:`#34CE76`,glows:[{c:`#34CE76`,cx:137,cy:115,r:106,b:53.79},{c:`#73FFAF`,cx:32.48,cy:19.06,r:77.47,b:50}]},epic:{flap:`#438FFF`,glows:[{c:`#5C9EFF`,cx:136,cy:102,r:102,b:53.79},{c:`#4DEAFF`,cx:12.47,cy:21.47,r:77.47,b:50}]},legendary:{flap:`#A14BF3`,glows:[{c:`#B66CFF`,cx:121,cy:112,r:83,b:41.72},{c:`#E579FB`,cx:12.47,cy:21.47,r:77.47,b:50}]},mythic:{flap:`#FF4BED`,glows:[{c:`#FF4BED`,cx:121,cy:112,r:83,b:53.79},{c:`#FFA6C1`,cx:12.47,cy:21.47,r:77.47,b:53.79}]},exotic:{flap:`#9CD71E`,glows:[{c:`#CAFF73`,cx:121,cy:112,r:116,b:74.89},{c:`#CAFF73`,cx:12.47,cy:21.47,r:77.47,b:58.66}]},unique:{flap:`#FEA217`,glows:[{c:`#FFDD2C`,cx:70,cy:157,r:91,b:53.79},{c:`#FFAB2C`,cx:132.9,cy:39.9,r:53.9,b:53.79}]}},Zt=`M14.8164 12.709C64.4508 -0.703243 116.612 -1.5304 166.64 10.3027C176.559 12.6489 182.063 22.9775 179.27 32.6738L145.125 151.212C142.308 160.99 132.238 166.37 122.526 164.608C103.049 161.075 83.0735 161.392 63.7158 165.54C54.0636 167.609 43.8302 162.551 40.71 152.865L2.89062 35.4668C-0.202676 25.8636 4.97707 15.368 14.8164 12.709Z`,Qt=`M4.79456 34.854C2.02502 26.2568 6.68143 16.9787 15.3385 14.6393C64.652 1.31383 116.475 0.492713 166.179 12.2493C174.905 14.3132 179.848 23.4393 177.348 32.12L143.203 150.658C140.703 159.339 131.704 164.24 122.883 162.64C103.149 159.061 82.9097 159.381 63.2967 163.584C54.53 165.463 45.3831 160.849 42.6136 152.252L4.79456 34.854Z`,$t=`M47.9447 7.70117C43.9328 8.34457 40.4114 10.7359 38.638 14.3936L17.1322 58.75C15.343 62.4402 15.0466 66.6786 16.304 70.582L4.79428 34.8545C2.02478 26.2574 6.68134 16.9791 15.3382 14.6396C26.1034 11.7307 36.9885 9.41758 47.9447 7.70117Z`,en=`M17.1325 58.7501C15.3433 62.4403 15.047 66.6787 16.3044 70.5822L13.1836 60.8956L33.8238 24.3209L17.1325 58.7501Z`,tn=`M11.0036 21.9181C10.6762 22.1695 10.615 22.639 10.867 22.9659L15.3604 26.5831L17.129 28.6697L15.533 31.4881L15.1114 35.3803C15.162 35.8414 15.6155 36.1457 16.0614 36.0179C16.4192 35.9153 16.6472 35.5652 16.5963 35.1964L17.0108 31.9443L19.1989 28.861L20.0563 33.9719C20.1331 34.4298 20.5915 34.7189 21.0379 34.5909C21.4127 34.4834 21.65 34.1151 21.5929 33.7294L20.6933 27.6476L19.6397 25.3561L21.2475 20.6279C21.4369 20.0711 20.9223 19.5309 20.357 19.6931C20.1239 19.7599 19.9394 19.9382 19.8647 20.1689L19.0229 22.5681C18.7079 23.4659 17.9771 24.1553 17.0625 24.4176C16.1661 24.6746 15.2008 24.4903 14.4621 23.921L12.0623 22.0715C11.8154 21.7316 11.3368 21.6622 11.0036 21.9181Z`;function nn({thumbnail:e,rarity:t=`base`,number:n,width:r=174,rotate:i=0}){let a=(0,O.useId)().replace(/:/g,``),o=e,s=Xt[t]??Xt.base,c=i?`rotate(${-i} ${Jt} ${Yt})`:void 0,l={fontSize:Math.round(r*.19),transform:`translateX(-50%)${i?` rotate(${-i}deg)`:``}`};return(0,M.jsxs)(`div`,{className:Gt.slot,style:{width:r,height:r*qt/Kt,transform:i?`rotate(${i}deg)`:void 0},children:[(0,M.jsxs)(`svg`,{className:Gt.bg,viewBox:`0 0 ${Kt} ${qt}`,preserveAspectRatio:`none`,children:[(0,M.jsxs)(`defs`,{children:[s.glows.map((e,t)=>(0,M.jsx)(`filter`,{id:`blur-${a}-${t}`,x:`-120`,y:`-120`,width:`420`,height:`420`,filterUnits:`userSpaceOnUse`,colorInterpolationFilters:`sRGB`,children:(0,M.jsx)(`feGaussianBlur`,{stdDeviation:e.b})},t)),(0,M.jsx)(`clipPath`,{id:`clip-${a}`,children:(0,M.jsx)(`path`,{d:Qt})})]}),(0,M.jsx)(`path`,{d:Qt,fill:`#691FA9`}),(0,M.jsxs)(`g`,{clipPath:`url(#clip-${a})`,children:[s.glows.map((e,t)=>(0,M.jsx)(`circle`,{cx:e.cx,cy:e.cy,r:e.r,fill:e.c,opacity:e.o??1,filter:`url(#blur-${a}-${t})`},t)),o&&(0,M.jsx)(`g`,{transform:c,children:(0,M.jsx)(`image`,{href:o,x:`37.9961`,y:`20`,width:`108`,height:`108`,preserveAspectRatio:`none`})}),(0,M.jsx)(`path`,{d:$t,fill:s.flap}),(0,M.jsx)(`path`,{d:en,fill:`black`,fillOpacity:`0.1`}),(0,M.jsx)(`path`,{d:tn,fill:`#FCFCFC`}),(0,M.jsx)(`circle`,{cx:`16.2543`,cy:`21.5305`,r:`1.87704`,transform:`rotate(-16 16.2543 21.5305)`,fill:`#FCFCFC`})]}),(0,M.jsx)(`path`,{d:Zt,fill:`none`,stroke:`#f1eff5`,strokeWidth:`4`})]}),n!=null&&(0,M.jsx)(`span`,{className:Gt.num,style:l,children:n})]})}var U={backdrop:`_backdrop_okd42_2`,wheel:`_wheel_okd42_12`,slotPos:`_slotPos_okd42_21`,slotHover:`_slotHover_okd42_27`,slotEmpty:`_slotEmpty_okd42_32`,center:`_center_okd42_38`,hoverName:`_hoverName_okd42_49`,title:`_title_okd42_55`,customise:`_customise_okd42_60`,hint:`_hint_okd42_77`,close:`_close_okd42_83`},rn=215,an=152,on=112;function sn({emotes:e,onCustomise:t}){let[n,r]=(0,O.useState)(null);if((0,O.useEffect)(()=>{if(!e.open||t==null)return;let n=e=>{(e.key===`e`||e.key===`E`)&&(e.preventDefault(),t())};return window.addEventListener(`keydown`,n),()=>window.removeEventListener(`keydown`,n)},[e.open,t]),!e.open)return null;let i=Array.from({length:10},(t,n)=>{let r=(n+1)%10;return{k:n,num:r,deg:-90+n*36,emote:e.list.find(e=>e.slot===r)??null}}),a=n==null?null:e.list.find(e=>e.slot===n);return(0,M.jsx)(`div`,{className:U.backdrop,onClick:e.toggle,children:(0,M.jsxs)(`div`,{className:U.wheel,onClick:e=>e.stopPropagation(),children:[(0,M.jsx)(`button`,{type:`button`,className:U.close,"aria-label":`Close emotes`,onClick:e.toggle,children:`×`}),i.map(({num:t,deg:i,emote:a})=>{let o=i*Math.PI/180,s=rn+an*Math.cos(o),c=rn+an*Math.sin(o);return(0,M.jsx)(`div`,{role:`button`,"aria-label":`Emote slot ${t}${a?`: ${a.name}`:``}`,className:`${U.slotPos} ${n===t?U.slotHover:``} ${a?``:U.slotEmpty}`.trim(),style:{left:`${s}px`,top:`${c}px`},onMouseEnter:()=>a&&r(t),onMouseLeave:()=>r(e=>e===t?null:e),onClick:()=>a&&e.play(a.urn),children:(0,M.jsx)(nn,{thumbnail:a?ae(a.urn):void 0,rarity:a?.rarity??`base`,number:t,rotate:i+90,width:on})},t)}),(0,M.jsxs)(`div`,{className:U.center,children:[(0,M.jsx)(`div`,{className:U.hoverName,children:a?.name??` `}),(0,M.jsx)(`div`,{className:U.title,children:`EMOTES`}),(0,M.jsx)(`button`,{type:`button`,className:U.customise,onClick:t,children:`Customise [E]`}),(0,M.jsx)(`div`,{className:U.hint,children:`Press [B+num] to run an emote`})]})]})})}var cn={root:`_root_2zlqk_5`,group:`_group_2zlqk_27`,divider:`_divider_2zlqk_35`},ln=[{kind:`profile`,icon:`profile`,label:`Profile`},{kind:`notifications`,icon:`notifications`,label:`Notifications`},{kind:`map`,icon:`map`,label:`Map`,shortcut:`M`},{kind:`places`,icon:`places`,label:`Places`,shortcut:`Z`},{kind:`communities`,icon:`communities`,label:`Communities`,shortcut:`O`},{kind:`backpack`,icon:`backpack`,label:`Backpack`,shortcut:`I`},{kind:`gallery`,icon:`gallery`,label:`Gallery`,shortcut:`G`},{kind:`settings`,icon:`settings`,label:`Settings`,shortcut:`P`},{kind:`divider`},{kind:`help`,icon:`help`,label:`Help & Support`}],un=[{kind:`mic`,icon:`mic`,label:`Voice chat`},{kind:`emotes`,icon:`emotes`,label:`Emotes`,shortcut:`B`},{kind:`divider`},{kind:`friends`,icon:`friends`,label:`Friends`,shortcut:`L`},{kind:`chat`,icon:`chat`,label:`Chat`,shortcut:`T`}];function dn(e,t,r,i){return e.kind===`divider`?(0,M.jsx)(`div`,{className:cn.divider},`d${t}`):e.kind===`chat`?(0,M.jsx)(n,{icon:e.icon,label:e.label,shortcut:e.shortcut,badge:r.chat.unread,active:r.chat.open,onClick:r.chat.toggle},`chat`):e.kind===`friends`?(0,M.jsx)(n,{icon:e.icon,label:e.label,shortcut:e.shortcut,badge:r.friends.received.length,active:r.friends.open,onClick:r.friends.toggle},`friends`):e.kind===`settings`?(0,M.jsx)(n,{icon:e.icon,label:e.label,shortcut:e.shortcut,active:r.settings.open,onClick:r.settings.toggle},`settings`):e.kind===`profile`?(0,M.jsx)(n,{icon:e.icon,label:e.label,active:r.profile.open,onClick:i??r.profile.toggle},`profile`):e.kind===`backpack`?(0,M.jsx)(n,{icon:e.icon,label:e.label,shortcut:e.shortcut,active:r.backpack.open,onClick:r.backpack.toggle},`backpack`):e.kind===`communities`?(0,M.jsx)(n,{icon:e.icon,label:e.label,shortcut:e.shortcut,active:r.communities.open,onClick:r.communities.toggle},`communities`):e.kind===`map`?(0,M.jsx)(n,{icon:e.icon,label:e.label,shortcut:e.shortcut,active:r.map.open,onClick:r.map.toggle},`map`):e.kind===`places`?(0,M.jsx)(n,{icon:e.icon,label:e.label,shortcut:e.shortcut,active:r.places.open,onClick:r.places.toggle},`places`):e.kind===`gallery`?(0,M.jsx)(n,{icon:e.icon,label:e.label,shortcut:e.shortcut,active:r.gallery.open,onClick:r.gallery.toggle},`gallery`):e.kind===`notifications`?(0,M.jsx)(n,{icon:e.icon,label:e.label,badge:r.notifications.unread,active:r.notifications.open,onClick:r.notifications.toggle},`notifications`):e.kind===`emotes`?(0,M.jsx)(n,{icon:e.icon,label:e.label,shortcut:e.shortcut,active:r.emotes.open,onClick:r.emotes.toggle},`emotes`):e.kind===`mic`?(0,M.jsx)(n,{icon:e.icon,label:e.label,active:r.mic.enabled,onClick:r.mic.toggle},`mic`):e.kind===`help`?(0,M.jsx)(n,{icon:e.icon,label:e.label,onClick:()=>window.open(`https://decentraland.org/help/`,`_blank`,`noopener`)},`help`):(0,M.jsx)(n,{icon:e.icon,label:e.label,shortcut:e.shortcut,onClick:()=>r.nav(e.action)},e.action)}function fn({session:e,onViewProfile:t}){return(0,M.jsxs)(`nav`,{className:cn.root,"aria-label":`Main navigation`,children:[(0,M.jsx)(`div`,{className:cn.group,children:ln.map((n,r)=>dn(n,r,e,t))}),(0,M.jsx)(`div`,{className:cn.group,children:un.map((n,r)=>dn(n,r,e,t))})]})}var W={root:`_root_1pc98_1`,reticle:`_reticle_1pc98_13`,reticleActive:`_reticleActive_1pc98_38`,hints:`_hints_1pc98_45`,hintsRadial:`_hintsRadial_1pc98_60`,hint:`_hint_1pc98_45`,hintReverse:`_hintReverse_1pc98_79`,hintDisabled:`_hintDisabled_1pc98_83`,hintText:`_hintText_1pc98_86`,mouse:`_mouse_1pc98_89`,cap:`_cap_1pc98_93`,proxTip:`_proxTip_1pc98_109`},pn=0,mn={1:`E`,2:`F`,4:`W`,5:`S`,6:`D`,7:`A`,8:`Space`,9:`Shift`,10:`1`,11:`2`,12:`3`,13:`4`};function hn(){return(0,M.jsxs)(`svg`,{className:W.mouse,width:`22`,height:`22`,viewBox:`0 0 24 24`,fill:`none`,"aria-hidden":`true`,children:[(0,M.jsx)(`path`,{fillRule:`evenodd`,clipRule:`evenodd`,d:`M11.6746 11.8961V2.99524C11.6746 2.99524 4.33789 2.98667 4.33789 11.8961H11.6746Z`,fill:`#FF7439`}),(0,M.jsx)(`rect`,{x:`4.50781`,y:`2.99524`,width:`15`,height:`20`,rx:`7.5`,stroke:`#ECEBED`,strokeWidth:`2`}),(0,M.jsx)(`path`,{d:`M4.33789 11.9952H18.9999`,stroke:`#ECEBED`}),(0,M.jsx)(`path`,{d:`M7.20715 0.590018C4.26466 1.54992 2.11196 4.23323 1.19016 6.9471`,stroke:`#ECEBED`,strokeLinecap:`round`})]})}function gn({button:e}){return e===pn?(0,M.jsx)(hn,{}):(0,M.jsx)(`span`,{className:W.cap,children:mn[e]??`?`})}var _n=14,vn=34,yn=[{x:_n,y:0,side:`r`},{x:-14,y:0,side:`l`},{x:0,y:-2*vn,side:`t`},{x:_n,y:vn,side:`r`},{x:-14,y:vn,side:`l`},{x:_n,y:-34,side:`r`},{x:-14,y:-34,side:`l`}];function bn(e){return e.side===`t`?{position:`absolute`,left:e.x,top:e.y,transform:`translate(-50%, -50%)`}:e.side===`l`?{position:`absolute`,left:e.x,top:e.y,transform:`translate(-100%, -50%)`}:{position:`absolute`,left:e.x,top:e.y,transform:`translateY(-50%)`}}var xn={camera:{Icon:p,text:`Get camera closer`},player:{Icon:f,text:`Get player closer`}};function Sn({action:e,slot:t}){let n=t?.side===`l`,r=e.enabled?null:xn[e.tooFarReason??`camera`];return(0,M.jsxs)(`div`,{className:`${W.hint}${n?` ${W.hintReverse}`:``}${e.enabled?``:` ${W.hintDisabled}`}`,style:t?bn(t):void 0,children:[r?(0,M.jsx)(`span`,{className:W.mouse,"data-testid":`too-far-icon-${e.tooFarReason??`camera`}`,children:(0,M.jsx)(r.Icon,{size:22})}):(0,M.jsx)(gn,{button:e.button}),(0,M.jsx)(`span`,{className:W.hintText,children:e.enabled?e.text:r?.text})]})}function Cn({hover:e,locked:t,proximity:n}){let r=(0,O.useSyncExternalStore)(b,pe),[i,a]=(0,O.useState)(!1);(0,O.useEffect)(()=>{let e=()=>a(document.pointerLockElement!=null);return e(),document.addEventListener(`pointerlockchange`,e),()=>document.removeEventListener(`pointerlockchange`,e)},[]);let o=t||i,s=e.length>0;return(0,O.useEffect)(()=>(se(s&&!o),()=>se(!1)),[s,o]),!o&&!s&&n.length===0?null:(0,M.jsxs)(`div`,{className:W.root,"aria-hidden":`true`,children:[o&&(0,M.jsx)(`div`,{"data-testid":`reticle`,className:`${W.reticle}${s?` ${W.reticleActive}`:``}`}),s&&(o?(0,M.jsx)(`div`,{className:W.hints,children:e.map((e,t)=>(0,M.jsx)(Sn,{action:e},t))}):(0,M.jsx)(`div`,{className:W.hintsRadial,style:{left:r.x,top:r.y},children:e.slice(0,yn.length).map((e,t)=>(0,M.jsx)(Sn,{action:e,slot:yn[t]},t))})),n.map(e=>(0,M.jsx)(`div`,{"data-testid":`proxtip-${e.id}`,className:W.proxTip,style:{left:`${e.x}px`,top:`${e.y}px`},children:e.actions.map((e,t)=>(0,M.jsxs)(`div`,{className:W.hint,children:[(0,M.jsx)(gn,{button:e.button}),(0,M.jsx)(`span`,{className:W.hintText,children:e.text})]},t))},e.id))]})}var wn=i(),G={scrim:`_scrim_1ixs8_3`,modal:`_modal_1ixs8_14`,icon:`_icon_1ixs8_28`,prompt:`_prompt_1ixs8_38`,scene:`_scene_1ixs8_44`,additional:`_additional_1ixs8_47`,options:`_options_1ixs8_52`,option:`_option_1ixs8_52`,radio:`_radio_1ixs8_74`,radioOn:`_radioOn_1ixs8_87`,radioDot:`_radioDot_1ixs8_90`,input:`_input_1ixs8_97`,actions:`_actions_1ixs8_103`,deny:`_deny_1ixs8_109`},Tn={MovePlayer:`move your avatar within the scene bounds`,ForceCamera:`temporarily change the camera view`,PlayEmote:`make your avatar perform an emote`,SetLocomotion:`temporarily modify your avatar's locomotion settings`,HideAvatarsNametags:`temporarily hide player avatars and/or nametags, and/or disables passports`,DisableVoice:`temporarily disable voice chat`,Teleport:`teleport you to a new location`,ChangeRealm:`move you to a new realm`,SpawnPortable:`spawn a portable experience`,KillPortables:`manage your active portable experiences`,Web3:`initiate a web3 transaction with your wallet`,CopyToClipboard:`copy text into the clipboard`,Fetch:`fetch data from a remote server`,Websocket:`open a web socket to communicate with a remote server`,OpenUrl:`open a url in your browser`},En=[{value:`once`,label:`Once`},{value:`scene`,label:`Always for Scene`},{value:`realm`,label:`Always for Realm`},{value:`global`,label:`Always for Global`}];function Dn(){return(0,M.jsxs)(`svg`,{width:`26`,height:`26`,viewBox:`0 0 24 24`,"aria-hidden":`true`,fill:`none`,children:[(0,M.jsx)(`rect`,{x:`4`,y:`10`,width:`16`,height:`11`,rx:`2`,fill:`currentColor`}),(0,M.jsx)(`path`,{d:`M8 10V7a4 4 0 0 1 8 0v3`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`})]})}function On({request:t,onResolve:n}){let[r,i]=(0,O.useState)(`once`),a=Tn[t.ty]??`perform a restricted action`;return(0,O.useEffect)(()=>{let e=e=>{e.key===`Escape`&&(e.preventDefault(),n(!1,`once`))};return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[n]),(0,wn.createPortal)((0,M.jsx)(`div`,{className:G.scrim,onClick:()=>n(!1,`once`),children:(0,M.jsxs)(`div`,{className:G.modal,role:`alertdialog`,"aria-modal":`true`,"aria-label":`Scene permission request`,onClick:e=>e.stopPropagation(),children:[(0,M.jsx)(`span`,{className:G.icon,children:(0,M.jsx)(Dn,{})}),(0,M.jsxs)(`div`,{className:G.prompt,children:[`The scene `,(0,M.jsx)(`span`,{className:G.scene,children:t.sceneName||`A scene`}),` wants permission to `,a]}),t.additional?(0,M.jsx)(`div`,{className:G.additional,children:t.additional}):null,(0,M.jsx)(`div`,{className:G.options,role:`radiogroup`,"aria-label":`Apply this decision`,children:En.map(e=>(0,M.jsxs)(`label`,{className:G.option,children:[(0,M.jsx)(`input`,{className:G.input,type:`radio`,name:`permission-level`,checked:r===e.value,onChange:()=>i(e.value)}),(0,M.jsx)(`span`,{className:`${G.radio} ${r===e.value?G.radioOn:``}`.trim(),children:r===e.value?(0,M.jsx)(`span`,{className:G.radioDot}):null}),e.label]},e.value))}),(0,M.jsxs)(`div`,{className:G.actions,children:[(0,M.jsx)(e,{variant:`primary`,onClick:()=>n(!0,r),children:`Allow`}),(0,M.jsx)(e,{variant:`ghost`,className:G.deny,onClick:()=>n(!1,r),children:`Deny`})]})]})}),document.body)}function kn(e){let[t,n]=(0,O.useState)({page:0,engine:null,ms:0});return(0,O.useEffect)(()=>{if(!e)return;let t=0,r=0,i=0,a=null,o,s=performance.now(),c=s,l=0,u=()=>{let e=window;e===a||typeof e.__engineHeartbeat!=`function`||(o=e.__engineHeartbeat,e.__engineHeartbeat=function(...e){return i++,o?.apply(this,e)},a=e)},d=e=>{if(r++,l+=e-c,c=e,u(),e-s>=500){let t=(e-s)/1e3;n({page:Math.round(r/t),engine:typeof window.__nativeEngineFps==`number`?Math.round(window.__nativeEngineFps):a?Math.round(i/t):null,ms:Number((l/r).toFixed(1))}),r=0,i=0,l=0,s=e}t=requestAnimationFrame(d)};return t=requestAnimationFrame(d),()=>{cancelAnimationFrame(t),a&&o&&(a.__engineHeartbeat=o)}},[e]),t}var K={meter:`_meter_77eb9_1`,fps:`_fps_77eb9_21`,unit:`_unit_77eb9_25`,dim:`_dim_77eb9_31`,engine:`_engine_77eb9_34`,good:`_good_77eb9_39`,warn:`_warn_77eb9_42`,bad:`_bad_77eb9_45`};function An(){let{page:e,engine:t,ms:n}=kn(!0),r=e>=55?K.good:e>=30?K.warn:K.bad;return(0,M.jsxs)(`div`,{className:K.meter,"aria-hidden":`true`,children:[(0,M.jsxs)(`span`,{className:`${K.fps} ${r}`,children:[e,(0,M.jsx)(`span`,{className:K.unit,children:`fps`})]}),(0,M.jsxs)(`span`,{className:K.dim,children:[n,`ms`]}),t!=null&&(0,M.jsxs)(`span`,{className:K.dim,children:[`engine `,(0,M.jsx)(`b`,{className:K.engine,children:t})]})]})}var q={root:`_root_1m58s_1`,"fade-in":`_fade-in_1m58s_1`,leaving:`_leaving_1m58s_13`,"fade-out":`_fade-out_1m58s_1`,watermark:`_watermark_1m58s_18`,loading:`_loading_1m58s_38`,spinnerLogo:`_spinnerLogo_1m58s_44`,pulse:`_pulse_1m58s_1`,panel:`_panel_1m58s_52`,logo:`_logo_1m58s_60`,title:`_title_1m58s_66`,subtitle:`_subtitle_1m58s_75`,account:`_account_1m58s_83`,error:`_error_1m58s_90`,buttons:`_buttons_1m58s_96`,cta:`_cta_1m58s_105`,ctaSecondary:`_ctaSecondary_1m58s_106`,authHint:`_authHint_1m58s_135`,authCode:`_authCode_1m58s_142`,resetBox:`_resetBox_1m58s_151`,resetText:`_resetText_1m58s_160`,ctaDanger:`_ctaDanger_1m58s_167`,label:`_label_1m58s_173`,arrow:`_arrow_1m58s_181`,bootBar:`_bootBar_1m58s_188`,bootLabel:`_bootLabel_1m58s_198`,bootTrack:`_bootTrack_1m58s_205`,bootFill:`_bootFill_1m58s_212`,avatarWrap:`_avatarWrap_1m58s_220`,disc:`_disc_1m58s_233`,glow:`_glow_1m58s_249`,"glow-pulse":`_glow-pulse_1m58s_1`,avatar:`_avatar_1m58s_220`,"avatar-in":`_avatar-in_1m58s_1`,"avatar-float":`_avatar-float_1m58s_1`},jn={download:`Downloading engine`,compile:`Compiling`,init:`Initializing`,workers:`Starting workers`,gpu:`Preparing graphics`};function Mn({flow:e}){if(e.engineReady)return null;let t=(e.loadStep==null?void 0:jn[e.loadStep])??`Starting…`,n=Math.round(e.loadProgress);return(0,M.jsxs)(`div`,{className:q.bootBar,role:`progressbar`,"aria-valuenow":n,"aria-valuemin":0,"aria-valuemax":100,"aria-label":t,children:[(0,M.jsxs)(`div`,{className:q.bootLabel,children:[t,` · `,n,`%`]}),(0,M.jsx)(`div`,{className:q.bootTrack,children:(0,M.jsx)(`div`,{className:q.bootFill,style:{width:`${n}%`}})})]})}function Nn(e){return e.loadStep===`download`?`DOWNLOADING… ${Math.round(e.loadProgress)}%`:`STARTING…`}function Pn(){return(0,M.jsx)(`span`,{className:q.arrow,"aria-hidden":`true`,children:(0,M.jsxs)(`svg`,{viewBox:`0 0 28 28`,width:`22`,height:`22`,children:[(0,M.jsx)(`circle`,{cx:`14`,cy:`14`,r:`14`,fill:`#fff`}),(0,M.jsx)(`path`,{d:`M12.5 9l5 5-5 5M9 14h8`,stroke:`var(--brand)`,strokeWidth:`2.4`,fill:`none`,strokeLinecap:`round`,strokeLinejoin:`round`})]})})}function Fn(e){let[t,n]=(0,O.useState)({});return(0,O.useEffect)(()=>{if(e==null||e===``){n({});return}let t=!1;return fetch(`https://peer.decentraland.org/lambdas/profiles/${e}`).then(e=>e.json()).then(e=>{let r=e.avatars?.[0];t||n({name:r?.name,body:r?.avatar?.snapshots?.body})}).catch(()=>void 0),()=>{t=!0}},[e]),t}function In({body:e}){let[t,n]=(0,O.useState)(!1);return t?null:(0,M.jsxs)(`div`,{className:q.avatarWrap,children:[(0,M.jsx)(`div`,{className:q.disc}),(0,M.jsx)(`div`,{className:q.glow}),(0,M.jsx)(`img`,{className:q.avatar,src:e,alt:``,draggable:!1,onError:()=>n(!0)})]})}var Ln={"sign-in-or-guest":{title:`Discover a virtual social world`,subtitle:`shaped by its community of
|
|
5
|
-
creators & explorers.`},"reuse-login-or-new":{title:`Welcome back!`,subtitle:`Ready to explore?`}};function Rn({flow:e}){(0,O.useEffect)(()=>{S()},[]);let t=e.status===`reuse-login-or-new`,n=Fn(t&&e.account!=null?e.account:void 0);return(0,M.jsx)(`div`,{className:q.root,children:e.status===`loading`?(0,M.jsx)(`div`,{className:q.loading,children:(0,M.jsx)(`div`,{className:q.spinnerLogo})}):(0,M.jsxs)(M.Fragment,{children:[(0,M.jsx)(`div`,{className:q.watermark}),(0,M.jsx)(zn,{flow:e,name:n.name}),t&&n.body!=null&&(0,M.jsx)(In,{body:n.body}),(0,M.jsx)(Mn,{flow:e})]})})}function zn({flow:t,name:n}){let r=t.status,i=Ln[r],a=r===`reuse-login-or-new`&&n!=null&&n!==``?`Welcome back ${n}`:i.title,o=!t.engineReady;return(0,M.jsxs)(`div`,{className:q.panel,children:[(0,M.jsx)(`div`,{className:q.logo}),(0,M.jsx)(`h1`,{className:q.title,children:a}),i.subtitle&&(0,M.jsx)(`p`,{className:q.subtitle,children:i.subtitle}),t.error&&(0,M.jsx)(`p`,{className:q.error,children:t.error}),(0,M.jsxs)(`div`,{className:q.buttons,children:[t.authPending&&(0,M.jsxs)(M.Fragment,{children:[(0,M.jsx)(`p`,{className:q.authHint,children:t.authCode==null?`Opening the sign-in page in your browser…`:`Verify this code matches the one in the browser window we just opened:`}),t.authCode!=null&&(0,M.jsx)(`div`,{className:q.authCode,children:t.authCode}),(0,M.jsx)(e,{variant:`secondary`,size:`lg`,className:q.ctaSecondary,onClick:t.cancelLogin,children:(0,M.jsx)(`span`,{className:q.label,children:`CANCEL`})})]}),r===`sign-in-or-guest`&&!t.authPending&&(0,M.jsxs)(M.Fragment,{children:[(0,M.jsxs)(e,{variant:`primary`,size:`lg`,className:q.cta,onClick:t.startWithAccount,disabled:t.busy,children:[(0,M.jsx)(`span`,{className:q.label,children:`START WITH ACCOUNT`}),(0,M.jsx)(Pn,{})]}),(0,M.jsx)(e,{variant:`secondary`,size:`lg`,className:q.ctaSecondary,onClick:t.exploreAsGuest,disabled:t.busy||o,children:(0,M.jsx)(`span`,{className:q.label,children:o?Nn(t):`EXPLORE AS GUEST`})})]}),r===`reuse-login-or-new`&&(0,M.jsxs)(M.Fragment,{children:[(0,M.jsxs)(e,{variant:`primary`,size:`lg`,className:q.cta,onClick:t.jumpIn,disabled:t.busy||o,children:[(0,M.jsx)(`span`,{className:q.label,children:o?Nn(t):t.profileFetchFailed?`TRY AGAIN`:`JUMP INTO DECENTRALAND`}),!o&&(0,M.jsx)(Pn,{})]}),(0,M.jsx)(e,{variant:`secondary`,size:`lg`,className:q.ctaSecondary,onClick:t.useDifferentAccount,disabled:t.busy,children:(0,M.jsx)(`span`,{className:q.label,children:`USE A DIFFERENT ACCOUNT`})}),t.profileFetchFailed&&(0,M.jsxs)(`div`,{className:q.resetBox,children:[(0,M.jsx)(`p`,{className:q.resetText,children:`If the problem persists you can continue with a fresh default profile. This permanently replaces your account's current avatar and profile.`}),(0,M.jsx)(e,{variant:`secondary`,size:`lg`,className:`${q.ctaSecondary} ${q.ctaDanger}`,onClick:t.resetProfileAndJumpIn,disabled:t.busy||o,children:(0,M.jsx)(`span`,{className:q.label,children:`RESET PROFILE & JUMP IN`})})]})]})]})]})}var J={root:`_root_1vhw7_1`,"fade-in":`_fade-in_1vhw7_1`,logo:`_logo_1vhw7_24`,title:`_title_1vhw7_30`,subtitle:`_subtitle_1vhw7_36`,track:`_track_1vhw7_44`,fill:`_fill_1vhw7_52`,indeterminate:`_indeterminate_1vhw7_59`,slide:`_slide_1vhw7_1`};function Bn({scene:e}){let t=(0,O.useRef)(0),n=e?.pendingAssets??null;n!=null&&n>t.current&&(t.current=n);let r=e!=null&&!e.realmConnected,i=n!=null&&t.current>0,a=i?1-n/t.current:0,o=r?`Reconnecting…`:e?.title?e.title:`Entering Decentraland`,s=r?`Reconnecting to the realm`:n!=null&&n>0?`Loading scene assets · ${n} remaining`:`Preparing your surroundings`;return(0,M.jsxs)(`div`,{className:J.root,children:[(0,M.jsx)(`div`,{className:J.logo}),(0,M.jsx)(`h2`,{className:J.title,children:o}),(0,M.jsx)(`p`,{className:J.subtitle,children:s}),(0,M.jsx)(`div`,{className:J.track,children:(0,M.jsx)(`div`,{className:`${J.fill}${i?``:` `+J.indeterminate}`,style:i?{width:`${Math.round(a*100)}%`}:void 0})})]})}function Vn({onStay:t,onLeave:n}){return(0,M.jsx)(m,{title:`Leave Decentraland?`,onClose:t,closeButton:!1,dismissOnScrim:!1,width:420,actions:(0,M.jsxs)(M.Fragment,{children:[(0,M.jsx)(e,{variant:`ghost`,onClick:t,children:`Stay`}),(0,M.jsx)(e,{variant:`primary`,onClick:n,children:`Leave`})]}),actionsEqual:!0,children:`You're about to exit the world and go back. You'll have to reconnect to return.`})}function Hn(e){let[t,n]=(0,O.useState)(!1),r=(0,O.useRef)(!1);return(0,O.useEffect)(()=>{if(!e)return;r.current=!1;let t=e=>{r.current||(e.preventDefault(),e.returnValue=``)},i=()=>{r.current||(window.history.pushState(null,``,window.location.href),n(!0))};return window.history.pushState(null,``,window.location.href),window.addEventListener(`beforeunload`,t),window.addEventListener(`popstate`,i),()=>{window.removeEventListener(`beforeunload`,t),window.removeEventListener(`popstate`,i)}},[e]),{confirming:t,stay:()=>n(!1),leave:()=>{n(!1),r.current=!0,window.history.go(-2)}}}var Un=1080,Wn=.6,Gn=1.3,Kn=new URLSearchParams(location.search).get(`native`)===`1`;function qn(){(0,O.useEffect)(()=>{let e=-1,t=()=>{let t=window.__nativeUiHeight,n=typeof t==`number`&&t>0?t:window.innerHeight,r=Math.min(Gn,Math.max(Wn,n/Un));r!==e&&(e=r,document.documentElement.style.setProperty(`--ui-scale`,r.toFixed(3)))};t(),window.addEventListener(`resize`,t);let n=Kn?window.setInterval(t,500):0;return()=>{window.removeEventListener(`resize`,t),n&&window.clearInterval(n)}},[])}function Jn(e,t){let n=(0,O.useRef)(e),r=(0,O.useRef)(t);n.current=e,r.current=t,(0,O.useEffect)(()=>{let e=e=>{n.current(e)&&(e.preventDefault(),r.current())};return window.addEventListener(`keydown`,e,!0),()=>window.removeEventListener(`keydown`,e,!0)},[])}var Yn={m:e=>e.map.toggle,z:e=>e.places.toggle,o:e=>e.communities.toggle,i:e=>e.backpack.toggle,g:e=>e.gallery.toggle,p:e=>e.settings.toggle,b:e=>e.emotes.toggle,l:e=>e.friends.toggle,t:e=>e.chat.toggle,enter:e=>e.chat.requestFocus};function Xn(e){let t=(0,O.useRef)(e);t.current=e,(0,O.useEffect)(()=>{let e=e=>{if(e.ctrlKey||e.metaKey||e.altKey||e.repeat)return;let n=e.target,r=n?.tagName;if(r===`INPUT`||r===`TEXTAREA`||n?.isContentEditable||window.__engineTextFocus)return;let i=t.current;if(i.phase!==`world`)return;if(i.emotes.open&&/^[0-9]$/.test(e.key)){e.preventDefault(),e.stopPropagation();let t=i.emotes.list.find(t=>t.slot===Number(e.key));t&&i.emotes.play(t.urn);return}let a=Yn[e.key.toLowerCase()];a&&(e.preventDefault(),e.stopPropagation(),a(i)())};return window.addEventListener(`keydown`,e,!0),()=>window.removeEventListener(`keydown`,e,!0)},[])}var Zn=/Android|iPhone|iPad|iPod|webOS|BlackBerry|Opera Mini|IEMobile|Windows Phone/i;function Qn(){return/Macintosh/.test(navigator.userAgent)&&navigator.maxTouchPoints>1}function $n(){return typeof navigator>`u`?!1:Zn.test(navigator.userAgent)||Qn()}function er(){return typeof navigator>`u`?!0:/Chrome\//.test(navigator.userAgent)}function tr(){return typeof document>`u`?!1:document.cookie.split(`;`).some(e=>e.trim().startsWith(`bypass_browser_check=`))}function nr(){let e=navigator.userAgent;return/iPad|iPhone|iPod/.test(e)||Qn()?`ios`:/Android/i.test(e)?`android`:`other`}var rr=5e3;async function ir(){let e=navigator.gpu;if(e==null)return!1;let t;try{let n=await Promise.race([e.requestAdapter(),new Promise(e=>{t=setTimeout(()=>e(`timeout`),rr)})]);return n===`timeout`?!0:n!=null}catch{return!1}finally{t!=null&&clearTimeout(t)}}var Y={root:`_root_3vjgt_1`,card:`_card_3vjgt_13`,logo:`_logo_3vjgt_21`,title:`_title_3vjgt_26`,subtitle:`_subtitle_3vjgt_32`,buttons:`_buttons_3vjgt_38`,store:`_store_3vjgt_45`,steps:`_steps_3vjgt_66`,stepHint:`_stepHint_3vjgt_76`,flag:`_flag_3vjgt_82`,flagText:`_flagText_3vjgt_91`,copy:`_copy_3vjgt_102`,tryAnyway:`_tryAnyway_3vjgt_121`},ar=`https://testflight.apple.com/join/KF4r3jlU`,or=`https://play.google.com/store/apps/details?id=org.decentraland.godotexplorer`,sr=`https://www.google.com/chrome/`;function cr(){return(0,M.jsx)(`svg`,{viewBox:`0 0 24 24`,fill:`currentColor`,"aria-hidden":`true`,children:(0,M.jsx)(`path`,{d:`M18.71 19.5c-.83 1.24-1.71 2.45-3.05 2.47-1.34.03-1.77-.79-3.29-.79-1.53 0-2 .77-3.27.82-1.31.05-2.3-1.32-3.14-2.53C4.25 17 2.94 12.45 4.7 9.39c.87-1.52 2.43-2.48 4.12-2.51 1.28-.02 2.5.87 3.29.87.78 0 2.26-1.07 3.81-.91.65.03 2.47.26 3.64 1.98-.09.06-2.17 1.28-2.15 3.81.03 3.02 2.65 4.03 2.68 4.04-.03.07-.42 1.44-1.38 2.83M13 3.5c.73-.83 1.94-1.46 2.94-1.5.13 1.17-.34 2.35-1.04 3.19-.69.85-1.83 1.51-2.95 1.42-.15-1.15.41-2.35 1.05-3.11z`})})}function lr(){return(0,M.jsx)(`svg`,{viewBox:`0 0 24 24`,fill:`currentColor`,"aria-hidden":`true`,children:(0,M.jsx)(`path`,{d:`M3,20.5V3.5C3,2.91 3.34,2.39 3.84,2.15L13.69,12L3.84,21.85C3.34,21.6 3,21.09 3,20.5M16.81,15.12L6.05,21.34L14.54,12.85L16.81,15.12M20.16,10.81C20.5,11.08 20.75,11.5 20.75,12C20.75,12.5 20.53,12.9 20.18,13.18L17.89,14.5L15.39,12L17.89,9.5L20.16,10.81M6.05,2.66L16.81,8.88L14.54,11.15L6.05,2.66Z`})})}function ur(){return(0,M.jsxs)(`svg`,{viewBox:`0 0 48 48`,fill:`none`,"aria-hidden":`true`,children:[(0,M.jsxs)(`defs`,{children:[(0,M.jsxs)(`linearGradient`,{id:`cg-a`,x1:`3.2173`,y1:`15`,x2:`44.7812`,y2:`15`,gradientUnits:`userSpaceOnUse`,children:[(0,M.jsx)(`stop`,{offset:`0`,stopColor:`#d93025`}),(0,M.jsx)(`stop`,{offset:`1`,stopColor:`#ea4335`})]}),(0,M.jsxs)(`linearGradient`,{id:`cg-b`,x1:`20.7219`,y1:`47.6791`,x2:`41.5039`,y2:`11.6837`,gradientUnits:`userSpaceOnUse`,children:[(0,M.jsx)(`stop`,{offset:`0`,stopColor:`#fcc934`}),(0,M.jsx)(`stop`,{offset:`1`,stopColor:`#fbbc04`})]}),(0,M.jsxs)(`linearGradient`,{id:`cg-c`,x1:`26.5981`,y1:`46.5015`,x2:`5.8161`,y2:`10.506`,gradientUnits:`userSpaceOnUse`,children:[(0,M.jsx)(`stop`,{offset:`0`,stopColor:`#1e8e3e`}),(0,M.jsx)(`stop`,{offset:`1`,stopColor:`#34a853`})]})]}),(0,M.jsx)(`circle`,{cx:`24`,cy:`23.9947`,r:`12`,fill:`#fff`}),(0,M.jsx)(`path`,{d:`M24,12H44.7812a23.9939,23.9939,0,0,0-41.5639.0029L13.6079,30l.0093-.0024A11.9852,11.9852,0,0,1,24,12Z`,fill:`url(#cg-a)`}),(0,M.jsx)(`circle`,{cx:`24`,cy:`24`,r:`9.5`,fill:`#1a73e8`}),(0,M.jsx)(`path`,{d:`M34.3913,30.0029,24.0007,48A23.994,23.994,0,0,0,44.78,12.0031H23.9989l-.0025.0093A11.985,11.985,0,0,1,34.3913,30.0029Z`,fill:`url(#cg-b)`}),(0,M.jsx)(`path`,{d:`M13.6086,30.0031,3.218,12.006A23.994,23.994,0,0,0,24.0025,48L34.3931,30.0029l-.0067-.0068a11.9852,11.9852,0,0,1-20.7778.007Z`,fill:`url(#cg-c)`})]})}function dr(){document.cookie=`bypass_browser_check=1;path=/;max-age=2592000`,location.reload()}function fr({hint:e,target:t}){let[n,r]=(0,O.useState)(!1);return(0,O.useEffect)(()=>{if(!n)return;let e=setTimeout(()=>r(!1),1200);return()=>clearTimeout(e)},[n]),(0,M.jsxs)(`li`,{children:[(0,M.jsx)(`span`,{className:Y.stepHint,children:e}),(0,M.jsxs)(`div`,{className:Y.flag,children:[(0,M.jsx)(`code`,{className:Y.flagText,children:t}),(0,M.jsx)(`button`,{type:`button`,className:Y.copy,onClick:()=>{navigator.clipboard?.writeText(t).then(()=>r(!0),()=>{})},title:`Copy`,"aria-label":`Copy`,children:n?(0,M.jsx)(u,{size:15}):(0,M.jsx)(d,{size:15})})]})]})}function pr(){return(0,M.jsx)(`div`,{className:Y.root,children:(0,M.jsx)(s,{})})}function mr({reason:t=`mobile`}){if(t===`gpu`)return(0,M.jsx)(`div`,{className:Y.root,children:(0,M.jsxs)(`div`,{className:Y.card,children:[(0,M.jsx)(`img`,{className:Y.logo,src:E(`assets/logo.png`),alt:``,draggable:!1}),(0,M.jsx)(`h1`,{className:Y.title,children:`Enable GPU acceleration`}),(0,M.jsxs)(`p`,{className:Y.subtitle,children:[`Decentraland Web renders in 3D with `,(0,M.jsx)(`strong`,{children:`WebGPU`}),`, which needs a working GPU. Your browser has it turned off or can’t reach a supported GPU. In Chrome, paste each of these into a new tab (they can’t be opened by clicking), switch it on, then relaunch:`]}),(0,M.jsxs)(`ol`,{className:Y.steps,children:[(0,M.jsx)(fr,{hint:`Turn on “Use graphics acceleration when available”`,target:`chrome://settings/system`}),(0,M.jsx)(fr,{hint:`Set “Unsafe WebGPU Support” to Enabled`,target:`chrome://flags/#enable-unsafe-webgpu`})]}),(0,M.jsx)(`button`,{type:`button`,className:Y.tryAnyway,onClick:dr,children:`try anyway…`})]})});if(t===`browser`)return(0,M.jsx)(`div`,{className:Y.root,children:(0,M.jsxs)(`div`,{className:Y.card,children:[(0,M.jsx)(`img`,{className:Y.logo,src:E(`assets/logo.png`),alt:``,draggable:!1}),(0,M.jsx)(`h1`,{className:Y.title,children:`Browser Not Supported`}),(0,M.jsxs)(`p`,{className:Y.subtitle,children:[`Decentraland Web requires `,(0,M.jsx)(`strong`,{children:`Google Chrome`}),` on desktop to run.`]}),(0,M.jsx)(`div`,{className:Y.buttons,children:(0,M.jsxs)(e,{variant:`secondary`,href:sr,target:`_blank`,rel:`noopener`,className:Y.store,children:[(0,M.jsx)(ur,{}),(0,M.jsx)(`span`,{children:`Download Chrome`})]})}),(0,M.jsx)(`button`,{type:`button`,className:Y.tryAnyway,onClick:dr,children:`try anyway…`})]})});let n=nr(),r=n===`ios`||n===`other`,i=n===`android`||n===`other`;return(0,M.jsx)(`div`,{className:Y.root,children:(0,M.jsxs)(`div`,{className:Y.card,children:[(0,M.jsx)(`img`,{className:Y.logo,src:E(`assets/logo.png`),alt:``,draggable:!1}),(0,M.jsx)(`h1`,{className:Y.title,children:`Decentraland`}),(0,M.jsx)(`p`,{className:Y.subtitle,children:`This experience isn’t available on mobile browsers. Download the app to explore:`}),(0,M.jsxs)(`div`,{className:Y.buttons,children:[r&&(0,M.jsxs)(e,{variant:`secondary`,href:ar,target:`_blank`,rel:`noopener`,className:Y.store,children:[(0,M.jsx)(cr,{}),(0,M.jsx)(`span`,{children:`Install from App Store`})]}),i&&(0,M.jsxs)(e,{variant:`secondary`,href:or,target:`_blank`,rel:`noopener`,className:Y.store,children:[(0,M.jsx)(lr,{}),(0,M.jsx)(`span`,{children:`Install from Google Play`})]})]})]})})}var X={layer:`_layer_cw1gi_6`,head:`_head_cw1gi_12`,title:`_title_cw1gi_19`,lead:`_lead_cw1gi_27`,params:`_params_cw1gi_33`,paramValue:`_paramValue_cw1gi_40`,paramDesc:`_paramDesc_cw1gi_45`,advanced:`_advanced_cw1gi_52`,advancedNote:`_advancedNote_cw1gi_61`,exit:`_exit_cw1gi_67`,proceed:`_proceed_cw1gi_81`};function hr(){window.close(),window.location.replace(`https://decentraland.org`)}var gr=`This Launch Link Is Not Trusted`;function _r({systemScene:t,onProceed:n}){let[r,i]=(0,O.useState)(!1);return(0,M.jsxs)(m,{role:`alertdialog`,ariaLabel:gr,width:560,dismissOnScrim:!1,closeButton:!1,backdropClassName:X.layer,header:(0,M.jsxs)(`div`,{className:X.head,children:[(0,M.jsx)(ee,{size:72}),(0,M.jsx)(`h2`,{className:X.title,children:gr})]}),actionsDirection:`column`,actions:(0,M.jsxs)(M.Fragment,{children:[(0,M.jsx)(e,{autoFocus:!0,variant:`primary`,className:X.exit,onClick:hr,children:`Exit Application`}),r?(0,M.jsxs)(`div`,{className:X.advanced,children:[(0,M.jsx)(`p`,{className:X.advancedNote,children:`Continuing hands this address full control of your session for as long as this tab is open. Only do this if you recognise it as your own.`}),(0,M.jsx)(e,{variant:`ghost`,className:X.proceed,onClick:n,children:`Continue anyway`})]}):(0,M.jsx)(e,{variant:`secondary`,onClick:()=>i(!0),children:`Advanced`})]}),children:[(0,M.jsx)(`p`,{className:X.lead,children:`Someone may be trying to change how your Explorer behaves.`}),(0,M.jsx)(`p`,{className:X.lead,children:`This link carries a parameter the Explorer does not accept from links, because it replaces the interface with code that runs as you:`}),(0,M.jsxs)(`dl`,{className:X.params,children:[(0,M.jsxs)(`dt`,{children:[`systemScene = `,(0,M.jsx)(`span`,{className:X.paramValue,children:t})]}),(0,M.jsx)(`dd`,{className:X.paramDesc,children:`Replaces the Explorer's interface with a scene loaded from this address. It can move your avatar, change your profile, and answer permission prompts on your behalf.`})]}),(0,M.jsx)(`p`,{className:X.lead,children:`Unless you built this link yourself, the safe choice is to exit.`})]})}var Z={fatalLayer:`_fatalLayer_1q3co_5`,head:`_head_1q3co_10`,title:`_title_1q3co_14`,subtitle:`_subtitle_1q3co_20`,btn:`_btn_1q3co_27`,detail:`_detail_1q3co_32`},vr={launch:{title:`Something went wrong`,subtitle:`The 3D engine couldn't start. Reloading often fixes it.`},runtime:{title:`The world crashed`,subtitle:`The 3D engine stopped unexpectedly.`},react:{title:`Something went wrong`,subtitle:`The app hit an unexpected error.`},realm:{title:`World not found`,subtitle:``}};function yr({error:t,onReload:n,onDismiss:r}){let{title:i,subtitle:a}=vr[t.source],o=t.source===`realm`;return(0,M.jsx)(m,{header:(0,M.jsxs)(`div`,{className:Z.head,children:[(0,M.jsx)(`h2`,{className:Z.title,children:i}),(0,M.jsx)(`p`,{className:Z.subtitle,children:o?t.message:a})]}),role:`alertdialog`,ariaLabel:i,onClose:r,dismissOnScrim:!!r,closeButton:!1,backdropClassName:Z.fatalLayer,actionsAlign:`center`,actions:o?(0,M.jsx)(e,{variant:`primary`,className:Z.btn,onClick:r,children:`OK`}):(0,M.jsxs)(M.Fragment,{children:[r&&(0,M.jsx)(e,{variant:`ghost`,className:Z.btn,onClick:r,children:`Dismiss`}),(0,M.jsx)(e,{variant:`primary`,className:Z.btn,onClick:n,children:`Reload`})]}),children:!o&&(0,M.jsx)(`pre`,{className:Z.detail,children:t.message})})}var br=class extends O.Component{state={error:null};static getDerivedStateFromError(e){return{error:e}}componentDidCatch(e){console.error(`[react error boundary]`,e)}render(){let{error:e}=this.state;return e?(0,M.jsx)(yr,{error:{message:e.stack??e.message,source:`react`},onReload:()=>location.reload()}):this.props.children}},xr=`modulepreload`,Sr=function(e){return`https://cdn.decentraland.org/@dcl-regenesislabs/bevy-explorer-web/0.1.0-31020266160.commit-e05e645/`+e},Cr={},wr=function(e,t,n){let r=Promise.resolve();if(t&&t.length>0){let e=document.getElementsByTagName(`link`),i=document.querySelector(`meta[property=csp-nonce]`),a=i?.nonce||i?.getAttribute(`nonce`);function o(e){return Promise.all(e.map(e=>Promise.resolve(e).then(e=>({status:`fulfilled`,value:e}),e=>({status:`rejected`,reason:e}))))}function s(e){return import.meta.resolve?import.meta.resolve(e):new URL(e,new URL(`../../../src/node/plugins/importAnalysisBuild.ts`,import.meta.url)).href}r=o(t.map(t=>{if(t=Sr(t,n),t=s(t),t in Cr)return;Cr[t]=!0;let r=t.endsWith(`.css`);for(let n=e.length-1;n>=0;n--){let i=e[n];if(i.href===t&&(!r||i.rel===`stylesheet`))return}let i=document.createElement(`link`);if(i.rel=r?`stylesheet`:xr,r||(i.as=`script`),i.crossOrigin=``,i.href=t,a&&i.setAttribute(`nonce`,a),document.head.appendChild(i),r)return new Promise((e,n)=>{i.addEventListener(`load`,e),i.addEventListener(`error`,()=>n(Error(`Unable to preload CSS for ${t}`)))})}))}function i(e){let t=new Event(`vite:preloadError`,{cancelable:!0});if(t.payload=e,window.dispatchEvent(t),!t.defaultPrevented)throw e}return r.then(t=>{for(let e of t||[])e.status===`rejected`&&i(e.reason);return e().catch(i)})},Tr=(0,O.lazy)(()=>wr(()=>import(`./Showcase-BDKSZ3kP.js`).then(e=>({default:e.Showcase})),__vite__mapDeps([0,1,2,3,4,5]))),Q=new URLSearchParams(location.search),$=Q.get(`mock`)===`1`?`mock`:Q.get(`native`)===`1`?`native`:`engine`,Er=Q.get(`showcase`)===`1`,Dr=v().hideHud;function Or(){return $===`native`||Q.get(`nogate`)===`1`?null:$n()||Q.get(`gate`)===`1`?`mobile`:Q.get(`gate`)===`browser`?`browser`:Q.get(`gate`)===`gpu`?`gpu`:!er()&&!tr()?`browser`:null}var kr=Or(),Ar=v().systemScene,jr=Ar!=null&&!ie(Ar)?Ar:null;function Mr(){qn();let e=Nr(),t=Pr(kr!=null||$===`mock`||$===`native`||Er),[n,r]=(0,O.useState)(!1);return jr!=null&&!n?(0,M.jsx)(_r,{systemScene:jr,onProceed:()=>r(!0)}):kr?(0,M.jsx)(mr,{reason:kr}):t===`checking`?(0,M.jsx)(pr,{}):t===`blocked`?(0,M.jsx)(mr,{reason:`gpu`}):(0,M.jsxs)(br,{children:[Er?(0,M.jsx)(O.Suspense,{fallback:null,children:(0,M.jsx)(Tr,{})}):(0,M.jsx)(Fr,{}),e&&(0,M.jsx)(An,{})]})}function Nr(){let[e,t]=(0,O.useState)(Q.get(`fps`)===`1`);return Jn(e=>(e.ctrlKey||e.metaKey)&&e.shiftKey&&(e.key===`F`||e.key===`f`),()=>t(e=>!e)),e}function Pr(e){let[t,n]=(0,O.useState)(e?`ok`:`checking`);return(0,O.useEffect)(()=>{if(e)return;if(Q.get(`nogate`)===`1`||tr()){n(`ok`);return}let t=!1;return ir().then(e=>{t||n(e?`ok`:`blocked`)}),()=>{t=!0}},[e]),t}function Fr(){let{rpc:e,createDriver:t}=(0,O.useMemo)(()=>{if($===`mock`)return Ve(),{rpc:null,createDriver:()=>new Ee};if($===`native`)return{rpc:null,createDriver:()=>new Ee};let e=new ke;return{rpc:e,createDriver:()=>new Oe(e)}},[]),n=ue(t);Xn(n);let r=Hn(n.phase===`entering`||n.phase===`world`),[i,a]=(0,O.useState)(null),[o,s]=(0,O.useState)(`wearables`);(0,O.useEffect)(()=>{n.backpack.open||s(`wearables`)},[n.backpack.open]);let l=()=>{let e=n.profile.data;e&&oe(e.address)},u=e=>{e===`settings`?n.settings.toggle():e===`backpack`?n.backpack.toggle():e===`communities`?n.communities.toggle():e===`map`?n.map.toggle():e===`places`?n.places.toggle():e===`gallery`?n.gallery.toggle():e===`profile`?l():e===`signout`&&n.logout()},d=n.settings.open||n.backpack.open||n.communities.open||n.map.open||n.places.open||n.gallery.open;return Dr?(0,M.jsxs)(x,{value:n,children:[e&&(0,M.jsx)(D,{rpc:e}),n.fatalError&&(0,M.jsx)(yr,{error:n.fatalError,onReload:n.reload,onDismiss:n.fatalError.source===`runtime`||n.fatalError.source===`realm`?n.dismissFatal:void 0})]}):(0,M.jsxs)(x,{value:n,children:[e&&(0,M.jsx)(D,{rpc:e}),n.phase===`login`&&(0,M.jsx)(Rn,{flow:n.login}),n.phase===`picking`&&(0,M.jsx)(de,{onPick:n.pickDestination}),n.phase===`entering`&&(0,M.jsx)(Bn,{scene:n.scene}),n.phase===`world`&&!n.menuOpen&&(0,M.jsxs)(M.Fragment,{children:[!d&&(0,M.jsx)(fn,{session:n,onViewProfile:l}),!d&&(0,M.jsx)(Cn,{hover:n.hover,locked:n.cursorLocked,proximity:n.proximity}),(0,M.jsx)(vt,{chat:n.chat,hidden:n.friends.open||d,me:n.profile.data,onTeleport:(e,t)=>n.map.teleport(e,t),onVisitWorld:e=>a(e)}),(0,M.jsx)(Ot,{friends:n.friends}),(0,M.jsx)(Pt,{settings:n.settings,profile:n.profile,onNavigate:u}),(0,M.jsx)(Ft,{profile:n.profile}),(0,M.jsx)(Wt,{notifications:n.notifications}),(0,M.jsx)(sn,{emotes:n.emotes,onCustomise:()=>{s(`emotes`),n.backpack.toggle()}}),(0,M.jsx)(w,{backpack:n.backpack,emotes:n.emotes,profile:n.profile,onNavigate:u,setEngineViewport:n.setEngineViewport,initialTab:o}),(0,M.jsx)(C,{communities:n.communities,profile:n.profile,onNavigate:u,onAddFriend:e=>n.friends.act(`request`,e),onOpenChat:()=>n.chat.toggle()}),(0,M.jsx)(ce,{map:n.map,profile:n.profile,onNavigate:u}),(0,M.jsx)(me,{places:n.places,profile:n.profile,onNavigate:u,onTeleport:(e,t)=>n.map.teleport(e,t),onVisitWorld:e=>n.map.changeRealm(e)}),(0,M.jsx)(he,{gallery:n.gallery,profile:n.profile,onNavigate:u,onTeleport:(e,t)=>n.map.teleport(e,t),onViewProfile:e=>oe(e.address)}),i&&(0,M.jsx)(ge,{worldName:i,onCancel:()=>a(null),onConfirm:()=>{n.map.changeRealm(i),a(null)}})]}),n.phase===`world`&&n.permissions.pending.length>0&&(0,M.jsx)(On,{request:n.permissions.pending[0],onResolve:(e,t)=>n.permissions.resolve(n.permissions.pending[0].id,e,t)},n.permissions.pending[0].id),r.confirming&&(0,M.jsx)(Vn,{onStay:r.stay,onLeave:r.leave}),n.fatalError&&(0,M.jsx)(yr,{error:n.fatalError,onReload:n.reload,onDismiss:n.fatalError.source===`runtime`||n.fatalError.source===`realm`?n.dismissFatal:void 0}),(0,M.jsx)(c,{})]})}var Ir=`coi_sw_reloaded`;function Lr(){`serviceWorker`in navigator&&(location.pathname.endsWith(`/`)||history.replaceState(history.state,``,`${location.pathname}/${location.search}${location.hash}`),navigator.serviceWorker.register(new URL(`service_worker.js`,ne)).then(e=>{if(navigator.serviceWorker.controller){sessionStorage.removeItem(Ir);return}let t=()=>{sessionStorage.getItem(Ir)?(sessionStorage.removeItem(Ir),console.error(`[coi] service worker failed to take control after reload`)):(sessionStorage.setItem(Ir,`true`),window.location.reload())};if(e.active){t();return}let n=e.installing??e.waiting;n?.addEventListener(`statechange`,()=>{n.state===`activated`&&t()})}).catch(e=>console.log(`[coi] service worker registration failed:`,e)))}function Rr(){let e=window.cef;if(!e?.emit||!e?.listen)return;let t=new BroadcastChannel(Te);t.onmessage=t=>{let n=t.data;n?.to===`scene`&&e.emit(n)},e.listen(`bridge`,e=>{try{t.postMessage(typeof e==`string`?JSON.parse(e):e)}catch{}});let n=e=>{let t=e;return!!t&&(t.tagName===`INPUT`||t.tagName===`TEXTAREA`||t.isContentEditable)};document.addEventListener(`focusin`,t=>{n(t.target)&&e.emit({to:`engine`,msg:{kind:`textFocus`,focused:!0}})},!0),document.addEventListener(`focusout`,()=>{setTimeout(()=>{n(document.activeElement)||e.emit({to:`engine`,msg:{kind:`textFocus`,focused:!1}})},0)},!0),e.listen(`engineFps`,e=>{window.__nativeEngineFps=Number(e)}),e.listen(`uiHeight`,e=>{window.__nativeUiHeight=Number(e),window.dispatchEvent(new Event(`resize`))}),e.listen(`engineTextFocus`,e=>{window.__engineTextFocus=e===`true`})}var zr=/^(localhost|127(\.\d{1,3}){3}|\[::1\])$/i,Br=/^(10|192\.168|172\.(1[6-9]|2\d|3[01])|169\.254)(\.\d{1,3}){1,3}$/;function Vr(e){let t;try{t=new URL(e,location.href).hostname}catch{return null}return zr.test(t)?`loopback`:Br.test(t)||t.toLowerCase().endsWith(`.local`)?`local`:null}function Hr(){let e=window.fetch.bind(window);window.fetch=function(t,n){let r=Vr(t instanceof Request?t.url:String(t));if(r==null||n!=null&&`targetAddressSpace`in n)return e(t,n);let i={...n,targetAddressSpace:r};return e(t,i)}}if(Hr(),new URLSearchParams(location.search).get(`native`)===`1`){document.documentElement.style.background=`transparent`,document.body.style.background=`transparent`,window.addEventListener(`contextmenu`,e=>e.preventDefault()),Rr();try{Object.defineProperty(document,"visibilityState",{get:()=>`visible`,configurable:!0}),Object.defineProperty(document,"hidden",{get:()=>!1,configurable:!0}),document.dispatchEvent(new Event(`visibilitychange`))}catch{}}else Lr();(0,we.createRoot)(document.getElementById(`root`)).render((0,M.jsx)(O.StrictMode,{children:(0,M.jsx)(Mr,{})}));export{gt as i,ht as n,pt as r,nn as t};
|
|
5
|
+
creators & explorers.`},"reuse-login-or-new":{title:`Welcome back!`,subtitle:`Ready to explore?`}};function Rn({flow:e}){(0,O.useEffect)(()=>{S()},[]);let t=e.status===`reuse-login-or-new`,n=Fn(t&&e.account!=null?e.account:void 0);return(0,M.jsx)(`div`,{className:q.root,children:e.status===`loading`?(0,M.jsx)(`div`,{className:q.loading,children:(0,M.jsx)(`div`,{className:q.spinnerLogo})}):(0,M.jsxs)(M.Fragment,{children:[(0,M.jsx)(`div`,{className:q.watermark}),(0,M.jsx)(zn,{flow:e,name:n.name}),t&&n.body!=null&&(0,M.jsx)(In,{body:n.body}),(0,M.jsx)(Mn,{flow:e})]})})}function zn({flow:t,name:n}){let r=t.status,i=Ln[r],a=r===`reuse-login-or-new`&&n!=null&&n!==``?`Welcome back ${n}`:i.title,o=!t.engineReady;return(0,M.jsxs)(`div`,{className:q.panel,children:[(0,M.jsx)(`div`,{className:q.logo}),(0,M.jsx)(`h1`,{className:q.title,children:a}),i.subtitle&&(0,M.jsx)(`p`,{className:q.subtitle,children:i.subtitle}),t.error&&(0,M.jsx)(`p`,{className:q.error,children:t.error}),(0,M.jsxs)(`div`,{className:q.buttons,children:[t.authPending&&(0,M.jsxs)(M.Fragment,{children:[(0,M.jsx)(`p`,{className:q.authHint,children:t.authCode==null?`Opening the sign-in page in your browser…`:`Verify this code matches the one in the browser window we just opened:`}),t.authCode!=null&&(0,M.jsx)(`div`,{className:q.authCode,children:t.authCode}),(0,M.jsx)(e,{variant:`secondary`,size:`lg`,className:q.ctaSecondary,onClick:t.cancelLogin,children:(0,M.jsx)(`span`,{className:q.label,children:`CANCEL`})})]}),r===`sign-in-or-guest`&&!t.authPending&&(0,M.jsxs)(M.Fragment,{children:[(0,M.jsxs)(e,{variant:`primary`,size:`lg`,className:q.cta,onClick:t.startWithAccount,disabled:t.busy,children:[(0,M.jsx)(`span`,{className:q.label,children:`START WITH ACCOUNT`}),(0,M.jsx)(Pn,{})]}),(0,M.jsx)(e,{variant:`secondary`,size:`lg`,className:q.ctaSecondary,onClick:t.exploreAsGuest,disabled:t.busy||o,children:(0,M.jsx)(`span`,{className:q.label,children:o?Nn(t):`EXPLORE AS GUEST`})})]}),r===`reuse-login-or-new`&&(0,M.jsxs)(M.Fragment,{children:[(0,M.jsxs)(e,{variant:`primary`,size:`lg`,className:q.cta,onClick:t.jumpIn,disabled:t.busy||o,children:[(0,M.jsx)(`span`,{className:q.label,children:o?Nn(t):t.profileFetchFailed?`TRY AGAIN`:`JUMP INTO DECENTRALAND`}),!o&&(0,M.jsx)(Pn,{})]}),(0,M.jsx)(e,{variant:`secondary`,size:`lg`,className:q.ctaSecondary,onClick:t.useDifferentAccount,disabled:t.busy,children:(0,M.jsx)(`span`,{className:q.label,children:`USE A DIFFERENT ACCOUNT`})}),t.profileFetchFailed&&(0,M.jsxs)(`div`,{className:q.resetBox,children:[(0,M.jsx)(`p`,{className:q.resetText,children:`If the problem persists you can continue with a fresh default profile. This permanently replaces your account's current avatar and profile.`}),(0,M.jsx)(e,{variant:`secondary`,size:`lg`,className:`${q.ctaSecondary} ${q.ctaDanger}`,onClick:t.resetProfileAndJumpIn,disabled:t.busy||o,children:(0,M.jsx)(`span`,{className:q.label,children:`RESET PROFILE & JUMP IN`})})]})]})]})]})}var J={root:`_root_1vhw7_1`,"fade-in":`_fade-in_1vhw7_1`,logo:`_logo_1vhw7_24`,title:`_title_1vhw7_30`,subtitle:`_subtitle_1vhw7_36`,track:`_track_1vhw7_44`,fill:`_fill_1vhw7_52`,indeterminate:`_indeterminate_1vhw7_59`,slide:`_slide_1vhw7_1`};function Bn({scene:e}){let t=(0,O.useRef)(0),n=e?.pendingAssets??null;n!=null&&n>t.current&&(t.current=n);let r=e!=null&&!e.realmConnected,i=n!=null&&t.current>0,a=i?1-n/t.current:0,o=r?`Reconnecting…`:e?.title?e.title:`Entering Decentraland`,s=r?`Reconnecting to the realm`:n!=null&&n>0?`Loading scene assets · ${n} remaining`:`Preparing your surroundings`;return(0,M.jsxs)(`div`,{className:J.root,children:[(0,M.jsx)(`div`,{className:J.logo}),(0,M.jsx)(`h2`,{className:J.title,children:o}),(0,M.jsx)(`p`,{className:J.subtitle,children:s}),(0,M.jsx)(`div`,{className:J.track,children:(0,M.jsx)(`div`,{className:`${J.fill}${i?``:` `+J.indeterminate}`,style:i?{width:`${Math.round(a*100)}%`}:void 0})})]})}function Vn({onStay:t,onLeave:n}){return(0,M.jsx)(m,{title:`Leave Decentraland?`,onClose:t,closeButton:!1,dismissOnScrim:!1,width:420,actions:(0,M.jsxs)(M.Fragment,{children:[(0,M.jsx)(e,{variant:`ghost`,onClick:t,children:`Stay`}),(0,M.jsx)(e,{variant:`primary`,onClick:n,children:`Leave`})]}),actionsEqual:!0,children:`You're about to exit the world and go back. You'll have to reconnect to return.`})}function Hn(e){let[t,n]=(0,O.useState)(!1),r=(0,O.useRef)(!1);return(0,O.useEffect)(()=>{if(!e)return;r.current=!1;let t=e=>{r.current||(e.preventDefault(),e.returnValue=``)},i=()=>{r.current||(window.history.pushState(null,``,window.location.href),n(!0))};return window.history.pushState(null,``,window.location.href),window.addEventListener(`beforeunload`,t),window.addEventListener(`popstate`,i),()=>{window.removeEventListener(`beforeunload`,t),window.removeEventListener(`popstate`,i)}},[e]),{confirming:t,stay:()=>n(!1),leave:()=>{n(!1),r.current=!0,window.history.go(-2)}}}var Un=1080,Wn=.6,Gn=1.3,Kn=new URLSearchParams(location.search).get(`native`)===`1`;function qn(){(0,O.useEffect)(()=>{let e=-1,t=()=>{let t=window.__nativeUiHeight,n=typeof t==`number`&&t>0?t:window.innerHeight,r=Math.min(Gn,Math.max(Wn,n/Un));r!==e&&(e=r,document.documentElement.style.setProperty(`--ui-scale`,r.toFixed(3)))};t(),window.addEventListener(`resize`,t);let n=Kn?window.setInterval(t,500):0;return()=>{window.removeEventListener(`resize`,t),n&&window.clearInterval(n)}},[])}function Jn(e,t){let n=(0,O.useRef)(e),r=(0,O.useRef)(t);n.current=e,r.current=t,(0,O.useEffect)(()=>{let e=e=>{n.current(e)&&(e.preventDefault(),r.current())};return window.addEventListener(`keydown`,e,!0),()=>window.removeEventListener(`keydown`,e,!0)},[])}var Yn={m:e=>e.map.toggle,z:e=>e.places.toggle,o:e=>e.communities.toggle,i:e=>e.backpack.toggle,g:e=>e.gallery.toggle,p:e=>e.settings.toggle,b:e=>e.emotes.toggle,l:e=>e.friends.toggle,t:e=>e.chat.toggle,enter:e=>e.chat.requestFocus};function Xn(e){let t=(0,O.useRef)(e);t.current=e,(0,O.useEffect)(()=>{let e=e=>{if(e.ctrlKey||e.metaKey||e.altKey||e.repeat)return;let n=e.target,r=n?.tagName;if(r===`INPUT`||r===`TEXTAREA`||n?.isContentEditable||window.__engineTextFocus)return;let i=t.current;if(i.phase!==`world`)return;if(i.emotes.open&&/^[0-9]$/.test(e.key)){e.preventDefault(),e.stopPropagation();let t=i.emotes.list.find(t=>t.slot===Number(e.key));t&&i.emotes.play(t.urn);return}let a=Yn[e.key.toLowerCase()];a&&(e.preventDefault(),e.stopPropagation(),a(i)())};return window.addEventListener(`keydown`,e,!0),()=>window.removeEventListener(`keydown`,e,!0)},[])}var Zn=/Android|iPhone|iPad|iPod|webOS|BlackBerry|Opera Mini|IEMobile|Windows Phone/i;function Qn(){return/Macintosh/.test(navigator.userAgent)&&navigator.maxTouchPoints>1}function $n(){return typeof navigator>`u`?!1:Zn.test(navigator.userAgent)||Qn()}function er(){return typeof navigator>`u`?!0:/Chrome\//.test(navigator.userAgent)}function tr(){return typeof document>`u`?!1:document.cookie.split(`;`).some(e=>e.trim().startsWith(`bypass_browser_check=`))}function nr(){let e=navigator.userAgent;return/iPad|iPhone|iPod/.test(e)||Qn()?`ios`:/Android/i.test(e)?`android`:`other`}var rr=5e3;async function ir(){let e=navigator.gpu;if(e==null)return!1;let t;try{let n=await Promise.race([e.requestAdapter(),new Promise(e=>{t=setTimeout(()=>e(`timeout`),rr)})]);return n===`timeout`?!0:n!=null}catch{return!1}finally{t!=null&&clearTimeout(t)}}var Y={root:`_root_3vjgt_1`,card:`_card_3vjgt_13`,logo:`_logo_3vjgt_21`,title:`_title_3vjgt_26`,subtitle:`_subtitle_3vjgt_32`,buttons:`_buttons_3vjgt_38`,store:`_store_3vjgt_45`,steps:`_steps_3vjgt_66`,stepHint:`_stepHint_3vjgt_76`,flag:`_flag_3vjgt_82`,flagText:`_flagText_3vjgt_91`,copy:`_copy_3vjgt_102`,tryAnyway:`_tryAnyway_3vjgt_121`},ar=`https://testflight.apple.com/join/KF4r3jlU`,or=`https://play.google.com/store/apps/details?id=org.decentraland.godotexplorer`,sr=`https://www.google.com/chrome/`;function cr(){return(0,M.jsx)(`svg`,{viewBox:`0 0 24 24`,fill:`currentColor`,"aria-hidden":`true`,children:(0,M.jsx)(`path`,{d:`M18.71 19.5c-.83 1.24-1.71 2.45-3.05 2.47-1.34.03-1.77-.79-3.29-.79-1.53 0-2 .77-3.27.82-1.31.05-2.3-1.32-3.14-2.53C4.25 17 2.94 12.45 4.7 9.39c.87-1.52 2.43-2.48 4.12-2.51 1.28-.02 2.5.87 3.29.87.78 0 2.26-1.07 3.81-.91.65.03 2.47.26 3.64 1.98-.09.06-2.17 1.28-2.15 3.81.03 3.02 2.65 4.03 2.68 4.04-.03.07-.42 1.44-1.38 2.83M13 3.5c.73-.83 1.94-1.46 2.94-1.5.13 1.17-.34 2.35-1.04 3.19-.69.85-1.83 1.51-2.95 1.42-.15-1.15.41-2.35 1.05-3.11z`})})}function lr(){return(0,M.jsx)(`svg`,{viewBox:`0 0 24 24`,fill:`currentColor`,"aria-hidden":`true`,children:(0,M.jsx)(`path`,{d:`M3,20.5V3.5C3,2.91 3.34,2.39 3.84,2.15L13.69,12L3.84,21.85C3.34,21.6 3,21.09 3,20.5M16.81,15.12L6.05,21.34L14.54,12.85L16.81,15.12M20.16,10.81C20.5,11.08 20.75,11.5 20.75,12C20.75,12.5 20.53,12.9 20.18,13.18L17.89,14.5L15.39,12L17.89,9.5L20.16,10.81M6.05,2.66L16.81,8.88L14.54,11.15L6.05,2.66Z`})})}function ur(){return(0,M.jsxs)(`svg`,{viewBox:`0 0 48 48`,fill:`none`,"aria-hidden":`true`,children:[(0,M.jsxs)(`defs`,{children:[(0,M.jsxs)(`linearGradient`,{id:`cg-a`,x1:`3.2173`,y1:`15`,x2:`44.7812`,y2:`15`,gradientUnits:`userSpaceOnUse`,children:[(0,M.jsx)(`stop`,{offset:`0`,stopColor:`#d93025`}),(0,M.jsx)(`stop`,{offset:`1`,stopColor:`#ea4335`})]}),(0,M.jsxs)(`linearGradient`,{id:`cg-b`,x1:`20.7219`,y1:`47.6791`,x2:`41.5039`,y2:`11.6837`,gradientUnits:`userSpaceOnUse`,children:[(0,M.jsx)(`stop`,{offset:`0`,stopColor:`#fcc934`}),(0,M.jsx)(`stop`,{offset:`1`,stopColor:`#fbbc04`})]}),(0,M.jsxs)(`linearGradient`,{id:`cg-c`,x1:`26.5981`,y1:`46.5015`,x2:`5.8161`,y2:`10.506`,gradientUnits:`userSpaceOnUse`,children:[(0,M.jsx)(`stop`,{offset:`0`,stopColor:`#1e8e3e`}),(0,M.jsx)(`stop`,{offset:`1`,stopColor:`#34a853`})]})]}),(0,M.jsx)(`circle`,{cx:`24`,cy:`23.9947`,r:`12`,fill:`#fff`}),(0,M.jsx)(`path`,{d:`M24,12H44.7812a23.9939,23.9939,0,0,0-41.5639.0029L13.6079,30l.0093-.0024A11.9852,11.9852,0,0,1,24,12Z`,fill:`url(#cg-a)`}),(0,M.jsx)(`circle`,{cx:`24`,cy:`24`,r:`9.5`,fill:`#1a73e8`}),(0,M.jsx)(`path`,{d:`M34.3913,30.0029,24.0007,48A23.994,23.994,0,0,0,44.78,12.0031H23.9989l-.0025.0093A11.985,11.985,0,0,1,34.3913,30.0029Z`,fill:`url(#cg-b)`}),(0,M.jsx)(`path`,{d:`M13.6086,30.0031,3.218,12.006A23.994,23.994,0,0,0,24.0025,48L34.3931,30.0029l-.0067-.0068a11.9852,11.9852,0,0,1-20.7778.007Z`,fill:`url(#cg-c)`})]})}function dr(){document.cookie=`bypass_browser_check=1;path=/;max-age=2592000`,location.reload()}function fr({hint:e,target:t}){let[n,r]=(0,O.useState)(!1);return(0,O.useEffect)(()=>{if(!n)return;let e=setTimeout(()=>r(!1),1200);return()=>clearTimeout(e)},[n]),(0,M.jsxs)(`li`,{children:[(0,M.jsx)(`span`,{className:Y.stepHint,children:e}),(0,M.jsxs)(`div`,{className:Y.flag,children:[(0,M.jsx)(`code`,{className:Y.flagText,children:t}),(0,M.jsx)(`button`,{type:`button`,className:Y.copy,onClick:()=>{navigator.clipboard?.writeText(t).then(()=>r(!0),()=>{})},title:`Copy`,"aria-label":`Copy`,children:n?(0,M.jsx)(u,{size:15}):(0,M.jsx)(d,{size:15})})]})]})}function pr(){return(0,M.jsx)(`div`,{className:Y.root,children:(0,M.jsx)(s,{})})}function mr({reason:t=`mobile`}){if(t===`gpu`)return(0,M.jsx)(`div`,{className:Y.root,children:(0,M.jsxs)(`div`,{className:Y.card,children:[(0,M.jsx)(`img`,{className:Y.logo,src:E(`assets/logo.png`),alt:``,draggable:!1}),(0,M.jsx)(`h1`,{className:Y.title,children:`Enable GPU acceleration`}),(0,M.jsxs)(`p`,{className:Y.subtitle,children:[`Decentraland Web renders in 3D with `,(0,M.jsx)(`strong`,{children:`WebGPU`}),`, which needs a working GPU. Your browser has it turned off or can’t reach a supported GPU. In Chrome, paste each of these into a new tab (they can’t be opened by clicking), switch it on, then relaunch:`]}),(0,M.jsxs)(`ol`,{className:Y.steps,children:[(0,M.jsx)(fr,{hint:`Turn on “Use graphics acceleration when available”`,target:`chrome://settings/system`}),(0,M.jsx)(fr,{hint:`Set “Unsafe WebGPU Support” to Enabled`,target:`chrome://flags/#enable-unsafe-webgpu`})]}),(0,M.jsx)(`button`,{type:`button`,className:Y.tryAnyway,onClick:dr,children:`try anyway…`})]})});if(t===`browser`)return(0,M.jsx)(`div`,{className:Y.root,children:(0,M.jsxs)(`div`,{className:Y.card,children:[(0,M.jsx)(`img`,{className:Y.logo,src:E(`assets/logo.png`),alt:``,draggable:!1}),(0,M.jsx)(`h1`,{className:Y.title,children:`Browser Not Supported`}),(0,M.jsxs)(`p`,{className:Y.subtitle,children:[`Decentraland Web requires `,(0,M.jsx)(`strong`,{children:`Google Chrome`}),` on desktop to run.`]}),(0,M.jsx)(`div`,{className:Y.buttons,children:(0,M.jsxs)(e,{variant:`secondary`,href:sr,target:`_blank`,rel:`noopener`,className:Y.store,children:[(0,M.jsx)(ur,{}),(0,M.jsx)(`span`,{children:`Download Chrome`})]})}),(0,M.jsx)(`button`,{type:`button`,className:Y.tryAnyway,onClick:dr,children:`try anyway…`})]})});let n=nr(),r=n===`ios`||n===`other`,i=n===`android`||n===`other`;return(0,M.jsx)(`div`,{className:Y.root,children:(0,M.jsxs)(`div`,{className:Y.card,children:[(0,M.jsx)(`img`,{className:Y.logo,src:E(`assets/logo.png`),alt:``,draggable:!1}),(0,M.jsx)(`h1`,{className:Y.title,children:`Decentraland`}),(0,M.jsx)(`p`,{className:Y.subtitle,children:`This experience isn’t available on mobile browsers. Download the app to explore:`}),(0,M.jsxs)(`div`,{className:Y.buttons,children:[r&&(0,M.jsxs)(e,{variant:`secondary`,href:ar,target:`_blank`,rel:`noopener`,className:Y.store,children:[(0,M.jsx)(cr,{}),(0,M.jsx)(`span`,{children:`Install from App Store`})]}),i&&(0,M.jsxs)(e,{variant:`secondary`,href:or,target:`_blank`,rel:`noopener`,className:Y.store,children:[(0,M.jsx)(lr,{}),(0,M.jsx)(`span`,{children:`Install from Google Play`})]})]})]})})}var X={layer:`_layer_cw1gi_6`,head:`_head_cw1gi_12`,title:`_title_cw1gi_19`,lead:`_lead_cw1gi_27`,params:`_params_cw1gi_33`,paramValue:`_paramValue_cw1gi_40`,paramDesc:`_paramDesc_cw1gi_45`,advanced:`_advanced_cw1gi_52`,advancedNote:`_advancedNote_cw1gi_61`,exit:`_exit_cw1gi_67`,proceed:`_proceed_cw1gi_81`};function hr(){window.close(),window.location.replace(`https://decentraland.org`)}var gr=`This Launch Link Is Not Trusted`;function _r({systemScene:t,onProceed:n}){let[r,i]=(0,O.useState)(!1);return(0,M.jsxs)(m,{role:`alertdialog`,ariaLabel:gr,width:560,dismissOnScrim:!1,closeButton:!1,backdropClassName:X.layer,header:(0,M.jsxs)(`div`,{className:X.head,children:[(0,M.jsx)(ee,{size:72}),(0,M.jsx)(`h2`,{className:X.title,children:gr})]}),actionsDirection:`column`,actions:(0,M.jsxs)(M.Fragment,{children:[(0,M.jsx)(e,{autoFocus:!0,variant:`primary`,className:X.exit,onClick:hr,children:`Exit Application`}),r?(0,M.jsxs)(`div`,{className:X.advanced,children:[(0,M.jsx)(`p`,{className:X.advancedNote,children:`Continuing hands this address full control of your session for as long as this tab is open. Only do this if you recognise it as your own.`}),(0,M.jsx)(e,{variant:`ghost`,className:X.proceed,onClick:n,children:`Continue anyway`})]}):(0,M.jsx)(e,{variant:`secondary`,onClick:()=>i(!0),children:`Advanced`})]}),children:[(0,M.jsx)(`p`,{className:X.lead,children:`Someone may be trying to change how your Explorer behaves.`}),(0,M.jsx)(`p`,{className:X.lead,children:`This link carries a parameter the Explorer does not accept from links, because it replaces the interface with code that runs as you:`}),(0,M.jsxs)(`dl`,{className:X.params,children:[(0,M.jsxs)(`dt`,{children:[`systemScene = `,(0,M.jsx)(`span`,{className:X.paramValue,children:t})]}),(0,M.jsx)(`dd`,{className:X.paramDesc,children:`Replaces the Explorer's interface with a scene loaded from this address. It can move your avatar, change your profile, and answer permission prompts on your behalf.`})]}),(0,M.jsx)(`p`,{className:X.lead,children:`Unless you built this link yourself, the safe choice is to exit.`})]})}var Z={fatalLayer:`_fatalLayer_1q3co_5`,head:`_head_1q3co_10`,title:`_title_1q3co_14`,subtitle:`_subtitle_1q3co_20`,btn:`_btn_1q3co_27`,detail:`_detail_1q3co_32`},vr={launch:{title:`Something went wrong`,subtitle:`The 3D engine couldn't start. Reloading often fixes it.`},runtime:{title:`The world crashed`,subtitle:`The 3D engine stopped unexpectedly.`},react:{title:`Something went wrong`,subtitle:`The app hit an unexpected error.`},realm:{title:`World not found`,subtitle:``}};function yr({error:t,onReload:n,onDismiss:r}){let{title:i,subtitle:a}=vr[t.source],o=t.source===`realm`;return(0,M.jsx)(m,{header:(0,M.jsxs)(`div`,{className:Z.head,children:[(0,M.jsx)(`h2`,{className:Z.title,children:i}),(0,M.jsx)(`p`,{className:Z.subtitle,children:o?t.message:a})]}),role:`alertdialog`,ariaLabel:i,onClose:r,dismissOnScrim:!!r,closeButton:!1,backdropClassName:Z.fatalLayer,actionsAlign:`center`,actions:o?(0,M.jsx)(e,{variant:`primary`,className:Z.btn,onClick:r,children:`OK`}):(0,M.jsxs)(M.Fragment,{children:[r&&(0,M.jsx)(e,{variant:`ghost`,className:Z.btn,onClick:r,children:`Dismiss`}),(0,M.jsx)(e,{variant:`primary`,className:Z.btn,onClick:n,children:`Reload`})]}),children:!o&&(0,M.jsx)(`pre`,{className:Z.detail,children:t.message})})}var br=class extends O.Component{state={error:null};static getDerivedStateFromError(e){return{error:e}}componentDidCatch(e){console.error(`[react error boundary]`,e)}render(){let{error:e}=this.state;return e?(0,M.jsx)(yr,{error:{message:e.stack??e.message,source:`react`},onReload:()=>location.reload()}):this.props.children}},xr=`modulepreload`,Sr=function(e){return`https://cdn.decentraland.org/@dcl-regenesislabs/bevy-explorer-web/0.1.0-31020299785.commit-e05e645/`+e},Cr={},wr=function(e,t,n){let r=Promise.resolve();if(t&&t.length>0){let e=document.getElementsByTagName(`link`),i=document.querySelector(`meta[property=csp-nonce]`),a=i?.nonce||i?.getAttribute(`nonce`);function o(e){return Promise.all(e.map(e=>Promise.resolve(e).then(e=>({status:`fulfilled`,value:e}),e=>({status:`rejected`,reason:e}))))}function s(e){return import.meta.resolve?import.meta.resolve(e):new URL(e,new URL(`../../../src/node/plugins/importAnalysisBuild.ts`,import.meta.url)).href}r=o(t.map(t=>{if(t=Sr(t,n),t=s(t),t in Cr)return;Cr[t]=!0;let r=t.endsWith(`.css`);for(let n=e.length-1;n>=0;n--){let i=e[n];if(i.href===t&&(!r||i.rel===`stylesheet`))return}let i=document.createElement(`link`);if(i.rel=r?`stylesheet`:xr,r||(i.as=`script`),i.crossOrigin=``,i.href=t,a&&i.setAttribute(`nonce`,a),document.head.appendChild(i),r)return new Promise((e,n)=>{i.addEventListener(`load`,e),i.addEventListener(`error`,()=>n(Error(`Unable to preload CSS for ${t}`)))})}))}function i(e){let t=new Event(`vite:preloadError`,{cancelable:!0});if(t.payload=e,window.dispatchEvent(t),!t.defaultPrevented)throw e}return r.then(t=>{for(let e of t||[])e.status===`rejected`&&i(e.reason);return e().catch(i)})},Tr=(0,O.lazy)(()=>wr(()=>import(`./Showcase-B9SEYtXX.js`).then(e=>({default:e.Showcase})),__vite__mapDeps([0,1,2,3,4,5]))),Q=new URLSearchParams(location.search),$=Q.get(`mock`)===`1`?`mock`:Q.get(`native`)===`1`?`native`:`engine`,Er=Q.get(`showcase`)===`1`,Dr=v().hideHud;function Or(){return $===`native`||Q.get(`nogate`)===`1`?null:$n()||Q.get(`gate`)===`1`?`mobile`:Q.get(`gate`)===`browser`?`browser`:Q.get(`gate`)===`gpu`?`gpu`:!er()&&!tr()?`browser`:null}var kr=Or(),Ar=v().systemScene,jr=Ar!=null&&!ie(Ar)?Ar:null;function Mr(){qn();let e=Nr(),t=Pr(kr!=null||$===`mock`||$===`native`||Er),[n,r]=(0,O.useState)(!1);return jr!=null&&!n?(0,M.jsx)(_r,{systemScene:jr,onProceed:()=>r(!0)}):kr?(0,M.jsx)(mr,{reason:kr}):t===`checking`?(0,M.jsx)(pr,{}):t===`blocked`?(0,M.jsx)(mr,{reason:`gpu`}):(0,M.jsxs)(br,{children:[Er?(0,M.jsx)(O.Suspense,{fallback:null,children:(0,M.jsx)(Tr,{})}):(0,M.jsx)(Fr,{}),e&&(0,M.jsx)(An,{})]})}function Nr(){let[e,t]=(0,O.useState)(Q.get(`fps`)===`1`);return Jn(e=>(e.ctrlKey||e.metaKey)&&e.shiftKey&&(e.key===`F`||e.key===`f`),()=>t(e=>!e)),e}function Pr(e){let[t,n]=(0,O.useState)(e?`ok`:`checking`);return(0,O.useEffect)(()=>{if(e)return;if(Q.get(`nogate`)===`1`||tr()){n(`ok`);return}let t=!1;return ir().then(e=>{t||n(e?`ok`:`blocked`)}),()=>{t=!0}},[e]),t}function Fr(){let{rpc:e,createDriver:t}=(0,O.useMemo)(()=>{if($===`mock`)return Ve(),{rpc:null,createDriver:()=>new Ee};if($===`native`)return{rpc:null,createDriver:()=>new Ee};let e=new ke;return{rpc:e,createDriver:()=>new Oe(e)}},[]),n=ue(t);Xn(n);let r=Hn(n.phase===`entering`||n.phase===`world`),[i,a]=(0,O.useState)(null),[o,s]=(0,O.useState)(`wearables`);(0,O.useEffect)(()=>{n.backpack.open||s(`wearables`)},[n.backpack.open]);let l=()=>{let e=n.profile.data;e&&oe(e.address)},u=e=>{e===`settings`?n.settings.toggle():e===`backpack`?n.backpack.toggle():e===`communities`?n.communities.toggle():e===`map`?n.map.toggle():e===`places`?n.places.toggle():e===`gallery`?n.gallery.toggle():e===`profile`?l():e===`signout`&&n.logout()},d=n.settings.open||n.backpack.open||n.communities.open||n.map.open||n.places.open||n.gallery.open;return Dr?(0,M.jsxs)(x,{value:n,children:[e&&(0,M.jsx)(D,{rpc:e}),n.fatalError&&(0,M.jsx)(yr,{error:n.fatalError,onReload:n.reload,onDismiss:n.fatalError.source===`runtime`||n.fatalError.source===`realm`?n.dismissFatal:void 0})]}):(0,M.jsxs)(x,{value:n,children:[e&&(0,M.jsx)(D,{rpc:e}),n.phase===`login`&&(0,M.jsx)(Rn,{flow:n.login}),n.phase===`picking`&&(0,M.jsx)(de,{onPick:n.pickDestination}),n.phase===`entering`&&(0,M.jsx)(Bn,{scene:n.scene}),n.phase===`world`&&!n.menuOpen&&(0,M.jsxs)(M.Fragment,{children:[!d&&(0,M.jsx)(fn,{session:n,onViewProfile:l}),!d&&(0,M.jsx)(Cn,{hover:n.hover,locked:n.cursorLocked,proximity:n.proximity}),(0,M.jsx)(vt,{chat:n.chat,hidden:n.friends.open||d,me:n.profile.data,onTeleport:(e,t)=>n.map.teleport(e,t),onVisitWorld:e=>a(e)}),(0,M.jsx)(Ot,{friends:n.friends}),(0,M.jsx)(Pt,{settings:n.settings,profile:n.profile,onNavigate:u}),(0,M.jsx)(Ft,{profile:n.profile}),(0,M.jsx)(Wt,{notifications:n.notifications}),(0,M.jsx)(sn,{emotes:n.emotes,onCustomise:()=>{s(`emotes`),n.backpack.toggle()}}),(0,M.jsx)(w,{backpack:n.backpack,emotes:n.emotes,profile:n.profile,onNavigate:u,setEngineViewport:n.setEngineViewport,initialTab:o}),(0,M.jsx)(C,{communities:n.communities,profile:n.profile,onNavigate:u,onAddFriend:e=>n.friends.act(`request`,e),onOpenChat:()=>n.chat.toggle()}),(0,M.jsx)(ce,{map:n.map,profile:n.profile,onNavigate:u}),(0,M.jsx)(me,{places:n.places,profile:n.profile,onNavigate:u,onTeleport:(e,t)=>n.map.teleport(e,t),onVisitWorld:e=>n.map.changeRealm(e)}),(0,M.jsx)(he,{gallery:n.gallery,profile:n.profile,onNavigate:u,onTeleport:(e,t)=>n.map.teleport(e,t),onViewProfile:e=>oe(e.address)}),i&&(0,M.jsx)(ge,{worldName:i,onCancel:()=>a(null),onConfirm:()=>{n.map.changeRealm(i),a(null)}})]}),n.phase===`world`&&n.permissions.pending.length>0&&(0,M.jsx)(On,{request:n.permissions.pending[0],onResolve:(e,t)=>n.permissions.resolve(n.permissions.pending[0].id,e,t)},n.permissions.pending[0].id),r.confirming&&(0,M.jsx)(Vn,{onStay:r.stay,onLeave:r.leave}),n.fatalError&&(0,M.jsx)(yr,{error:n.fatalError,onReload:n.reload,onDismiss:n.fatalError.source===`runtime`||n.fatalError.source===`realm`?n.dismissFatal:void 0}),(0,M.jsx)(c,{})]})}var Ir=`coi_sw_reloaded`;function Lr(){`serviceWorker`in navigator&&(location.pathname.endsWith(`/`)||history.replaceState(history.state,``,`${location.pathname}/${location.search}${location.hash}`),navigator.serviceWorker.register(new URL(`service_worker.js`,ne)).then(e=>{if(navigator.serviceWorker.controller){sessionStorage.removeItem(Ir);return}let t=()=>{sessionStorage.getItem(Ir)?(sessionStorage.removeItem(Ir),console.error(`[coi] service worker failed to take control after reload`)):(sessionStorage.setItem(Ir,`true`),window.location.reload())};if(e.active){t();return}let n=e.installing??e.waiting;n?.addEventListener(`statechange`,()=>{n.state===`activated`&&t()})}).catch(e=>console.log(`[coi] service worker registration failed:`,e)))}function Rr(){let e=window.cef;if(!e?.emit||!e?.listen)return;let t=new BroadcastChannel(Te);t.onmessage=t=>{let n=t.data;n?.to===`scene`&&e.emit(n)},e.listen(`bridge`,e=>{try{t.postMessage(typeof e==`string`?JSON.parse(e):e)}catch{}});let n=e=>{let t=e;return!!t&&(t.tagName===`INPUT`||t.tagName===`TEXTAREA`||t.isContentEditable)};document.addEventListener(`focusin`,t=>{n(t.target)&&e.emit({to:`engine`,msg:{kind:`textFocus`,focused:!0}})},!0),document.addEventListener(`focusout`,()=>{setTimeout(()=>{n(document.activeElement)||e.emit({to:`engine`,msg:{kind:`textFocus`,focused:!1}})},0)},!0),e.listen(`engineFps`,e=>{window.__nativeEngineFps=Number(e)}),e.listen(`uiHeight`,e=>{window.__nativeUiHeight=Number(e),window.dispatchEvent(new Event(`resize`))}),e.listen(`engineTextFocus`,e=>{window.__engineTextFocus=e===`true`})}var zr=/^(localhost|127(\.\d{1,3}){3}|\[::1\])$/i,Br=/^(10|192\.168|172\.(1[6-9]|2\d|3[01])|169\.254)(\.\d{1,3}){1,3}$/;function Vr(e){let t;try{t=new URL(e,location.href).hostname}catch{return null}return zr.test(t)?`loopback`:Br.test(t)||t.toLowerCase().endsWith(`.local`)?`local`:null}function Hr(){let e=window.fetch.bind(window);window.fetch=function(t,n){let r=Vr(t instanceof Request?t.url:String(t));if(r==null||n!=null&&`targetAddressSpace`in n)return e(t,n);let i={...n,targetAddressSpace:r};return e(t,i)}}if(Hr(),new URLSearchParams(location.search).get(`native`)===`1`){document.documentElement.style.background=`transparent`,document.body.style.background=`transparent`,window.addEventListener(`contextmenu`,e=>e.preventDefault()),Rr();try{Object.defineProperty(document,"visibilityState",{get:()=>`visible`,configurable:!0}),Object.defineProperty(document,"hidden",{get:()=>!1,configurable:!0}),document.dispatchEvent(new Event(`visibilitychange`))}catch{}}else Lr();(0,we.createRoot)(document.getElementById(`root`)).render((0,M.jsx)(O.StrictMode,{children:(0,M.jsx)(Mr,{})}));export{gt as i,ht as n,pt as r,nn as t};
|