@dcl/explorer-website 0.1.0-7358966337.commit-5fa773f → 0.1.0-7379850545.commit-16f8d79

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (53) hide show
  1. package/asset-manifest.json +45 -43
  2. package/index.html +1 -1
  3. package/package.json +3 -3
  4. package/static/css/2.53ad6029.chunk.css +426 -0
  5. package/static/css/2.53ad6029.chunk.css.map +1 -0
  6. package/static/css/main.a30e4363.chunk.css +2 -0
  7. package/static/css/main.a30e4363.chunk.css.map +1 -0
  8. package/static/js/2.0f76f7a8.chunk.js +15 -0
  9. package/static/js/{2.eb808bf4.chunk.js.LICENSE.txt → 2.0f76f7a8.chunk.js.LICENSE.txt} +12 -10
  10. package/static/js/2.0f76f7a8.chunk.js.map +1 -0
  11. package/static/js/3.27714ef9.chunk.js +3 -0
  12. package/static/js/3.27714ef9.chunk.js.map +1 -0
  13. package/static/js/{4.693228e1.chunk.js → 4.2238dbd3.chunk.js} +3 -3
  14. package/static/js/{4.693228e1.chunk.js.map → 4.2238dbd3.chunk.js.map} +1 -1
  15. package/static/js/{5.254a29b0.chunk.js → 5.a0b2335a.chunk.js} +2 -2
  16. package/static/js/{5.254a29b0.chunk.js.map → 5.a0b2335a.chunk.js.map} +1 -1
  17. package/static/js/6.376edb7c.chunk.js +2 -0
  18. package/static/js/{6.edc69014.chunk.js.map → 6.376edb7c.chunk.js.map} +1 -1
  19. package/static/js/main.5cc0d2ff.chunk.js +2 -0
  20. package/static/js/main.5cc0d2ff.chunk.js.map +1 -0
  21. package/static/js/runtime-main.221edc62.js +2 -0
  22. package/static/js/{runtime-main.7d541341.js.map → runtime-main.221edc62.js.map} +1 -1
  23. package/static/media/brand-icons.278156e4.woff2 +0 -0
  24. package/static/media/brand-icons.65a2fb6d.ttf +0 -0
  25. package/static/media/brand-icons.6729d297.svg +1008 -0
  26. package/static/media/brand-icons.cac87dc0.woff +0 -0
  27. package/static/media/brand-icons.d68fa3e6.eot +0 -0
  28. package/static/media/flags.99f63ae7.png +0 -0
  29. package/static/media/icons.38c6d8ba.woff2 +0 -0
  30. package/static/media/icons.425399f8.woff +0 -0
  31. package/static/media/icons.62d9dae4.svg +1518 -0
  32. package/static/media/icons.a01e3f2d.eot +0 -0
  33. package/static/media/icons.c656b8ca.ttf +0 -0
  34. package/static/media/outline-icons.53671035.ttf +0 -0
  35. package/static/media/outline-icons.687a4990.woff2 +0 -0
  36. package/static/media/outline-icons.752905fa.eot +0 -0
  37. package/static/media/outline-icons.9c4845b4.svg +366 -0
  38. package/static/media/outline-icons.ddae9b1b.woff +0 -0
  39. package/static/media/simple-logo.a0996199.svg +32 -0
  40. package/static/css/2.98d7875c.chunk.css +0 -65
  41. package/static/css/2.98d7875c.chunk.css.map +0 -1
  42. package/static/css/main.a74145c2.chunk.css +0 -2
  43. package/static/css/main.a74145c2.chunk.css.map +0 -1
  44. package/static/js/2.eb808bf4.chunk.js +0 -9
  45. package/static/js/2.eb808bf4.chunk.js.map +0 -1
  46. package/static/js/3.a2214414.chunk.js +0 -3
  47. package/static/js/3.a2214414.chunk.js.map +0 -1
  48. package/static/js/6.edc69014.chunk.js +0 -2
  49. package/static/js/main.2e40d8fb.chunk.js +0 -2
  50. package/static/js/main.2e40d8fb.chunk.js.map +0 -1
  51. package/static/js/runtime-main.7d541341.js +0 -2
  52. /package/static/js/{3.a2214414.chunk.js.LICENSE.txt → 3.27714ef9.chunk.js.LICENSE.txt} +0 -0
  53. /package/static/js/{4.693228e1.chunk.js.LICENSE.txt → 4.2238dbd3.chunk.js.LICENSE.txt} +0 -0
@@ -1,2 +1,2 @@
1
- (this["webpackJsonp@dcl/explorer-website"]=this["webpackJsonp@dcl/explorer-website"]||[]).push([[5],{1038:function(e,t,n){"use strict";n.r(t),n.d(t,"WalletConnectModal",(function(){return o}));var r=n(1166);class o{constructor(e){this.openModal=r.e.open,this.closeModal=r.e.close,this.subscribeModal=r.e.subscribe,this.setTheme=r.h.setThemeConfig,r.h.setThemeConfig(e),r.a.setConfig(e),this.initUi()}async initUi(){if(typeof window<"u"){await n.e(4).then(n.bind(null,1283));const e=document.createElement("wcm-modal");document.body.insertAdjacentElement("beforeend",e),r.f.setIsUiLoaded(!0)}}}},1166:function(e,t,n){"use strict";n.d(t,"a",(function(){return p})),n.d(t,"b",(function(){return i})),n.d(t,"c",(function(){return c})),n.d(t,"d",(function(){return D})),n.d(t,"e",(function(){return U})),n.d(t,"f",(function(){return d})),n.d(t,"g",(function(){return s})),n.d(t,"h",(function(){return $})),n.d(t,"i",(function(){return V}));var r=n(1259);const o=Object(r.proxy)({history:["ConnectWallet"],view:"ConnectWallet",data:void 0}),s={state:o,subscribe:e=>Object(r.subscribe)(o,(()=>e(o))),push(e,t){e!==o.view&&(o.view=e,t&&(o.data=t),o.history.push(e))},reset(e){o.view=e,o.history=[e]},replace(e){o.history.length>1&&(o.history[o.history.length-1]=e,o.view=e)},goBack(){if(o.history.length>1){o.history.pop();const[e]=o.history.slice(-1);o.view=e}},setData(e){o.data=e}},i={WALLETCONNECT_DEEPLINK_CHOICE:"WALLETCONNECT_DEEPLINK_CHOICE",WCM_VERSION:"WCM_VERSION",RECOMMENDED_WALLET_AMOUNT:9,isMobile:()=>typeof window<"u"&&Boolean(window.matchMedia("(pointer:coarse)").matches||/Android|webOS|iPhone|iPad|iPod|BlackBerry|Opera Mini/u.test(navigator.userAgent)),isAndroid:()=>i.isMobile()&&navigator.userAgent.toLowerCase().includes("android"),isIos(){const e=navigator.userAgent.toLowerCase();return i.isMobile()&&(e.includes("iphone")||e.includes("ipad"))},isHttpUrl:e=>e.startsWith("http://")||e.startsWith("https://"),isArray:e=>Array.isArray(e)&&e.length>0,formatNativeUrl(e,t,n){if(i.isHttpUrl(e))return this.formatUniversalUrl(e,t,n);let r=e;r.includes("://")||(r=e.replaceAll("/","").replaceAll(":",""),r=`${r}://`),r.endsWith("/")||(r=`${r}/`),this.setWalletConnectDeepLink(r,n);return`${r}wc?uri=${encodeURIComponent(t)}`},formatUniversalUrl(e,t,n){if(!i.isHttpUrl(e))return this.formatNativeUrl(e,t,n);let r=e;r.endsWith("/")||(r=`${r}/`),this.setWalletConnectDeepLink(r,n);return`${r}wc?uri=${encodeURIComponent(t)}`},wait:async e=>new Promise((t=>{setTimeout(t,e)})),openHref(e,t){window.open(e,t,"noreferrer noopener")},setWalletConnectDeepLink(e,t){try{localStorage.setItem(i.WALLETCONNECT_DEEPLINK_CHOICE,JSON.stringify({href:e,name:t}))}catch{console.info("Unable to set WalletConnect deep link")}},setWalletConnectAndroidDeepLink(e){try{const[t]=e.split("?");localStorage.setItem(i.WALLETCONNECT_DEEPLINK_CHOICE,JSON.stringify({href:t,name:"Android"}))}catch{console.info("Unable to set WalletConnect android deep link")}},removeWalletConnectDeepLink(){try{localStorage.removeItem(i.WALLETCONNECT_DEEPLINK_CHOICE)}catch{console.info("Unable to remove WalletConnect deep link")}},setModalVersionInStorage(){try{typeof localStorage<"u"&&localStorage.setItem(i.WCM_VERSION,"2.6.2")}catch{console.info("Unable to set Web3Modal version in storage")}},getWalletRouterData(){var e;const t=null==(e=s.state.data)?void 0:e.Wallet;if(!t)throw new Error('Missing "Wallet" view data');return t}},a=typeof location<"u"&&(location.hostname.includes("localhost")||location.protocol.includes("https")),l=Object(r.proxy)({enabled:a,userSessionId:"",events:[],connectedWalletId:void 0}),c={state:l,subscribe:e=>Object(r.subscribe)(l.events,(()=>e(Object(r.snapshot)(l.events[l.events.length-1])))),initialize(){l.enabled&&typeof(null==crypto?void 0:crypto.randomUUID)<"u"&&(l.userSessionId=crypto.randomUUID())},setConnectedWalletId(e){l.connectedWalletId=e},click(e){if(l.enabled){const t={type:"CLICK",name:e.name,userSessionId:l.userSessionId,timestamp:Date.now(),data:e};l.events.push(t)}},track(e){if(l.enabled){const t={type:"TRACK",name:e.name,userSessionId:l.userSessionId,timestamp:Date.now(),data:e};l.events.push(t)}},view(e){if(l.enabled){const t={type:"VIEW",name:e.name,userSessionId:l.userSessionId,timestamp:Date.now(),data:e};l.events.push(t)}}},u=Object(r.proxy)({chains:void 0,walletConnectUri:void 0,isAuth:!1,isCustomDesktop:!1,isCustomMobile:!1,isDataLoaded:!1,isUiLoaded:!1}),d={state:u,subscribe:e=>Object(r.subscribe)(u,(()=>e(u))),setChains(e){u.chains=e},setWalletConnectUri(e){u.walletConnectUri=e},setIsCustomDesktop(e){u.isCustomDesktop=e},setIsCustomMobile(e){u.isCustomMobile=e},setIsDataLoaded(e){u.isDataLoaded=e},setIsUiLoaded(e){u.isUiLoaded=e},setIsAuth(e){u.isAuth=e}},f=Object(r.proxy)({projectId:"",mobileWallets:void 0,desktopWallets:void 0,walletImages:void 0,chains:void 0,enableAuthMode:!1,enableExplorer:!0,explorerExcludedWalletIds:void 0,explorerRecommendedWalletIds:void 0,termsOfServiceUrl:void 0,privacyPolicyUrl:void 0}),p={state:f,subscribe:e=>Object(r.subscribe)(f,(()=>e(f))),setConfig(e){var t,n;c.initialize(),d.setChains(e.chains),d.setIsAuth(Boolean(e.enableAuthMode)),d.setIsCustomMobile(Boolean(null==(t=e.mobileWallets)?void 0:t.length)),d.setIsCustomDesktop(Boolean(null==(n=e.desktopWallets)?void 0:n.length)),i.setModalVersionInStorage(),Object.assign(f,e)}};var g=Object.defineProperty,b=Object.getOwnPropertySymbols,h=Object.prototype.hasOwnProperty,v=Object.prototype.propertyIsEnumerable,y=(e,t,n)=>t in e?g(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;const m="https://explorer-api.walletconnect.com",w="wcm",O="js-2.6.2";async function I(e,t){const n=((e,t)=>{for(var n in t||(t={}))h.call(t,n)&&y(e,n,t[n]);if(b)for(var n of b(t))v.call(t,n)&&y(e,n,t[n]);return e})({sdkType:w,sdkVersion:O},t),r=new URL(e,m);return r.searchParams.append("projectId",p.state.projectId),Object.entries(n).forEach((e=>{let[t,n]=e;n&&r.searchParams.append(t,String(n))})),(await fetch(r)).json()}const j={getDesktopListings:async e=>I("/w3m/v1/getDesktopListings",e),getMobileListings:async e=>I("/w3m/v1/getMobileListings",e),getInjectedListings:async e=>I("/w3m/v1/getInjectedListings",e),getAllListings:async e=>I("/w3m/v1/getAllListings",e),getWalletImageUrl:e=>`${m}/w3m/v1/getWalletImage/${e}?projectId=${p.state.projectId}&sdkType=${w}&sdkVersion=${O}`,getAssetImageUrl:e=>`${m}/w3m/v1/getAssetImage/${e}?projectId=${p.state.projectId}&sdkType=${w}&sdkVersion=${O}`};var C=Object.defineProperty,W=Object.getOwnPropertySymbols,E=Object.prototype.hasOwnProperty,L=Object.prototype.propertyIsEnumerable,k=(e,t,n)=>t in e?C(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;const A=i.isMobile(),P=Object(r.proxy)({wallets:{listings:[],total:0,page:1},search:{listings:[],total:0,page:1},recomendedWallets:[]}),D={state:P,async getRecomendedWallets(){const{explorerRecommendedWalletIds:e,explorerExcludedWalletIds:t}=p.state;if("NONE"===e||"ALL"===t&&!e)return P.recomendedWallets;if(i.isArray(e)){const t={recommendedIds:e.join(",")},{listings:n}=await j.getAllListings(t),r=Object.values(n);r.sort(((t,n)=>e.indexOf(t.id)-e.indexOf(n.id))),P.recomendedWallets=r}else{const{chains:e,isAuth:n}=d.state,r=null===e||void 0===e?void 0:e.join(","),o=i.isArray(t),s={page:1,sdks:n?"auth_v1":void 0,entries:i.RECOMMENDED_WALLET_AMOUNT,chains:r,version:2,excludedIds:o?t.join(","):void 0},{listings:a}=A?await j.getMobileListings(s):await j.getDesktopListings(s);P.recomendedWallets=Object.values(a)}return P.recomendedWallets},async getWallets(e){const t=((e,t)=>{for(var n in t||(t={}))E.call(t,n)&&k(e,n,t[n]);if(W)for(var n of W(t))L.call(t,n)&&k(e,n,t[n]);return e})({},e),{explorerRecommendedWalletIds:n,explorerExcludedWalletIds:r}=p.state,{recomendedWallets:o}=P;if("ALL"===r)return P.wallets;o.length?t.excludedIds=o.map((e=>e.id)).join(","):i.isArray(n)&&(t.excludedIds=n.join(",")),i.isArray(r)&&(t.excludedIds=[t.excludedIds,r].filter(Boolean).join(",")),d.state.isAuth&&(t.sdks="auth_v1");const{page:s,search:a}=e,{listings:l,total:c}=A?await j.getMobileListings(t):await j.getDesktopListings(t),u=Object.values(l),f=a?"search":"wallets";return P[f]={listings:[...P[f].listings,...u],total:c,page:null!==s&&void 0!==s?s:1},{listings:u,total:c}},getWalletImageUrl:e=>j.getWalletImageUrl(e),getAssetImageUrl:e=>j.getAssetImageUrl(e),resetSearch(){P.search={listings:[],total:0,page:1}}},M=Object(r.proxy)({open:!1}),U={state:M,subscribe:e=>Object(r.subscribe)(M,(()=>e(M))),open:async e=>new Promise((t=>{const{isUiLoaded:n,isDataLoaded:r}=d.state;if(i.removeWalletConnectDeepLink(),d.setWalletConnectUri(null===e||void 0===e?void 0:e.uri),d.setChains(null===e||void 0===e?void 0:e.chains),s.reset("ConnectWallet"),n&&r)M.open=!0,t();else{const e=setInterval((()=>{const n=d.state;n.isUiLoaded&&n.isDataLoaded&&(clearInterval(e),M.open=!0,t())}),200)}})),close(){M.open=!1}};var S=Object.defineProperty,x=Object.getOwnPropertySymbols,R=Object.prototype.hasOwnProperty,T=Object.prototype.propertyIsEnumerable,N=(e,t,n)=>t in e?S(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;const _=Object(r.proxy)({themeMode:typeof matchMedia<"u"&&matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}),$={state:_,subscribe:e=>Object(r.subscribe)(_,(()=>e(_))),setThemeConfig(e){const{themeMode:t,themeVariables:n}=e;t&&(_.themeMode=t),n&&(_.themeVariables=((e,t)=>{for(var n in t||(t={}))R.call(t,n)&&N(e,n,t[n]);if(x)for(var n of x(t))T.call(t,n)&&N(e,n,t[n]);return e})({},n))}},K=Object(r.proxy)({open:!1,message:"",variant:"success"}),V={state:K,subscribe:e=>Object(r.subscribe)(K,(()=>e(K))),openToast(e,t){K.open=!0,K.message=e,K.variant=t},closeToast(){K.open=!1}}},1259:function(e,t,n){"use strict";var r=n(1260),o=function(e){return"object"===typeof e&&null!==e},s=new WeakMap,i=new WeakSet,a=function(e,t,n,a,l,c,u,d,f){return void 0===e&&(e=Object.is),void 0===t&&(t=function(e,t){return new Proxy(e,t)}),void 0===n&&(n=function(e){return o(e)&&!i.has(e)&&(Array.isArray(e)||!(Symbol.iterator in e))&&!(e instanceof WeakMap)&&!(e instanceof WeakSet)&&!(e instanceof Error)&&!(e instanceof Number)&&!(e instanceof Date)&&!(e instanceof String)&&!(e instanceof RegExp)&&!(e instanceof ArrayBuffer)}),void 0===a&&(a=function(e){switch(e.status){case"fulfilled":return e.value;case"rejected":throw e.reason;default:throw e}}),void 0===l&&(l=new WeakMap),void 0===c&&(c=function(e){function t(t,n,r){return e.apply(this,arguments)}return t.toString=function(){return e.toString()},t}((function(e,t,n){void 0===n&&(n=a);var o=l.get(e);if((null==o?void 0:o[0])===t)return o[1];var u=Array.isArray(e)?[]:Object.create(Object.getPrototypeOf(e));return r.markToTrack(u,!0),l.set(e,[t,u]),Reflect.ownKeys(e).forEach((function(t){if(!Object.getOwnPropertyDescriptor(u,t)){var o=Reflect.get(e,t),a={value:o,enumerable:!0,configurable:!0};if(i.has(o))r.markToTrack(o,!1);else if(o instanceof Promise)delete a.value,a.get=function(){return n(o)};else if(s.has(o)){var l=s.get(o),d=l[0],f=l[1];a.value=c(d,f(),n)}Object.defineProperty(u,t,a)}})),Object.preventExtensions(u)}))),void 0===u&&(u=new WeakMap),void 0===d&&(d=[1,1]),void 0===f&&(f=function(a){if(!o(a))throw new Error("object required");var l=u.get(a);if(l)return l;var p=d[0],g=new Set,b=function(e,t){void 0===t&&(t=++d[0]),p!==t&&(p=t,g.forEach((function(n){return n(e,t)})))},h=d[1],v=function(e){return function(t,n){var r=[].concat(t);r[1]=[e].concat(r[1]),b(r,n)}},y=new Map,m=function(e){var t,n=y.get(e);n&&(y.delete(e),null==(t=n[1])||t.call(n))},w=Array.isArray(a)?[]:Object.create(Object.getPrototypeOf(a)),O=t(w,{deleteProperty:function(e,t){var n=Reflect.get(e,t);m(t);var r=Reflect.deleteProperty(e,t);return r&&b(["delete",[t],n]),r},set:function(t,a,l,c){var d=Reflect.has(t,a),p=Reflect.get(t,a,c);if(d&&(e(p,l)||u.has(l)&&e(p,u.get(l))))return!0;m(a),o(l)&&(l=r.getUntracked(l)||l);var h=l;if(l instanceof Promise)l.then((function(e){l.status="fulfilled",l.value=e,b(["resolve",[a],e])})).catch((function(e){l.status="rejected",l.reason=e,b(["reject",[a],e])}));else{!s.has(l)&&n(l)&&(h=f(l));var w=!i.has(h)&&s.get(h);w&&function(e,t){if(g.size){var n=t[3](v(e));y.set(e,[t,n])}else y.set(e,[t])}(a,w)}return Reflect.set(t,a,h,c),b(["set",[a],l,p]),!0}});u.set(a,O);var I=[w,function(e){return void 0===e&&(e=++d[1]),h===e||g.size||(h=e,y.forEach((function(t){var n=t[0][1](e);n>p&&(p=n)}))),p},c,function(e){g.add(e),1===g.size&&y.forEach((function(e,t){var n=e[0];e[1];var r=n[3](v(t));y.set(t,[n,r])}));return function(){g.delete(e),0===g.size&&y.forEach((function(e,t){var n=e[0],r=e[1];r&&(r(),y.set(t,[n]))}))}}];return s.set(O,I),Reflect.ownKeys(a).forEach((function(e){var t=Object.getOwnPropertyDescriptor(a,e);"value"in t&&(O[e]=a[e],delete t.value,delete t.writable),Object.defineProperty(w,e,t)})),O}),[f,s,i,e,t,n,a,l,c,u,d]},l=a()[0];var c=a;t.getVersion=function(e){var t=s.get(e);return null==t?void 0:t[1]()},t.proxy=function(e){return void 0===e&&(e={}),l(e)},t.ref=function(e){return i.add(e),e},t.snapshot=function(e,t){var n=s.get(e),r=n[0],o=n[1];return(0,n[2])(r,o(),t)},t.subscribe=function(e,t,n){var r,o=s.get(e),i=[],a=o[3],l=!1,c=a((function(e){i.push(e),n?t(i.splice(0)):r||(r=Promise.resolve().then((function(){r=void 0,l&&t(i.splice(0))})))}));return l=!0,function(){l=!1,c()}},t.unstable_buildProxyFunction=c},1260:function(e,t,n){"use strict";n.r(t),n.d(t,"affectedToPathList",(function(){return m})),n.d(t,"createProxy",(function(){return g})),n.d(t,"getUntracked",(function(){return v})),n.d(t,"isChanged",(function(){return b})),n.d(t,"markToTrack",(function(){return y})),n.d(t,"replaceNewProxy",(function(){return w})),n.d(t,"trackMemo",(function(){return h}));const r=Symbol(),o=Symbol(),s="a",i="w";let a=(e,t)=>new Proxy(e,t);const l=Object.getPrototypeOf,c=new WeakMap,u=e=>e&&(c.has(e)?c.get(e):l(e)===Object.prototype||l(e)===Array.prototype),d=e=>"object"==typeof e&&null!==e,f=e=>{if(Array.isArray(e))return Array.from(e);const t=Object.getOwnPropertyDescriptors(e);return Object.values(t).forEach((e=>{e.configurable=!0})),Object.create(l(e),t)},p=e=>e[o]||e,g=(e,t,n,l)=>{if(!u(e))return e;let c=l&&l.get(e);if(!c){const t=p(e);c=(e=>Object.values(Object.getOwnPropertyDescriptors(e)).some((e=>!e.configurable&&!e.writable)))(t)?[t,f(t)]:[t],null==l||l.set(e,c)}const[d,b]=c;let h=n&&n.get(d);return h&&h[1].f===!!b||(h=((e,t)=>{const n={f:t};let a=!1;const l=(t,r)=>{if(!a){let o=n[s].get(e);if(o||(o={},n[s].set(e,o)),t===i)o[i]=!0;else{let e=o[t];e||(e=new Set,o[t]=e),e.add(r)}}},c={get:(t,r)=>r===o?e:(l("k",r),g(Reflect.get(t,r),n[s],n.c,n.t)),has:(t,o)=>o===r?(a=!0,n[s].delete(e),!0):(l("h",o),Reflect.has(t,o)),getOwnPropertyDescriptor:(e,t)=>(l("o",t),Reflect.getOwnPropertyDescriptor(e,t)),ownKeys:e=>(l(i),Reflect.ownKeys(e))};return t&&(c.set=c.deleteProperty=()=>!1),[c,n]})(d,!!b),h[1].p=a(b||d,h[0]),n&&n.set(d,h)),h[1][s]=t,h[1].c=n,h[1].t=l,h[1].p},b=(e,t,n,r)=>{if(Object.is(e,t))return!1;if(!d(e)||!d(t))return!0;const o=n.get(p(e));if(!o)return!0;if(r){const n=r.get(e);if(n&&n.n===t)return n.g;r.set(e,{n:t,g:!1})}let s=null;try{for(const n of o.h||[])if(s=Reflect.has(e,n)!==Reflect.has(t,n),s)return s;if(!0===o[i]){if(s=((e,t)=>{const n=Reflect.ownKeys(e),r=Reflect.ownKeys(t);return n.length!==r.length||n.some(((e,t)=>e!==r[t]))})(e,t),s)return s}else for(const n of o.o||[])if(s=!!Reflect.getOwnPropertyDescriptor(e,n)!=!!Reflect.getOwnPropertyDescriptor(t,n),s)return s;for(const i of o.k||[])if(s=b(e[i],t[i],n,r),s)return s;return null===s&&(s=!0),s}finally{r&&r.set(e,{n:t,g:s})}},h=e=>!!u(e)&&r in e,v=e=>u(e)&&e[o]||null,y=function(e){let t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];c.set(e,t)},m=(e,t,n)=>{const r=[],o=new WeakSet,s=(e,a)=>{if(o.has(e))return;d(e)&&o.add(e);const l=d(e)&&t.get(p(e));if(l){var c,u;if(null==(c=l.h)||c.forEach((e=>{const t=`:has(${String(e)})`;r.push(a?[...a,t]:[t])})),!0===l[i]){const e=":ownKeys";r.push(a?[...a,e]:[e])}else{var f;null==(f=l.o)||f.forEach((e=>{const t=`:hasOwn(${String(e)})`;r.push(a?[...a,t]:[t])}))}null==(u=l.k)||u.forEach((t=>{n&&!("value"in(Object.getOwnPropertyDescriptor(e,t)||{}))||s(e[t],a?[...a,t]:[t])}))}else a&&r.push(a)};return s(e),r},w=e=>{a=e}}}]);
2
- //# sourceMappingURL=5.254a29b0.chunk.js.map
1
+ (this["webpackJsonp@dcl/explorer-website"]=this["webpackJsonp@dcl/explorer-website"]||[]).push([[5],{1159:function(e,t,n){"use strict";n.r(t),n.d(t,"WalletConnectModal",(function(){return o}));var r=n(1293);class o{constructor(e){this.openModal=r.e.open,this.closeModal=r.e.close,this.subscribeModal=r.e.subscribe,this.setTheme=r.h.setThemeConfig,r.h.setThemeConfig(e),r.a.setConfig(e),this.initUi()}async initUi(){if(typeof window<"u"){await n.e(4).then(n.bind(null,1401));const e=document.createElement("wcm-modal");document.body.insertAdjacentElement("beforeend",e),r.f.setIsUiLoaded(!0)}}}},1293:function(e,t,n){"use strict";n.d(t,"a",(function(){return p})),n.d(t,"b",(function(){return i})),n.d(t,"c",(function(){return c})),n.d(t,"d",(function(){return D})),n.d(t,"e",(function(){return U})),n.d(t,"f",(function(){return d})),n.d(t,"g",(function(){return s})),n.d(t,"h",(function(){return $})),n.d(t,"i",(function(){return V}));var r=n(1377);const o=Object(r.proxy)({history:["ConnectWallet"],view:"ConnectWallet",data:void 0}),s={state:o,subscribe:e=>Object(r.subscribe)(o,(()=>e(o))),push(e,t){e!==o.view&&(o.view=e,t&&(o.data=t),o.history.push(e))},reset(e){o.view=e,o.history=[e]},replace(e){o.history.length>1&&(o.history[o.history.length-1]=e,o.view=e)},goBack(){if(o.history.length>1){o.history.pop();const[e]=o.history.slice(-1);o.view=e}},setData(e){o.data=e}},i={WALLETCONNECT_DEEPLINK_CHOICE:"WALLETCONNECT_DEEPLINK_CHOICE",WCM_VERSION:"WCM_VERSION",RECOMMENDED_WALLET_AMOUNT:9,isMobile:()=>typeof window<"u"&&Boolean(window.matchMedia("(pointer:coarse)").matches||/Android|webOS|iPhone|iPad|iPod|BlackBerry|Opera Mini/u.test(navigator.userAgent)),isAndroid:()=>i.isMobile()&&navigator.userAgent.toLowerCase().includes("android"),isIos(){const e=navigator.userAgent.toLowerCase();return i.isMobile()&&(e.includes("iphone")||e.includes("ipad"))},isHttpUrl:e=>e.startsWith("http://")||e.startsWith("https://"),isArray:e=>Array.isArray(e)&&e.length>0,formatNativeUrl(e,t,n){if(i.isHttpUrl(e))return this.formatUniversalUrl(e,t,n);let r=e;r.includes("://")||(r=e.replaceAll("/","").replaceAll(":",""),r=`${r}://`),r.endsWith("/")||(r=`${r}/`),this.setWalletConnectDeepLink(r,n);return`${r}wc?uri=${encodeURIComponent(t)}`},formatUniversalUrl(e,t,n){if(!i.isHttpUrl(e))return this.formatNativeUrl(e,t,n);let r=e;r.endsWith("/")||(r=`${r}/`),this.setWalletConnectDeepLink(r,n);return`${r}wc?uri=${encodeURIComponent(t)}`},wait:async e=>new Promise((t=>{setTimeout(t,e)})),openHref(e,t){window.open(e,t,"noreferrer noopener")},setWalletConnectDeepLink(e,t){try{localStorage.setItem(i.WALLETCONNECT_DEEPLINK_CHOICE,JSON.stringify({href:e,name:t}))}catch{console.info("Unable to set WalletConnect deep link")}},setWalletConnectAndroidDeepLink(e){try{const[t]=e.split("?");localStorage.setItem(i.WALLETCONNECT_DEEPLINK_CHOICE,JSON.stringify({href:t,name:"Android"}))}catch{console.info("Unable to set WalletConnect android deep link")}},removeWalletConnectDeepLink(){try{localStorage.removeItem(i.WALLETCONNECT_DEEPLINK_CHOICE)}catch{console.info("Unable to remove WalletConnect deep link")}},setModalVersionInStorage(){try{typeof localStorage<"u"&&localStorage.setItem(i.WCM_VERSION,"2.6.2")}catch{console.info("Unable to set Web3Modal version in storage")}},getWalletRouterData(){var e;const t=null==(e=s.state.data)?void 0:e.Wallet;if(!t)throw new Error('Missing "Wallet" view data');return t}},a=typeof location<"u"&&(location.hostname.includes("localhost")||location.protocol.includes("https")),l=Object(r.proxy)({enabled:a,userSessionId:"",events:[],connectedWalletId:void 0}),c={state:l,subscribe:e=>Object(r.subscribe)(l.events,(()=>e(Object(r.snapshot)(l.events[l.events.length-1])))),initialize(){l.enabled&&typeof(null==crypto?void 0:crypto.randomUUID)<"u"&&(l.userSessionId=crypto.randomUUID())},setConnectedWalletId(e){l.connectedWalletId=e},click(e){if(l.enabled){const t={type:"CLICK",name:e.name,userSessionId:l.userSessionId,timestamp:Date.now(),data:e};l.events.push(t)}},track(e){if(l.enabled){const t={type:"TRACK",name:e.name,userSessionId:l.userSessionId,timestamp:Date.now(),data:e};l.events.push(t)}},view(e){if(l.enabled){const t={type:"VIEW",name:e.name,userSessionId:l.userSessionId,timestamp:Date.now(),data:e};l.events.push(t)}}},u=Object(r.proxy)({chains:void 0,walletConnectUri:void 0,isAuth:!1,isCustomDesktop:!1,isCustomMobile:!1,isDataLoaded:!1,isUiLoaded:!1}),d={state:u,subscribe:e=>Object(r.subscribe)(u,(()=>e(u))),setChains(e){u.chains=e},setWalletConnectUri(e){u.walletConnectUri=e},setIsCustomDesktop(e){u.isCustomDesktop=e},setIsCustomMobile(e){u.isCustomMobile=e},setIsDataLoaded(e){u.isDataLoaded=e},setIsUiLoaded(e){u.isUiLoaded=e},setIsAuth(e){u.isAuth=e}},f=Object(r.proxy)({projectId:"",mobileWallets:void 0,desktopWallets:void 0,walletImages:void 0,chains:void 0,enableAuthMode:!1,enableExplorer:!0,explorerExcludedWalletIds:void 0,explorerRecommendedWalletIds:void 0,termsOfServiceUrl:void 0,privacyPolicyUrl:void 0}),p={state:f,subscribe:e=>Object(r.subscribe)(f,(()=>e(f))),setConfig(e){var t,n;c.initialize(),d.setChains(e.chains),d.setIsAuth(Boolean(e.enableAuthMode)),d.setIsCustomMobile(Boolean(null==(t=e.mobileWallets)?void 0:t.length)),d.setIsCustomDesktop(Boolean(null==(n=e.desktopWallets)?void 0:n.length)),i.setModalVersionInStorage(),Object.assign(f,e)}};var g=Object.defineProperty,b=Object.getOwnPropertySymbols,h=Object.prototype.hasOwnProperty,v=Object.prototype.propertyIsEnumerable,y=(e,t,n)=>t in e?g(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;const m="https://explorer-api.walletconnect.com",w="wcm",O="js-2.6.2";async function I(e,t){const n=((e,t)=>{for(var n in t||(t={}))h.call(t,n)&&y(e,n,t[n]);if(b)for(var n of b(t))v.call(t,n)&&y(e,n,t[n]);return e})({sdkType:w,sdkVersion:O},t),r=new URL(e,m);return r.searchParams.append("projectId",p.state.projectId),Object.entries(n).forEach((e=>{let[t,n]=e;n&&r.searchParams.append(t,String(n))})),(await fetch(r)).json()}const j={getDesktopListings:async e=>I("/w3m/v1/getDesktopListings",e),getMobileListings:async e=>I("/w3m/v1/getMobileListings",e),getInjectedListings:async e=>I("/w3m/v1/getInjectedListings",e),getAllListings:async e=>I("/w3m/v1/getAllListings",e),getWalletImageUrl:e=>`${m}/w3m/v1/getWalletImage/${e}?projectId=${p.state.projectId}&sdkType=${w}&sdkVersion=${O}`,getAssetImageUrl:e=>`${m}/w3m/v1/getAssetImage/${e}?projectId=${p.state.projectId}&sdkType=${w}&sdkVersion=${O}`};var C=Object.defineProperty,W=Object.getOwnPropertySymbols,E=Object.prototype.hasOwnProperty,L=Object.prototype.propertyIsEnumerable,k=(e,t,n)=>t in e?C(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;const A=i.isMobile(),P=Object(r.proxy)({wallets:{listings:[],total:0,page:1},search:{listings:[],total:0,page:1},recomendedWallets:[]}),D={state:P,async getRecomendedWallets(){const{explorerRecommendedWalletIds:e,explorerExcludedWalletIds:t}=p.state;if("NONE"===e||"ALL"===t&&!e)return P.recomendedWallets;if(i.isArray(e)){const t={recommendedIds:e.join(",")},{listings:n}=await j.getAllListings(t),r=Object.values(n);r.sort(((t,n)=>e.indexOf(t.id)-e.indexOf(n.id))),P.recomendedWallets=r}else{const{chains:e,isAuth:n}=d.state,r=null===e||void 0===e?void 0:e.join(","),o=i.isArray(t),s={page:1,sdks:n?"auth_v1":void 0,entries:i.RECOMMENDED_WALLET_AMOUNT,chains:r,version:2,excludedIds:o?t.join(","):void 0},{listings:a}=A?await j.getMobileListings(s):await j.getDesktopListings(s);P.recomendedWallets=Object.values(a)}return P.recomendedWallets},async getWallets(e){const t=((e,t)=>{for(var n in t||(t={}))E.call(t,n)&&k(e,n,t[n]);if(W)for(var n of W(t))L.call(t,n)&&k(e,n,t[n]);return e})({},e),{explorerRecommendedWalletIds:n,explorerExcludedWalletIds:r}=p.state,{recomendedWallets:o}=P;if("ALL"===r)return P.wallets;o.length?t.excludedIds=o.map((e=>e.id)).join(","):i.isArray(n)&&(t.excludedIds=n.join(",")),i.isArray(r)&&(t.excludedIds=[t.excludedIds,r].filter(Boolean).join(",")),d.state.isAuth&&(t.sdks="auth_v1");const{page:s,search:a}=e,{listings:l,total:c}=A?await j.getMobileListings(t):await j.getDesktopListings(t),u=Object.values(l),f=a?"search":"wallets";return P[f]={listings:[...P[f].listings,...u],total:c,page:null!==s&&void 0!==s?s:1},{listings:u,total:c}},getWalletImageUrl:e=>j.getWalletImageUrl(e),getAssetImageUrl:e=>j.getAssetImageUrl(e),resetSearch(){P.search={listings:[],total:0,page:1}}},M=Object(r.proxy)({open:!1}),U={state:M,subscribe:e=>Object(r.subscribe)(M,(()=>e(M))),open:async e=>new Promise((t=>{const{isUiLoaded:n,isDataLoaded:r}=d.state;if(i.removeWalletConnectDeepLink(),d.setWalletConnectUri(null===e||void 0===e?void 0:e.uri),d.setChains(null===e||void 0===e?void 0:e.chains),s.reset("ConnectWallet"),n&&r)M.open=!0,t();else{const e=setInterval((()=>{const n=d.state;n.isUiLoaded&&n.isDataLoaded&&(clearInterval(e),M.open=!0,t())}),200)}})),close(){M.open=!1}};var S=Object.defineProperty,x=Object.getOwnPropertySymbols,R=Object.prototype.hasOwnProperty,T=Object.prototype.propertyIsEnumerable,N=(e,t,n)=>t in e?S(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;const _=Object(r.proxy)({themeMode:typeof matchMedia<"u"&&matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}),$={state:_,subscribe:e=>Object(r.subscribe)(_,(()=>e(_))),setThemeConfig(e){const{themeMode:t,themeVariables:n}=e;t&&(_.themeMode=t),n&&(_.themeVariables=((e,t)=>{for(var n in t||(t={}))R.call(t,n)&&N(e,n,t[n]);if(x)for(var n of x(t))T.call(t,n)&&N(e,n,t[n]);return e})({},n))}},K=Object(r.proxy)({open:!1,message:"",variant:"success"}),V={state:K,subscribe:e=>Object(r.subscribe)(K,(()=>e(K))),openToast(e,t){K.open=!0,K.message=e,K.variant=t},closeToast(){K.open=!1}}},1377:function(e,t,n){"use strict";var r=n(1378),o=function(e){return"object"===typeof e&&null!==e},s=new WeakMap,i=new WeakSet,a=function(e,t,n,a,l,c,u,d,f){return void 0===e&&(e=Object.is),void 0===t&&(t=function(e,t){return new Proxy(e,t)}),void 0===n&&(n=function(e){return o(e)&&!i.has(e)&&(Array.isArray(e)||!(Symbol.iterator in e))&&!(e instanceof WeakMap)&&!(e instanceof WeakSet)&&!(e instanceof Error)&&!(e instanceof Number)&&!(e instanceof Date)&&!(e instanceof String)&&!(e instanceof RegExp)&&!(e instanceof ArrayBuffer)}),void 0===a&&(a=function(e){switch(e.status){case"fulfilled":return e.value;case"rejected":throw e.reason;default:throw e}}),void 0===l&&(l=new WeakMap),void 0===c&&(c=function(e){function t(t,n,r){return e.apply(this,arguments)}return t.toString=function(){return e.toString()},t}((function(e,t,n){void 0===n&&(n=a);var o=l.get(e);if((null==o?void 0:o[0])===t)return o[1];var u=Array.isArray(e)?[]:Object.create(Object.getPrototypeOf(e));return r.markToTrack(u,!0),l.set(e,[t,u]),Reflect.ownKeys(e).forEach((function(t){if(!Object.getOwnPropertyDescriptor(u,t)){var o=Reflect.get(e,t),a={value:o,enumerable:!0,configurable:!0};if(i.has(o))r.markToTrack(o,!1);else if(o instanceof Promise)delete a.value,a.get=function(){return n(o)};else if(s.has(o)){var l=s.get(o),d=l[0],f=l[1];a.value=c(d,f(),n)}Object.defineProperty(u,t,a)}})),Object.preventExtensions(u)}))),void 0===u&&(u=new WeakMap),void 0===d&&(d=[1,1]),void 0===f&&(f=function(a){if(!o(a))throw new Error("object required");var l=u.get(a);if(l)return l;var p=d[0],g=new Set,b=function(e,t){void 0===t&&(t=++d[0]),p!==t&&(p=t,g.forEach((function(n){return n(e,t)})))},h=d[1],v=function(e){return function(t,n){var r=[].concat(t);r[1]=[e].concat(r[1]),b(r,n)}},y=new Map,m=function(e){var t,n=y.get(e);n&&(y.delete(e),null==(t=n[1])||t.call(n))},w=Array.isArray(a)?[]:Object.create(Object.getPrototypeOf(a)),O=t(w,{deleteProperty:function(e,t){var n=Reflect.get(e,t);m(t);var r=Reflect.deleteProperty(e,t);return r&&b(["delete",[t],n]),r},set:function(t,a,l,c){var d=Reflect.has(t,a),p=Reflect.get(t,a,c);if(d&&(e(p,l)||u.has(l)&&e(p,u.get(l))))return!0;m(a),o(l)&&(l=r.getUntracked(l)||l);var h=l;if(l instanceof Promise)l.then((function(e){l.status="fulfilled",l.value=e,b(["resolve",[a],e])})).catch((function(e){l.status="rejected",l.reason=e,b(["reject",[a],e])}));else{!s.has(l)&&n(l)&&(h=f(l));var w=!i.has(h)&&s.get(h);w&&function(e,t){if(g.size){var n=t[3](v(e));y.set(e,[t,n])}else y.set(e,[t])}(a,w)}return Reflect.set(t,a,h,c),b(["set",[a],l,p]),!0}});u.set(a,O);var I=[w,function(e){return void 0===e&&(e=++d[1]),h===e||g.size||(h=e,y.forEach((function(t){var n=t[0][1](e);n>p&&(p=n)}))),p},c,function(e){g.add(e),1===g.size&&y.forEach((function(e,t){var n=e[0];e[1];var r=n[3](v(t));y.set(t,[n,r])}));return function(){g.delete(e),0===g.size&&y.forEach((function(e,t){var n=e[0],r=e[1];r&&(r(),y.set(t,[n]))}))}}];return s.set(O,I),Reflect.ownKeys(a).forEach((function(e){var t=Object.getOwnPropertyDescriptor(a,e);"value"in t&&(O[e]=a[e],delete t.value,delete t.writable),Object.defineProperty(w,e,t)})),O}),[f,s,i,e,t,n,a,l,c,u,d]},l=a()[0];var c=a;t.getVersion=function(e){var t=s.get(e);return null==t?void 0:t[1]()},t.proxy=function(e){return void 0===e&&(e={}),l(e)},t.ref=function(e){return i.add(e),e},t.snapshot=function(e,t){var n=s.get(e),r=n[0],o=n[1];return(0,n[2])(r,o(),t)},t.subscribe=function(e,t,n){var r,o=s.get(e),i=[],a=o[3],l=!1,c=a((function(e){i.push(e),n?t(i.splice(0)):r||(r=Promise.resolve().then((function(){r=void 0,l&&t(i.splice(0))})))}));return l=!0,function(){l=!1,c()}},t.unstable_buildProxyFunction=c},1378:function(e,t,n){"use strict";n.r(t),n.d(t,"affectedToPathList",(function(){return m})),n.d(t,"createProxy",(function(){return g})),n.d(t,"getUntracked",(function(){return v})),n.d(t,"isChanged",(function(){return b})),n.d(t,"markToTrack",(function(){return y})),n.d(t,"replaceNewProxy",(function(){return w})),n.d(t,"trackMemo",(function(){return h}));const r=Symbol(),o=Symbol(),s="a",i="w";let a=(e,t)=>new Proxy(e,t);const l=Object.getPrototypeOf,c=new WeakMap,u=e=>e&&(c.has(e)?c.get(e):l(e)===Object.prototype||l(e)===Array.prototype),d=e=>"object"==typeof e&&null!==e,f=e=>{if(Array.isArray(e))return Array.from(e);const t=Object.getOwnPropertyDescriptors(e);return Object.values(t).forEach((e=>{e.configurable=!0})),Object.create(l(e),t)},p=e=>e[o]||e,g=(e,t,n,l)=>{if(!u(e))return e;let c=l&&l.get(e);if(!c){const t=p(e);c=(e=>Object.values(Object.getOwnPropertyDescriptors(e)).some((e=>!e.configurable&&!e.writable)))(t)?[t,f(t)]:[t],null==l||l.set(e,c)}const[d,b]=c;let h=n&&n.get(d);return h&&h[1].f===!!b||(h=((e,t)=>{const n={f:t};let a=!1;const l=(t,r)=>{if(!a){let o=n[s].get(e);if(o||(o={},n[s].set(e,o)),t===i)o[i]=!0;else{let e=o[t];e||(e=new Set,o[t]=e),e.add(r)}}},c={get:(t,r)=>r===o?e:(l("k",r),g(Reflect.get(t,r),n[s],n.c,n.t)),has:(t,o)=>o===r?(a=!0,n[s].delete(e),!0):(l("h",o),Reflect.has(t,o)),getOwnPropertyDescriptor:(e,t)=>(l("o",t),Reflect.getOwnPropertyDescriptor(e,t)),ownKeys:e=>(l(i),Reflect.ownKeys(e))};return t&&(c.set=c.deleteProperty=()=>!1),[c,n]})(d,!!b),h[1].p=a(b||d,h[0]),n&&n.set(d,h)),h[1][s]=t,h[1].c=n,h[1].t=l,h[1].p},b=(e,t,n,r)=>{if(Object.is(e,t))return!1;if(!d(e)||!d(t))return!0;const o=n.get(p(e));if(!o)return!0;if(r){const n=r.get(e);if(n&&n.n===t)return n.g;r.set(e,{n:t,g:!1})}let s=null;try{for(const n of o.h||[])if(s=Reflect.has(e,n)!==Reflect.has(t,n),s)return s;if(!0===o[i]){if(s=((e,t)=>{const n=Reflect.ownKeys(e),r=Reflect.ownKeys(t);return n.length!==r.length||n.some(((e,t)=>e!==r[t]))})(e,t),s)return s}else for(const n of o.o||[])if(s=!!Reflect.getOwnPropertyDescriptor(e,n)!=!!Reflect.getOwnPropertyDescriptor(t,n),s)return s;for(const i of o.k||[])if(s=b(e[i],t[i],n,r),s)return s;return null===s&&(s=!0),s}finally{r&&r.set(e,{n:t,g:s})}},h=e=>!!u(e)&&r in e,v=e=>u(e)&&e[o]||null,y=function(e){let t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];c.set(e,t)},m=(e,t,n)=>{const r=[],o=new WeakSet,s=(e,a)=>{if(o.has(e))return;d(e)&&o.add(e);const l=d(e)&&t.get(p(e));if(l){var c,u;if(null==(c=l.h)||c.forEach((e=>{const t=`:has(${String(e)})`;r.push(a?[...a,t]:[t])})),!0===l[i]){const e=":ownKeys";r.push(a?[...a,e]:[e])}else{var f;null==(f=l.o)||f.forEach((e=>{const t=`:hasOwn(${String(e)})`;r.push(a?[...a,t]:[t])}))}null==(u=l.k)||u.forEach((t=>{n&&!("value"in(Object.getOwnPropertyDescriptor(e,t)||{}))||s(e[t],a?[...a,t]:[t])}))}else a&&r.push(a)};return s(e),r},w=e=>{a=e}}}]);
2
+ //# sourceMappingURL=5.a0b2335a.chunk.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/client.ts","../../src/controllers/RouterCtrl.ts","../../src/utils/CoreUtil.ts","../../src/controllers/EventsCtrl.ts","../../src/controllers/OptionsCtrl.ts","../../src/controllers/ConfigCtrl.ts","../../src/utils/ExplorerUtil.ts","../../src/controllers/ExplorerCtrl.ts","../../src/controllers/ModalCtrl.ts","../../src/controllers/ThemeCtrl.ts","../../src/controllers/ToastCtrl.ts","../node_modules/valtio/vanilla.js","../../src/index.ts"],"names":["constructor","config","openModal","ModalCtrl","open","closeModal","close","subscribeModal","subscribe","setTheme","ThemeCtrl","setThemeConfig","ConfigCtrl","setConfig","this","initUi","window","modal","document","createElement","body","insertAdjacentElement","OptionsCtrl","setIsUiLoaded","state","proxy","history","view","data","RouterCtrl","callback","valtioSub","push","reset","replace","length","goBack","pop","last","slice","setData","CoreUtil","WALLETCONNECT_DEEPLINK_CHOICE","WCM_VERSION","RECOMMENDED_WALLET_AMOUNT","isMobile","Boolean","matchMedia","matches","test","navigator","userAgent","isAndroid","toLowerCase","includes","isIos","ua","isHttpUrl","url","startsWith","isArray","Array","formatNativeUrl","appUrl","wcUri","name","formatUniversalUrl","safeAppUrl","replaceAll","endsWith","setWalletConnectDeepLink","encodeURIComponent","async","wait","miliseconds","Promise","resolve","setTimeout","openHref","href","target","localStorage","setItem","JSON","stringify","console","info","setWalletConnectAndroidDeepLink","split","removeWalletConnectDeepLink","removeItem","setModalVersionInStorage","getWalletRouterData","routerData","_a","Wallet","Error","isEnabled","location","hostname","protocol","enabled","userSessionId","events","connectedWalletId","EventsCtrl","snapshot","initialize","crypto","randomUUID","setConnectedWalletId","click","event","type","timestamp","Date","now","track","chains","walletConnectUri","isAuth","isCustomDesktop","isCustomMobile","isDataLoaded","isUiLoaded","setChains","setWalletConnectUri","setIsCustomDesktop","setIsCustomMobile","setIsDataLoaded","setIsAuth","projectId","mobileWallets","desktopWallets","walletImages","enableAuthMode","enableExplorer","explorerExcludedWalletIds","explorerRecommendedWalletIds","termsOfServiceUrl","privacyPolicyUrl","_b","Object","assign","p","I","P","m","enumerable","configurable","writable","value","W3M_API","SDK_TYPE","SDK_VERSION","fetchListings","endpoint","params","allParams","l","__spreadValues","sdkType","sdkVersion","URL","searchParams","append","entries","forEach","key","String","fetch","json","getDesktopListings","getMobileListings","getInjectedListings","getAllListings","getWalletImageUrl","imageId","getAssetImageUrl","u","h","y","x","wallets","listings","total","page","search","recomendedWallets","ExplorerCtrl","recommendedIds","join","ExplorerUtil","listingsArr","values","sort","a","b","indexOf","id","chainsFilter","isExcluded","sdks","version","excludedIds","extendedParams","f","map","wallet","filter","listingsObj","resetSearch","options","uri","interval","setInterval","opts","clearInterval","c","themeMode","theme","themeVariables","s","message","variant","ToastCtrl","openToast","closeToast","proxyCompare","require","isObject","proxyStateMap","WeakMap","refSet","WeakSet","buildProxyFunction","objectIs","newProxy","canProxy","defaultHandlePromise","snapCache","createSnapshot","proxyCache","versionHolder","_proxyFunction","is","handler","Proxy","has","Symbol","iterator","Number","RegExp","ArrayBuffer","promise","status","reason","_createSnapshot","_x","_x2","_x3","apply","arguments","toString","handlePromise","cache","get","snap","create","getPrototypeOf","markToTrack","set","Reflect","ownKeys","getOwnPropertyDescriptor","desc","_ref","_target","_ensureVersion","defineProperty","preventExtensions","initialObject","found","listeners","Set","notifyUpdate","op","nextVersion","listener","checkVersion","createPropListener","prop","newOp","concat","propProxyStates","Map","removePropListener","_entry$","entry","delete","call","baseObject","proxyObject","deleteProperty","prevValue","deleted","receiver","hasPrevValue","getUntracked","nextValue","then","v","catch","e","childProxyState","propProxyState","size","remove","addPropListener","proxyState","nextCheckVersion","_ref2","propVersion","add","_ref3","_ref4","defaultProxyFunction","unstable_buildProxyFunction","exports","getVersion","ref","obj","_ref5","ensureVersion","notifyInSync","ops","addListener","isListenerActive","removeListener","splice","undefined","TRACK_MEMO_SYMBOL","GET_ORIGINAL_SYMBOL","AFFECTED_PROPERTY","ALL_OWN_KEYS_PROPERTY","getProto","objectsToTrack","isObjectToTrack","prototype","copyTargetObject","from","descriptors","getOwnPropertyDescriptors","getOriginalObject","createProxy","affected","targetCache","targetAndCopied","some","descriptor","copiedTarget","handlerAndState","createProxyHandler","origObj","isTargetCopied","trackObject","recordUsage","used","t","isChanged","prevObj","nextObj","hit","n","g","changed","isAllOwnKeysChanged","prevKeys","nextKeys","k","i","o","trackMemo","mark","affectedToPathList","onlyWithValues","list","seen","walk","path","_used$HAS_KEY_PROPERT","segment","_used$HAS_OWN_KEY_PRO","_used$KEYS_PROPERTY","replaceNewProxy","fn"],"mappings":"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","file":"static/js/5.254a29b0.chunk.js","sourcesContent":["import type { ConfigCtrlState, ThemeCtrlState } from '@walletconnect/modal-core'\nimport { ConfigCtrl, ModalCtrl, OptionsCtrl, ThemeCtrl } from '@walletconnect/modal-core'\n\n/**\n * Types\n */\nexport type WalletConnectModalConfig = ConfigCtrlState & ThemeCtrlState\n\n/**\n * Client\n */\nexport class WalletConnectModal {\n public constructor(config: WalletConnectModalConfig) {\n ThemeCtrl.setThemeConfig(config)\n ConfigCtrl.setConfig(config)\n this.initUi()\n }\n\n private async initUi() {\n if (typeof window !== 'undefined') {\n await import('@walletconnect/modal-ui')\n const modal = document.createElement('wcm-modal')\n document.body.insertAdjacentElement('beforeend', modal)\n OptionsCtrl.setIsUiLoaded(true)\n }\n }\n\n public openModal = ModalCtrl.open\n\n public closeModal = ModalCtrl.close\n\n public subscribeModal = ModalCtrl.subscribe\n\n public setTheme = ThemeCtrl.setThemeConfig\n}\n","import { proxy, subscribe as valtioSub } from 'valtio/vanilla'\nimport type { RouterCtrlState } from '../types/controllerTypes'\n\n// -- initial state ------------------------------------------------ //\nconst state = proxy<RouterCtrlState>({\n history: ['ConnectWallet'],\n view: 'ConnectWallet',\n data: undefined\n})\n\n// -- controller --------------------------------------------------- //\nexport const RouterCtrl = {\n state,\n\n subscribe(callback: (newState: RouterCtrlState) => void) {\n return valtioSub(state, () => callback(state))\n },\n\n push(view: RouterCtrlState['view'], data?: RouterCtrlState['data']) {\n if (view !== state.view) {\n state.view = view\n if (data) {\n state.data = data\n }\n state.history.push(view)\n }\n },\n\n reset(view: RouterCtrlState['view']) {\n state.view = view\n state.history = [view]\n },\n\n replace(view: RouterCtrlState['view']) {\n if (state.history.length > 1) {\n state.history[state.history.length - 1] = view\n state.view = view\n }\n },\n\n goBack() {\n if (state.history.length > 1) {\n state.history.pop()\n const [last] = state.history.slice(-1)\n state.view = last\n }\n },\n\n setData(data: RouterCtrlState['data']) {\n state.data = data\n }\n}\n","import { RouterCtrl } from '../controllers/RouterCtrl'\n\nexport const CoreUtil = {\n WALLETCONNECT_DEEPLINK_CHOICE: 'WALLETCONNECT_DEEPLINK_CHOICE',\n\n WCM_VERSION: 'WCM_VERSION',\n\n RECOMMENDED_WALLET_AMOUNT: 9,\n\n isMobile() {\n if (typeof window !== 'undefined') {\n return Boolean(\n window.matchMedia('(pointer:coarse)').matches ||\n /Android|webOS|iPhone|iPad|iPod|BlackBerry|Opera Mini/u.test(navigator.userAgent)\n )\n }\n\n return false\n },\n\n isAndroid() {\n return CoreUtil.isMobile() && navigator.userAgent.toLowerCase().includes('android')\n },\n\n isIos() {\n const ua = navigator.userAgent.toLowerCase()\n\n return CoreUtil.isMobile() && (ua.includes('iphone') || ua.includes('ipad'))\n },\n\n isHttpUrl(url: string) {\n return url.startsWith('http://') || url.startsWith('https://')\n },\n\n isArray<T>(data?: T | T[]): data is T[] {\n return Array.isArray(data) && data.length > 0\n },\n\n formatNativeUrl(appUrl: string, wcUri: string, name: string): string {\n if (CoreUtil.isHttpUrl(appUrl)) {\n return this.formatUniversalUrl(appUrl, wcUri, name)\n }\n let safeAppUrl = appUrl\n if (!safeAppUrl.includes('://')) {\n safeAppUrl = appUrl.replaceAll('/', '').replaceAll(':', '')\n safeAppUrl = `${safeAppUrl}://`\n }\n if (!safeAppUrl.endsWith('/')) {\n safeAppUrl = `${safeAppUrl}/`\n }\n this.setWalletConnectDeepLink(safeAppUrl, name)\n const encodedWcUrl = encodeURIComponent(wcUri)\n\n return `${safeAppUrl}wc?uri=${encodedWcUrl}`\n },\n\n formatUniversalUrl(appUrl: string, wcUri: string, name: string): string {\n if (!CoreUtil.isHttpUrl(appUrl)) {\n return this.formatNativeUrl(appUrl, wcUri, name)\n }\n let safeAppUrl = appUrl\n if (!safeAppUrl.endsWith('/')) {\n safeAppUrl = `${safeAppUrl}/`\n }\n this.setWalletConnectDeepLink(safeAppUrl, name)\n const encodedWcUrl = encodeURIComponent(wcUri)\n\n return `${safeAppUrl}wc?uri=${encodedWcUrl}`\n },\n\n async wait(miliseconds: number) {\n return new Promise(resolve => {\n setTimeout(resolve, miliseconds)\n })\n },\n\n openHref(href: string, target: '_blank' | '_self') {\n window.open(href, target, 'noreferrer noopener')\n },\n\n setWalletConnectDeepLink(href: string, name: string) {\n try {\n localStorage.setItem(CoreUtil.WALLETCONNECT_DEEPLINK_CHOICE, JSON.stringify({ href, name }))\n } catch {\n console.info('Unable to set WalletConnect deep link')\n }\n },\n\n setWalletConnectAndroidDeepLink(wcUri: string) {\n try {\n const [href] = wcUri.split('?')\n localStorage.setItem(\n CoreUtil.WALLETCONNECT_DEEPLINK_CHOICE,\n JSON.stringify({ href, name: 'Android' })\n )\n } catch {\n console.info('Unable to set WalletConnect android deep link')\n }\n },\n\n removeWalletConnectDeepLink() {\n try {\n localStorage.removeItem(CoreUtil.WALLETCONNECT_DEEPLINK_CHOICE)\n } catch {\n console.info('Unable to remove WalletConnect deep link')\n }\n },\n\n setModalVersionInStorage() {\n try {\n if (typeof localStorage !== 'undefined') {\n localStorage.setItem(CoreUtil.WCM_VERSION, process.env.ROLLUP_WCM_VERSION ?? 'UNKNOWN')\n }\n } catch {\n console.info('Unable to set Web3Modal version in storage')\n }\n },\n\n getWalletRouterData() {\n const routerData = RouterCtrl.state.data?.Wallet\n if (!routerData) {\n throw new Error('Missing \"Wallet\" view data')\n }\n\n return routerData\n }\n}\n","import { proxy, snapshot, subscribe as valtioSub } from 'valtio/vanilla'\nimport type { EventsCtrlState, ModalEvent, ModalEventData } from '../types/controllerTypes'\n\n// -- helpers ------------------------------------------------------ //\nconst isEnabled =\n typeof location !== 'undefined' &&\n (location.hostname.includes('localhost') || location.protocol.includes('https'))\n\n// -- initial state ------------------------------------------------ //\nconst state = proxy<EventsCtrlState>({\n enabled: isEnabled,\n userSessionId: '',\n events: [],\n connectedWalletId: undefined\n})\n\n// -- controller --------------------------------------------------- //\nexport const EventsCtrl = {\n state,\n\n subscribe(callback: (newEvent: ModalEvent) => void) {\n return valtioSub(state.events, () => callback(snapshot(state.events[state.events.length - 1])))\n },\n\n initialize() {\n if (state.enabled && typeof crypto?.randomUUID !== 'undefined') {\n state.userSessionId = crypto.randomUUID()\n }\n },\n\n setConnectedWalletId(connectedWalletId: EventsCtrlState['connectedWalletId']) {\n state.connectedWalletId = connectedWalletId\n },\n\n click(data: ModalEventData) {\n if (state.enabled) {\n const event = {\n type: 'CLICK' as const,\n name: data.name,\n userSessionId: state.userSessionId,\n timestamp: Date.now(),\n data\n }\n state.events.push(event)\n }\n },\n\n track(data: ModalEventData) {\n if (state.enabled) {\n const event = {\n type: 'TRACK' as const,\n name: data.name,\n userSessionId: state.userSessionId,\n timestamp: Date.now(),\n data\n }\n state.events.push(event)\n }\n },\n\n view(data: ModalEventData) {\n if (state.enabled) {\n const event = {\n type: 'VIEW' as const,\n name: data.name,\n userSessionId: state.userSessionId,\n timestamp: Date.now(),\n data\n }\n state.events.push(event)\n }\n }\n}\n","import { proxy, subscribe as valtioSub } from 'valtio/vanilla'\nimport type { OptionsCtrlState } from '../types/controllerTypes'\n\n// -- initial state ------------------------------------------------ //\nconst state = proxy<OptionsCtrlState>({\n chains: undefined,\n walletConnectUri: undefined,\n isAuth: false,\n isCustomDesktop: false,\n isCustomMobile: false,\n isDataLoaded: false,\n isUiLoaded: false\n})\n\n// -- controller --------------------------------------------------- //\nexport const OptionsCtrl = {\n state,\n\n subscribe(callback: (newState: OptionsCtrlState) => void) {\n return valtioSub(state, () => callback(state))\n },\n\n setChains(chains: OptionsCtrlState['chains']) {\n state.chains = chains\n },\n\n setWalletConnectUri(walletConnectUri: OptionsCtrlState['walletConnectUri']) {\n state.walletConnectUri = walletConnectUri\n },\n\n setIsCustomDesktop(isCustomDesktop: OptionsCtrlState['isCustomDesktop']) {\n state.isCustomDesktop = isCustomDesktop\n },\n\n setIsCustomMobile(isCustomMobile: OptionsCtrlState['isCustomMobile']) {\n state.isCustomMobile = isCustomMobile\n },\n\n setIsDataLoaded(isDataLoaded: OptionsCtrlState['isDataLoaded']) {\n state.isDataLoaded = isDataLoaded\n },\n\n setIsUiLoaded(isUiLoaded: OptionsCtrlState['isUiLoaded']) {\n state.isUiLoaded = isUiLoaded\n },\n\n setIsAuth(isAuth: OptionsCtrlState['isAuth']) {\n state.isAuth = isAuth\n }\n}\n","import { proxy, subscribe as valtioSub } from 'valtio/vanilla'\nimport type { ConfigCtrlState } from '../types/controllerTypes'\nimport { CoreUtil } from '../utils/CoreUtil'\nimport { EventsCtrl } from './EventsCtrl'\nimport { OptionsCtrl } from './OptionsCtrl'\n\nconst state = proxy<ConfigCtrlState>({\n projectId: '',\n mobileWallets: undefined,\n desktopWallets: undefined,\n walletImages: undefined,\n chains: undefined,\n enableAuthMode: false,\n enableExplorer: true,\n explorerExcludedWalletIds: undefined,\n explorerRecommendedWalletIds: undefined,\n termsOfServiceUrl: undefined,\n privacyPolicyUrl: undefined\n})\n\n// -- controller --------------------------------------------------- //\nexport const ConfigCtrl = {\n state,\n\n subscribe(callback: (newState: ConfigCtrlState) => void) {\n return valtioSub(state, () => callback(state))\n },\n\n setConfig(config: ConfigCtrlState) {\n EventsCtrl.initialize()\n OptionsCtrl.setChains(config.chains)\n OptionsCtrl.setIsAuth(Boolean(config.enableAuthMode))\n OptionsCtrl.setIsCustomMobile(Boolean(config.mobileWallets?.length))\n OptionsCtrl.setIsCustomDesktop(Boolean(config.desktopWallets?.length))\n\n CoreUtil.setModalVersionInStorage()\n\n Object.assign(state, config)\n }\n}\n","import { ConfigCtrl } from '../controllers/ConfigCtrl'\nimport type { ListingParams, ListingResponse } from '../types/controllerTypes'\n\n// -- Helpers -------------------------------------------------------\nconst W3M_API = 'https://explorer-api.walletconnect.com'\nconst SDK_TYPE = 'wcm'\nconst SDK_VERSION = `js-${process.env.ROLLUP_WCM_VERSION}`\n\nasync function fetchListings(endpoint: string, params: ListingParams) {\n const allParams = { sdkType: SDK_TYPE, sdkVersion: SDK_VERSION, ...params }\n const url = new URL(endpoint, W3M_API)\n url.searchParams.append('projectId', ConfigCtrl.state.projectId)\n Object.entries(allParams).forEach(([key, value]) => {\n if (value) {\n url.searchParams.append(key, String(value))\n }\n })\n const request = await fetch(url)\n\n return request.json() as Promise<ListingResponse>\n}\n\n// -- Utility -------------------------------------------------------\nexport const ExplorerUtil = {\n async getDesktopListings(params: ListingParams) {\n return fetchListings('/w3m/v1/getDesktopListings', params)\n },\n\n async getMobileListings(params: ListingParams) {\n return fetchListings('/w3m/v1/getMobileListings', params)\n },\n\n async getInjectedListings(params: ListingParams) {\n return fetchListings('/w3m/v1/getInjectedListings', params)\n },\n\n async getAllListings(params: ListingParams) {\n return fetchListings('/w3m/v1/getAllListings', params)\n },\n\n getWalletImageUrl(imageId: string) {\n return `${W3M_API}/w3m/v1/getWalletImage/${imageId}?projectId=${ConfigCtrl.state.projectId}&sdkType=${SDK_TYPE}&sdkVersion=${SDK_VERSION}`\n },\n\n getAssetImageUrl(imageId: string) {\n return `${W3M_API}/w3m/v1/getAssetImage/${imageId}?projectId=${ConfigCtrl.state.projectId}&sdkType=${SDK_TYPE}&sdkVersion=${SDK_VERSION}`\n }\n}\n","import { proxy } from 'valtio/vanilla'\nimport type { ExplorerCtrlState, ListingParams } from '../types/controllerTypes'\nimport { CoreUtil } from '../utils/CoreUtil'\nimport { ExplorerUtil } from '../utils/ExplorerUtil'\nimport { ConfigCtrl } from './ConfigCtrl'\nimport { OptionsCtrl } from './OptionsCtrl'\n\nconst isMobile = CoreUtil.isMobile()\n\n// -- initial state ------------------------------------------------ //\nconst state = proxy<ExplorerCtrlState>({\n wallets: { listings: [], total: 0, page: 1 },\n search: { listings: [], total: 0, page: 1 },\n recomendedWallets: []\n})\n\n// -- controller --------------------------------------------------- //\nexport const ExplorerCtrl = {\n state,\n\n async getRecomendedWallets() {\n const { explorerRecommendedWalletIds, explorerExcludedWalletIds } = ConfigCtrl.state\n\n // Don't fetch recomended wallets\n if (\n explorerRecommendedWalletIds === 'NONE' ||\n (explorerExcludedWalletIds === 'ALL' && !explorerRecommendedWalletIds)\n ) {\n return state.recomendedWallets\n }\n\n // Fetch only recomended wallets defined in config\n if (CoreUtil.isArray(explorerRecommendedWalletIds)) {\n const recommendedIds = explorerRecommendedWalletIds.join(',')\n const params = { recommendedIds }\n const { listings } = await ExplorerUtil.getAllListings(params)\n const listingsArr = Object.values(listings)\n listingsArr.sort((a, b) => {\n const aIndex = explorerRecommendedWalletIds.indexOf(a.id)\n const bIndex = explorerRecommendedWalletIds.indexOf(b.id)\n\n return aIndex - bIndex\n })\n state.recomendedWallets = listingsArr\n }\n\n // Fetch default recomended wallets based on user's device, options and excluded config\n else {\n const { chains, isAuth } = OptionsCtrl.state\n const chainsFilter = chains?.join(',')\n const isExcluded = CoreUtil.isArray(explorerExcludedWalletIds)\n const params = {\n page: 1,\n sdks: isAuth ? 'auth_v1' : undefined,\n entries: CoreUtil.RECOMMENDED_WALLET_AMOUNT,\n chains: chainsFilter,\n version: 2,\n excludedIds: isExcluded ? explorerExcludedWalletIds.join(',') : undefined\n }\n const { listings } = isMobile\n ? await ExplorerUtil.getMobileListings(params)\n : await ExplorerUtil.getDesktopListings(params)\n state.recomendedWallets = Object.values(listings)\n }\n\n return state.recomendedWallets\n },\n\n async getWallets(params: ListingParams) {\n const extendedParams: ListingParams = { ...params }\n const { explorerRecommendedWalletIds, explorerExcludedWalletIds } = ConfigCtrl.state\n const { recomendedWallets } = state\n\n // Don't fetch any wallets if all are excluded\n if (explorerExcludedWalletIds === 'ALL') {\n return state.wallets\n }\n\n // Don't fetch recomended wallets, as we already have these\n if (recomendedWallets.length) {\n extendedParams.excludedIds = recomendedWallets.map(wallet => wallet.id).join(',')\n } else if (CoreUtil.isArray(explorerRecommendedWalletIds)) {\n extendedParams.excludedIds = explorerRecommendedWalletIds.join(',')\n }\n\n // Don't fetch user defined excluded wallets & recomended wallets\n if (CoreUtil.isArray(explorerExcludedWalletIds)) {\n extendedParams.excludedIds = [extendedParams.excludedIds, explorerExcludedWalletIds]\n .filter(Boolean)\n .join(',')\n }\n\n // Fetch only auth wallets\n if (OptionsCtrl.state.isAuth) {\n extendedParams.sdks = 'auth_v1'\n }\n\n const { page, search } = params\n const { listings: listingsObj, total } = isMobile\n ? await ExplorerUtil.getMobileListings(extendedParams)\n : await ExplorerUtil.getDesktopListings(extendedParams)\n const listings = Object.values(listingsObj)\n const type = search ? 'search' : 'wallets'\n state[type] = {\n listings: [...state[type].listings, ...listings],\n total,\n page: page ?? 1\n }\n\n return { listings, total }\n },\n\n getWalletImageUrl(imageId: string) {\n return ExplorerUtil.getWalletImageUrl(imageId)\n },\n\n getAssetImageUrl(imageId: string) {\n return ExplorerUtil.getAssetImageUrl(imageId)\n },\n\n resetSearch() {\n state.search = { listings: [], total: 0, page: 1 }\n }\n}\n","import { proxy, subscribe as valtioSub } from 'valtio/vanilla'\nimport type { ModalCtrlState } from '../types/controllerTypes'\nimport { CoreUtil } from '../utils/CoreUtil'\nimport { OptionsCtrl } from './OptionsCtrl'\nimport { RouterCtrl } from './RouterCtrl'\n\n// -- types -------------------------------------------------------- //\nexport interface OpenOptions {\n uri: string\n chains?: string[]\n}\n\n// -- initial state ------------------------------------------------ //\nconst state = proxy<ModalCtrlState>({\n open: false\n})\n\n// -- controller --------------------------------------------------- //\nexport const ModalCtrl = {\n state,\n\n subscribe(callback: (newState: ModalCtrlState) => void) {\n return valtioSub(state, () => callback(state))\n },\n\n async open(options?: OpenOptions) {\n return new Promise<void>(resolve => {\n const { isUiLoaded, isDataLoaded } = OptionsCtrl.state\n CoreUtil.removeWalletConnectDeepLink()\n\n OptionsCtrl.setWalletConnectUri(options?.uri)\n OptionsCtrl.setChains(options?.chains)\n RouterCtrl.reset('ConnectWallet')\n\n // Open modal if essential async data is ready\n if (isUiLoaded && isDataLoaded) {\n state.open = true\n resolve()\n }\n // Otherwise (slow network) re-attempt open checks\n else {\n const interval = setInterval(() => {\n const opts = OptionsCtrl.state\n if (opts.isUiLoaded && opts.isDataLoaded) {\n clearInterval(interval)\n state.open = true\n resolve()\n }\n }, 200)\n }\n })\n },\n\n close() {\n state.open = false\n }\n}\n","import { proxy, subscribe as valtioSub } from 'valtio/vanilla'\nimport type { ThemeCtrlState } from '../types/controllerTypes'\n\n// -- initial state ------------------------------------------------ //\nfunction isDarkMode() {\n return typeof matchMedia !== 'undefined' && matchMedia('(prefers-color-scheme: dark)').matches\n}\n\nconst state = proxy<ThemeCtrlState>({\n themeMode: isDarkMode() ? 'dark' : 'light'\n})\n\n// -- controller --------------------------------------------------- //\nexport const ThemeCtrl = {\n state,\n\n subscribe(callback: (newState: ThemeCtrlState) => void) {\n return valtioSub(state, () => callback(state))\n },\n\n setThemeConfig(theme: ThemeCtrlState) {\n const { themeMode, themeVariables } = theme\n\n if (themeMode) {\n state.themeMode = themeMode\n }\n\n if (themeVariables) {\n state.themeVariables = { ...themeVariables }\n }\n }\n}\n","import { proxy, subscribe as valtioSub } from 'valtio/vanilla'\nimport type { ToastCtrlState } from '../types/controllerTypes'\n\n// -- initial state ------------------------------------------------ //\nconst state = proxy<ToastCtrlState>({\n open: false,\n message: '',\n variant: 'success'\n})\n\n// -- controller --------------------------------------------------- //\nexport const ToastCtrl = {\n state,\n\n subscribe(callback: (newState: ToastCtrlState) => void) {\n return valtioSub(state, () => callback(state))\n },\n\n openToast(message: ToastCtrlState['message'], variant: ToastCtrlState['variant']) {\n state.open = true\n state.message = message\n state.variant = variant\n },\n\n closeToast() {\n state.open = false\n }\n}\n","'use strict';\n\nvar proxyCompare = require('proxy-compare');\n\nvar isObject = function isObject(x) {\n return typeof x === 'object' && x !== null;\n};\nvar proxyStateMap = new WeakMap();\nvar refSet = new WeakSet();\nvar buildProxyFunction = function buildProxyFunction(objectIs, newProxy, canProxy, defaultHandlePromise, snapCache, createSnapshot, proxyCache, versionHolder, _proxyFunction) {\n if (objectIs === void 0) {\n objectIs = Object.is;\n }\n if (newProxy === void 0) {\n newProxy = function newProxy(target, handler) {\n return new Proxy(target, handler);\n };\n }\n if (canProxy === void 0) {\n canProxy = function canProxy(x) {\n return isObject(x) && !refSet.has(x) && (Array.isArray(x) || !(Symbol.iterator in x)) && !(x instanceof WeakMap) && !(x instanceof WeakSet) && !(x instanceof Error) && !(x instanceof Number) && !(x instanceof Date) && !(x instanceof String) && !(x instanceof RegExp) && !(x instanceof ArrayBuffer);\n };\n }\n if (defaultHandlePromise === void 0) {\n defaultHandlePromise = function defaultHandlePromise(promise) {\n switch (promise.status) {\n case 'fulfilled':\n return promise.value;\n case 'rejected':\n throw promise.reason;\n default:\n throw promise;\n }\n };\n }\n if (snapCache === void 0) {\n snapCache = new WeakMap();\n }\n if (createSnapshot === void 0) {\n createSnapshot = function (_createSnapshot) {\n function createSnapshot(_x, _x2, _x3) {\n return _createSnapshot.apply(this, arguments);\n }\n createSnapshot.toString = function () {\n return _createSnapshot.toString();\n };\n return createSnapshot;\n }(function (target, version, handlePromise) {\n if (handlePromise === void 0) {\n handlePromise = defaultHandlePromise;\n }\n var cache = snapCache.get(target);\n if ((cache == null ? void 0 : cache[0]) === version) {\n return cache[1];\n }\n var snap = Array.isArray(target) ? [] : Object.create(Object.getPrototypeOf(target));\n proxyCompare.markToTrack(snap, true);\n snapCache.set(target, [version, snap]);\n Reflect.ownKeys(target).forEach(function (key) {\n if (Object.getOwnPropertyDescriptor(snap, key)) {\n return;\n }\n var value = Reflect.get(target, key);\n var desc = {\n value: value,\n enumerable: true,\n configurable: true\n };\n if (refSet.has(value)) {\n proxyCompare.markToTrack(value, false);\n } else if (value instanceof Promise) {\n delete desc.value;\n desc.get = function () {\n return handlePromise(value);\n };\n } else if (proxyStateMap.has(value)) {\n var _ref = proxyStateMap.get(value),\n _target = _ref[0],\n _ensureVersion = _ref[1];\n desc.value = createSnapshot(_target, _ensureVersion(), handlePromise);\n }\n Object.defineProperty(snap, key, desc);\n });\n return Object.preventExtensions(snap);\n });\n }\n if (proxyCache === void 0) {\n proxyCache = new WeakMap();\n }\n if (versionHolder === void 0) {\n versionHolder = [1, 1];\n }\n if (_proxyFunction === void 0) {\n _proxyFunction = function proxyFunction(initialObject) {\n if (!isObject(initialObject)) {\n throw new Error('object required');\n }\n var found = proxyCache.get(initialObject);\n if (found) {\n return found;\n }\n var version = versionHolder[0];\n var listeners = new Set();\n var notifyUpdate = function notifyUpdate(op, nextVersion) {\n if (nextVersion === void 0) {\n nextVersion = ++versionHolder[0];\n }\n if (version !== nextVersion) {\n version = nextVersion;\n listeners.forEach(function (listener) {\n return listener(op, nextVersion);\n });\n }\n };\n var checkVersion = versionHolder[1];\n var ensureVersion = function ensureVersion(nextCheckVersion) {\n if (nextCheckVersion === void 0) {\n nextCheckVersion = ++versionHolder[1];\n }\n if (checkVersion !== nextCheckVersion && !listeners.size) {\n checkVersion = nextCheckVersion;\n propProxyStates.forEach(function (_ref2) {\n var propProxyState = _ref2[0];\n var propVersion = propProxyState[1](nextCheckVersion);\n if (propVersion > version) {\n version = propVersion;\n }\n });\n }\n return version;\n };\n var createPropListener = function createPropListener(prop) {\n return function (op, nextVersion) {\n var newOp = [].concat(op);\n newOp[1] = [prop].concat(newOp[1]);\n notifyUpdate(newOp, nextVersion);\n };\n };\n var propProxyStates = new Map();\n var addPropListener = function addPropListener(prop, propProxyState) {\n if (process.env.NODE_ENV !== 'production' && propProxyStates.has(prop)) {\n throw new Error('prop listener already exists');\n }\n if (listeners.size) {\n var remove = propProxyState[3](createPropListener(prop));\n propProxyStates.set(prop, [propProxyState, remove]);\n } else {\n propProxyStates.set(prop, [propProxyState]);\n }\n };\n var removePropListener = function removePropListener(prop) {\n var entry = propProxyStates.get(prop);\n if (entry) {\n var _entry$;\n propProxyStates.delete(prop);\n (_entry$ = entry[1]) == null ? void 0 : _entry$.call(entry);\n }\n };\n var addListener = function addListener(listener) {\n listeners.add(listener);\n if (listeners.size === 1) {\n propProxyStates.forEach(function (_ref3, prop) {\n var propProxyState = _ref3[0],\n prevRemove = _ref3[1];\n if (process.env.NODE_ENV !== 'production' && prevRemove) {\n throw new Error('remove already exists');\n }\n var remove = propProxyState[3](createPropListener(prop));\n propProxyStates.set(prop, [propProxyState, remove]);\n });\n }\n var removeListener = function removeListener() {\n listeners.delete(listener);\n if (listeners.size === 0) {\n propProxyStates.forEach(function (_ref4, prop) {\n var propProxyState = _ref4[0],\n remove = _ref4[1];\n if (remove) {\n remove();\n propProxyStates.set(prop, [propProxyState]);\n }\n });\n }\n };\n return removeListener;\n };\n var baseObject = Array.isArray(initialObject) ? [] : Object.create(Object.getPrototypeOf(initialObject));\n var handler = {\n deleteProperty: function deleteProperty(target, prop) {\n var prevValue = Reflect.get(target, prop);\n removePropListener(prop);\n var deleted = Reflect.deleteProperty(target, prop);\n if (deleted) {\n notifyUpdate(['delete', [prop], prevValue]);\n }\n return deleted;\n },\n set: function set(target, prop, value, receiver) {\n var hasPrevValue = Reflect.has(target, prop);\n var prevValue = Reflect.get(target, prop, receiver);\n if (hasPrevValue && (objectIs(prevValue, value) || proxyCache.has(value) && objectIs(prevValue, proxyCache.get(value)))) {\n return true;\n }\n removePropListener(prop);\n if (isObject(value)) {\n value = proxyCompare.getUntracked(value) || value;\n }\n var nextValue = value;\n if (value instanceof Promise) {\n value.then(function (v) {\n value.status = 'fulfilled';\n value.value = v;\n notifyUpdate(['resolve', [prop], v]);\n }).catch(function (e) {\n value.status = 'rejected';\n value.reason = e;\n notifyUpdate(['reject', [prop], e]);\n });\n } else {\n if (!proxyStateMap.has(value) && canProxy(value)) {\n nextValue = _proxyFunction(value);\n }\n var childProxyState = !refSet.has(nextValue) && proxyStateMap.get(nextValue);\n if (childProxyState) {\n addPropListener(prop, childProxyState);\n }\n }\n Reflect.set(target, prop, nextValue, receiver);\n notifyUpdate(['set', [prop], value, prevValue]);\n return true;\n }\n };\n var proxyObject = newProxy(baseObject, handler);\n proxyCache.set(initialObject, proxyObject);\n var proxyState = [baseObject, ensureVersion, createSnapshot, addListener];\n proxyStateMap.set(proxyObject, proxyState);\n Reflect.ownKeys(initialObject).forEach(function (key) {\n var desc = Object.getOwnPropertyDescriptor(initialObject, key);\n if ('value' in desc) {\n proxyObject[key] = initialObject[key];\n delete desc.value;\n delete desc.writable;\n }\n Object.defineProperty(baseObject, key, desc);\n });\n return proxyObject;\n };\n }\n return [_proxyFunction, proxyStateMap, refSet, objectIs, newProxy, canProxy, defaultHandlePromise, snapCache, createSnapshot, proxyCache, versionHolder];\n};\nvar _buildProxyFunction = buildProxyFunction(),\n defaultProxyFunction = _buildProxyFunction[0];\nfunction proxy(initialObject) {\n if (initialObject === void 0) {\n initialObject = {};\n }\n return defaultProxyFunction(initialObject);\n}\nfunction getVersion(proxyObject) {\n var proxyState = proxyStateMap.get(proxyObject);\n return proxyState == null ? void 0 : proxyState[1]();\n}\nfunction subscribe(proxyObject, callback, notifyInSync) {\n var proxyState = proxyStateMap.get(proxyObject);\n if (process.env.NODE_ENV !== 'production' && !proxyState) {\n console.warn('Please use proxy object');\n }\n var promise;\n var ops = [];\n var addListener = proxyState[3];\n var isListenerActive = false;\n var listener = function listener(op) {\n ops.push(op);\n if (notifyInSync) {\n callback(ops.splice(0));\n return;\n }\n if (!promise) {\n promise = Promise.resolve().then(function () {\n promise = undefined;\n if (isListenerActive) {\n callback(ops.splice(0));\n }\n });\n }\n };\n var removeListener = addListener(listener);\n isListenerActive = true;\n return function () {\n isListenerActive = false;\n removeListener();\n };\n}\nfunction snapshot(proxyObject, handlePromise) {\n var proxyState = proxyStateMap.get(proxyObject);\n if (process.env.NODE_ENV !== 'production' && !proxyState) {\n console.warn('Please use proxy object');\n }\n var _ref5 = proxyState,\n target = _ref5[0],\n ensureVersion = _ref5[1],\n createSnapshot = _ref5[2];\n return createSnapshot(target, ensureVersion(), handlePromise);\n}\nfunction ref(obj) {\n refSet.add(obj);\n return obj;\n}\nvar unstable_buildProxyFunction = buildProxyFunction;\n\nexports.getVersion = getVersion;\nexports.proxy = proxy;\nexports.ref = ref;\nexports.snapshot = snapshot;\nexports.subscribe = subscribe;\nexports.unstable_buildProxyFunction = unstable_buildProxyFunction;\n","// symbols\nconst TRACK_MEMO_SYMBOL = Symbol();\nconst GET_ORIGINAL_SYMBOL = Symbol();\n\n// properties\nconst AFFECTED_PROPERTY = 'a';\nconst IS_TARGET_COPIED_PROPERTY = 'f';\nconst PROXY_PROPERTY = 'p';\nconst PROXY_CACHE_PROPERTY = 'c';\nconst TARGET_CACHE_PROPERTY = 't';\nconst NEXT_OBJECT_PROPERTY = 'n';\nconst CHANGED_PROPERTY = 'g';\nconst HAS_KEY_PROPERTY = 'h';\nconst ALL_OWN_KEYS_PROPERTY = 'w';\nconst HAS_OWN_KEY_PROPERTY = 'o';\nconst KEYS_PROPERTY = 'k';\n\n// function to create a new bare proxy\nlet newProxy = <T extends object>(\n target: T,\n handler: ProxyHandler<T>,\n) => new Proxy(target, handler);\n\n// get object prototype\nconst getProto = Object.getPrototypeOf;\n\nconst objectsToTrack = new WeakMap<object, boolean>();\n\n// check if obj is a plain object or an array\nconst isObjectToTrack = <T>(obj: T): obj is T extends object ? T : never => (\n obj && (objectsToTrack.has(obj as unknown as object)\n ? objectsToTrack.get(obj as unknown as object) as boolean\n : (getProto(obj) === Object.prototype || getProto(obj) === Array.prototype)\n )\n);\n\n// check if it is object\nconst isObject = (x: unknown): x is object => (\n typeof x === 'object' && x !== null\n);\n\n// Properties that are both non-configurable and non-writable will break\n// the proxy get trap when we try to return a recursive/child compare proxy\n// from them. We can avoid this by making a copy of the target object with\n// all descriptors marked as configurable, see `copyTargetObject`.\n// See: https://github.com/dai-shi/proxy-compare/pull/8\nconst needsToCopyTargetObject = (obj: object) => (\n Object.values(Object.getOwnPropertyDescriptors(obj)).some(\n (descriptor) => !descriptor.configurable && !descriptor.writable,\n )\n);\n\n// Make a copy with all descriptors marked as configurable.\nconst copyTargetObject = <T extends object>(obj: T): T => {\n if (Array.isArray(obj)) {\n // Arrays need a special way to copy\n return Array.from(obj) as T;\n }\n // For non-array objects, we create a new object keeping the prototype\n // with changing all configurable options (otherwise, proxies will complain)\n const descriptors = Object.getOwnPropertyDescriptors(obj);\n Object.values(descriptors).forEach((desc) => { desc.configurable = true; });\n return Object.create(getProto(obj), descriptors);\n};\n\ntype HasKeySet = Set<string | symbol>\ntype HasOwnKeySet = Set<string | symbol>\ntype KeysSet = Set<string | symbol>\ntype Used = {\n [HAS_KEY_PROPERTY]?: HasKeySet;\n [ALL_OWN_KEYS_PROPERTY]?: true;\n [HAS_OWN_KEY_PROPERTY]?: HasOwnKeySet;\n [KEYS_PROPERTY]?: KeysSet;\n};\ntype Affected = WeakMap<object, Used>;\ntype ProxyHandlerState<T extends object> = {\n readonly [IS_TARGET_COPIED_PROPERTY]: boolean;\n [PROXY_PROPERTY]?: T;\n [PROXY_CACHE_PROPERTY]?: ProxyCache<object> | undefined;\n [TARGET_CACHE_PROPERTY]?: TargetCache<object> | undefined;\n [AFFECTED_PROPERTY]?: Affected;\n}\ntype ProxyCache<T extends object> = WeakMap<\n object,\n readonly [ProxyHandler<T>, ProxyHandlerState<T>]\n>;\ntype TargetCache<T extends object> = WeakMap<\n object,\n readonly [target: T, copiedTarget?: T]\n>;\n\nconst createProxyHandler = <T extends object>(origObj: T, isTargetCopied: boolean) => {\n const state: ProxyHandlerState<T> = {\n [IS_TARGET_COPIED_PROPERTY]: isTargetCopied,\n };\n let trackObject = false; // for trackMemo\n const recordUsage = (\n type:\n | typeof HAS_KEY_PROPERTY\n | typeof ALL_OWN_KEYS_PROPERTY\n | typeof HAS_OWN_KEY_PROPERTY\n | typeof KEYS_PROPERTY,\n key?: string | symbol,\n ) => {\n if (!trackObject) {\n let used = (state[AFFECTED_PROPERTY] as Affected).get(origObj);\n if (!used) {\n used = {};\n (state[AFFECTED_PROPERTY] as Affected).set(origObj, used);\n }\n if (type === ALL_OWN_KEYS_PROPERTY) {\n used[ALL_OWN_KEYS_PROPERTY] = true;\n } else {\n let set = used[type];\n if (!set) {\n set = new Set();\n used[type] = set;\n }\n set.add(key as string | symbol);\n }\n }\n };\n const recordObjectAsUsed = () => {\n trackObject = true;\n (state[AFFECTED_PROPERTY] as Affected).delete(origObj);\n };\n const handler: ProxyHandler<T> = {\n get(target, key) {\n if (key === GET_ORIGINAL_SYMBOL) {\n return origObj;\n }\n recordUsage(KEYS_PROPERTY, key);\n return createProxy(\n Reflect.get(target, key),\n (state[AFFECTED_PROPERTY] as Affected),\n state[PROXY_CACHE_PROPERTY],\n state[TARGET_CACHE_PROPERTY],\n );\n },\n has(target, key) {\n if (key === TRACK_MEMO_SYMBOL) {\n recordObjectAsUsed();\n return true;\n }\n recordUsage(HAS_KEY_PROPERTY, key);\n return Reflect.has(target, key);\n },\n getOwnPropertyDescriptor(target, key) {\n recordUsage(HAS_OWN_KEY_PROPERTY, key);\n return Reflect.getOwnPropertyDescriptor(target, key);\n },\n ownKeys(target) {\n recordUsage(ALL_OWN_KEYS_PROPERTY);\n return Reflect.ownKeys(target);\n },\n };\n if (isTargetCopied) {\n handler.set = handler.deleteProperty = () => false;\n }\n return [handler, state] as const;\n};\n\nconst getOriginalObject = <T extends object>(obj: T) => (\n // unwrap proxy\n (obj as { [GET_ORIGINAL_SYMBOL]?: typeof obj })[GET_ORIGINAL_SYMBOL]\n // otherwise\n || obj\n);\n\n/**\n * Create a proxy.\n *\n * This function will create a proxy at top level and proxy nested objects as you access them,\n * in order to keep track of which properties were accessed via get/has proxy handlers:\n *\n * NOTE: Printing of WeakMap is hard to inspect and not very readable\n * for this purpose you can use the `affectedToPathList` helper.\n *\n * @param {object} obj - Object that will be wrapped on the proxy.\n * @param {WeakMap<object, unknown>} affected -\n * WeakMap that will hold the tracking of which properties in the proxied object were accessed.\n * @param {WeakMap<object, unknown>} [proxyCache] -\n * WeakMap that will help keep referential identity for proxies.\n * @returns {Proxy<object>} - Object wrapped in a proxy.\n *\n * @example\n * import { createProxy } from 'proxy-compare';\n *\n * const original = { a: \"1\", c: \"2\", d: { e: \"3\" } };\n * const affected = new WeakMap();\n * const proxy = createProxy(original, affected);\n *\n * proxy.a // Will mark as used and track its value.\n * // This will update the affected WeakMap with original as key\n * // and a Set with \"a\"\n *\n * proxy.d // Will mark \"d\" as accessed to track and proxy itself ({ e: \"3\" }).\n * // This will update the affected WeakMap with original as key\n * // and a Set with \"d\"\n */\nexport const createProxy = <T>(\n obj: T,\n affected: WeakMap<object, unknown>,\n proxyCache?: WeakMap<object, unknown>,\n targetCache?: WeakMap<object, unknown>,\n): T => {\n if (!isObjectToTrack(obj)) return obj;\n let targetAndCopied = (\n targetCache && (targetCache as TargetCache<typeof obj>).get(obj)\n );\n if (!targetAndCopied) {\n const target = getOriginalObject(obj);\n if (needsToCopyTargetObject(target)) {\n targetAndCopied = [target, copyTargetObject(target)];\n } else {\n targetAndCopied = [target];\n }\n targetCache?.set(obj, targetAndCopied);\n }\n const [target, copiedTarget] = targetAndCopied;\n let handlerAndState = (\n proxyCache && (proxyCache as ProxyCache<typeof target>).get(target)\n );\n if (\n !handlerAndState\n || handlerAndState[1][IS_TARGET_COPIED_PROPERTY] !== !!copiedTarget\n ) {\n handlerAndState = createProxyHandler<typeof target>(target, !!copiedTarget);\n handlerAndState[1][PROXY_PROPERTY] = newProxy(\n copiedTarget || target,\n handlerAndState[0],\n );\n if (proxyCache) {\n proxyCache.set(target, handlerAndState);\n }\n }\n handlerAndState[1][AFFECTED_PROPERTY] = affected as Affected;\n handlerAndState[1][PROXY_CACHE_PROPERTY] = proxyCache as ProxyCache<object> | undefined;\n handlerAndState[1][TARGET_CACHE_PROPERTY] = targetCache as TargetCache<object> | undefined;\n return handlerAndState[1][PROXY_PROPERTY] as typeof target;\n};\n\nconst isAllOwnKeysChanged = (prevObj: object, nextObj: object) => {\n const prevKeys = Reflect.ownKeys(prevObj);\n const nextKeys = Reflect.ownKeys(nextObj);\n return prevKeys.length !== nextKeys.length\n || prevKeys.some((k, i) => k !== nextKeys[i]);\n};\n\ntype ChangedCache = WeakMap<object, {\n [NEXT_OBJECT_PROPERTY]: object;\n [CHANGED_PROPERTY]: boolean;\n}>;\n\n/**\n * Compare changes on objects.\n *\n * This will compare the affected properties on tracked objects inside the proxy\n * to check if there were any changes made to it,\n * by default if no property was accessed on the proxy it will attempt to do a\n * reference equality check for the objects provided (Object.is(a, b)). If you access a property\n * on the proxy, then isChanged will only compare the affected properties.\n *\n * @param {object} prevObj - The previous object to compare.\n * @param {object} nextObj - Object to compare with the previous one.\n * @param {WeakMap<object, unknown>} affected -\n * WeakMap that holds the tracking of which properties in the proxied object were accessed.\n * @param {WeakMap<object, unknown>} [cache] -\n * WeakMap that holds a cache of the comparisons for better performance with repetitive comparisons,\n * and to avoid infinite loop with circular structures.\n * @returns {boolean} - Boolean indicating if the affected property on the object has changed.\n *\n * @example\n * import { createProxy, isChanged } from 'proxy-compare';\n *\n * const obj = { a: \"1\", c: \"2\", d: { e: \"3\" } };\n * const affected = new WeakMap();\n *\n * const proxy = createProxy(obj, affected);\n *\n * proxy.a\n *\n * isChanged(obj, { a: \"1\" }, affected) // false\n *\n * proxy.a = \"2\"\n *\n * isChanged(obj, { a: \"1\" }, affected) // true\n */\n\nexport const isChanged = (\n prevObj: unknown,\n nextObj: unknown,\n affected: WeakMap<object, unknown>,\n cache?: WeakMap<object, unknown>,\n): boolean => {\n if (Object.is(prevObj, nextObj)) {\n return false;\n }\n if (!isObject(prevObj) || !isObject(nextObj)) return true;\n const used = (affected as Affected).get(getOriginalObject(prevObj));\n if (!used) return true;\n if (cache) {\n const hit = (cache as ChangedCache).get(prevObj);\n if (hit && hit[NEXT_OBJECT_PROPERTY] === nextObj) {\n return hit[CHANGED_PROPERTY];\n }\n // for object with cycles\n (cache as ChangedCache).set(prevObj, {\n [NEXT_OBJECT_PROPERTY]: nextObj,\n [CHANGED_PROPERTY]: false,\n });\n }\n let changed: boolean | null = null;\n try {\n for (const key of used[HAS_KEY_PROPERTY] || []) {\n changed = Reflect.has(prevObj, key) !== Reflect.has(nextObj, key);\n if (changed) return changed;\n }\n if (used[ALL_OWN_KEYS_PROPERTY] === true) {\n changed = isAllOwnKeysChanged(prevObj, nextObj);\n if (changed) return changed;\n } else {\n for (const key of used[HAS_OWN_KEY_PROPERTY] || []) {\n const hasPrev = !!Reflect.getOwnPropertyDescriptor(prevObj, key);\n const hasNext = !!Reflect.getOwnPropertyDescriptor(nextObj, key);\n changed = hasPrev !== hasNext;\n if (changed) return changed;\n }\n }\n for (const key of used[KEYS_PROPERTY] || []) {\n changed = isChanged(\n (prevObj as any)[key],\n (nextObj as any)[key],\n affected,\n cache,\n );\n if (changed) return changed;\n }\n if (changed === null) changed = true;\n return changed;\n } finally {\n if (cache) {\n cache.set(prevObj, {\n [NEXT_OBJECT_PROPERTY]: nextObj,\n [CHANGED_PROPERTY]: changed,\n });\n }\n }\n};\n\n// explicitly track object with memo\nexport const trackMemo = (obj: unknown) => {\n if (isObjectToTrack(obj)) {\n return TRACK_MEMO_SYMBOL in obj;\n }\n return false;\n};\n\n/**\n * Unwrap proxy to get the original object.\n *\n * Used to retrieve the original object used to create the proxy instance with `createProxy`.\n *\n * @param {Proxy<object>} obj - The proxy wrapper of the originial object.\n * @returns {object | null} - Return either the unwrapped object if exists.\n *\n * @example\n * import { createProxy, getUntracked } from 'proxy-compare';\n *\n * const original = { a: \"1\", c: \"2\", d: { e: \"3\" } };\n * const affected = new WeakMap();\n *\n * const proxy = createProxy(original, affected);\n * const originalFromProxy = getUntracked(proxy)\n *\n * Object.is(original, originalFromProxy) // true\n * isChanged(original, originalFromProxy, affected) // false\n */\nexport const getUntracked = <T>(obj: T): T | null => {\n if (isObjectToTrack(obj)) {\n return (obj as { [GET_ORIGINAL_SYMBOL]?: T })[GET_ORIGINAL_SYMBOL] || null;\n }\n return null;\n};\n\n/**\n * Mark object to be tracked.\n *\n * This function marks an object that will be passed into `createProxy`\n * as marked to track or not. By default only Array and Object are marked to track,\n * so this is useful for example to mark a class instance to track or to mark a object\n * to be untracked when creating your proxy.\n *\n * @param obj - Object to mark as tracked or not.\n * @param mark - Boolean indicating whether you want to track this object or not.\n * @returns - No return.\n *\n * @example\n * import { createProxy, markToTrack, isChanged } from 'proxy-compare';\n *\n * const nested = { e: \"3\" }\n *\n * markToTrack(nested, false)\n *\n * const original = { a: \"1\", c: \"2\", d: nested };\n * const affected = new WeakMap();\n *\n * const proxy = createProxy(original, affected);\n *\n * proxy.d.e\n *\n * isChanged(original, { d: { e: \"3\" } }, affected) // true\n */\nexport const markToTrack = (obj: object, mark = true) => {\n objectsToTrack.set(obj, mark);\n};\n\n/**\n * Convert `affected` to path list\n *\n * `affected` is a weak map which is not printable.\n * This function is can convert it to printable path list.\n * It's for debugging purpose.\n *\n * @param obj - An object that is used with `createProxy`.\n * @param affected - A weak map that is used with `createProxy`.\n * @param onlyWithValues - An optional boolean to exclude object getters.\n * @returns - An array of paths.\n */\nexport const affectedToPathList = (\n obj: unknown,\n affected: WeakMap<object, unknown>,\n onlyWithValues?: boolean,\n) => {\n const list: (string | symbol)[][] = [];\n const seen = new WeakSet();\n const walk = (x: unknown, path?: (string | symbol)[]) => {\n if (seen.has(x as object)) {\n // for object with cycles\n return;\n }\n if (isObject(x)) {\n seen.add(x);\n }\n const used = isObject(x) && (affected as Affected).get(getOriginalObject(x));\n if (used) {\n used[HAS_KEY_PROPERTY]?.forEach((key) => {\n const segment = `:has(${String(key)})`;\n list.push(path ? [...path, segment] : [segment]);\n });\n if (used[ALL_OWN_KEYS_PROPERTY] === true) {\n const segment = ':ownKeys';\n list.push(path ? [...path, segment] : [segment]);\n } else {\n used[HAS_OWN_KEY_PROPERTY]?.forEach((key) => {\n const segment = `:hasOwn(${String(key)})`;\n list.push(path ? [...path, segment] : [segment]);\n });\n }\n used[KEYS_PROPERTY]?.forEach((key) => {\n if (!onlyWithValues || 'value' in (Object.getOwnPropertyDescriptor(x, key) || {})) {\n walk((x as any)[key], path ? [...path, key] : [key]);\n }\n });\n } else if (path) {\n list.push(path);\n }\n };\n walk(obj);\n return list;\n};\n\n/**\n * replace newProxy function.\n *\n * This can be used if you want to use proxy-polyfill.\n * Note that proxy-polyfill can't polyfill everything.\n * Use it at your own risk.\n */\nexport const replaceNewProxy = (fn: typeof newProxy) => {\n newProxy = fn;\n};\n"],"sourceRoot":""}
1
+ {"version":3,"sources":["../../src/client.ts","../../src/controllers/RouterCtrl.ts","../../src/utils/CoreUtil.ts","../../src/controllers/EventsCtrl.ts","../../src/controllers/OptionsCtrl.ts","../../src/controllers/ConfigCtrl.ts","../../src/utils/ExplorerUtil.ts","../../src/controllers/ExplorerCtrl.ts","../../src/controllers/ModalCtrl.ts","../../src/controllers/ThemeCtrl.ts","../../src/controllers/ToastCtrl.ts","../node_modules/valtio/vanilla.js","../../src/index.ts"],"names":["constructor","config","openModal","ModalCtrl","open","closeModal","close","subscribeModal","subscribe","setTheme","ThemeCtrl","setThemeConfig","ConfigCtrl","setConfig","this","initUi","window","modal","document","createElement","body","insertAdjacentElement","OptionsCtrl","setIsUiLoaded","state","proxy","history","view","data","RouterCtrl","callback","valtioSub","push","reset","replace","length","goBack","pop","last","slice","setData","CoreUtil","WALLETCONNECT_DEEPLINK_CHOICE","WCM_VERSION","RECOMMENDED_WALLET_AMOUNT","isMobile","Boolean","matchMedia","matches","test","navigator","userAgent","isAndroid","toLowerCase","includes","isIos","ua","isHttpUrl","url","startsWith","isArray","Array","formatNativeUrl","appUrl","wcUri","name","formatUniversalUrl","safeAppUrl","replaceAll","endsWith","setWalletConnectDeepLink","encodeURIComponent","async","wait","miliseconds","Promise","resolve","setTimeout","openHref","href","target","localStorage","setItem","JSON","stringify","console","info","setWalletConnectAndroidDeepLink","split","removeWalletConnectDeepLink","removeItem","setModalVersionInStorage","getWalletRouterData","routerData","_a","Wallet","Error","isEnabled","location","hostname","protocol","enabled","userSessionId","events","connectedWalletId","EventsCtrl","snapshot","initialize","crypto","randomUUID","setConnectedWalletId","click","event","type","timestamp","Date","now","track","chains","walletConnectUri","isAuth","isCustomDesktop","isCustomMobile","isDataLoaded","isUiLoaded","setChains","setWalletConnectUri","setIsCustomDesktop","setIsCustomMobile","setIsDataLoaded","setIsAuth","projectId","mobileWallets","desktopWallets","walletImages","enableAuthMode","enableExplorer","explorerExcludedWalletIds","explorerRecommendedWalletIds","termsOfServiceUrl","privacyPolicyUrl","_b","Object","assign","p","I","P","m","enumerable","configurable","writable","value","W3M_API","SDK_TYPE","SDK_VERSION","fetchListings","endpoint","params","allParams","l","__spreadValues","sdkType","sdkVersion","URL","searchParams","append","entries","forEach","key","String","fetch","json","getDesktopListings","getMobileListings","getInjectedListings","getAllListings","getWalletImageUrl","imageId","getAssetImageUrl","u","h","y","x","wallets","listings","total","page","search","recomendedWallets","ExplorerCtrl","recommendedIds","join","ExplorerUtil","listingsArr","values","sort","a","b","indexOf","id","chainsFilter","isExcluded","sdks","version","excludedIds","extendedParams","f","map","wallet","filter","listingsObj","resetSearch","options","uri","interval","setInterval","opts","clearInterval","c","themeMode","theme","themeVariables","s","message","variant","ToastCtrl","openToast","closeToast","proxyCompare","require","isObject","proxyStateMap","WeakMap","refSet","WeakSet","buildProxyFunction","objectIs","newProxy","canProxy","defaultHandlePromise","snapCache","createSnapshot","proxyCache","versionHolder","_proxyFunction","is","handler","Proxy","has","Symbol","iterator","Number","RegExp","ArrayBuffer","promise","status","reason","_createSnapshot","_x","_x2","_x3","apply","arguments","toString","handlePromise","cache","get","snap","create","getPrototypeOf","markToTrack","set","Reflect","ownKeys","getOwnPropertyDescriptor","desc","_ref","_target","_ensureVersion","defineProperty","preventExtensions","initialObject","found","listeners","Set","notifyUpdate","op","nextVersion","listener","checkVersion","createPropListener","prop","newOp","concat","propProxyStates","Map","removePropListener","_entry$","entry","delete","call","baseObject","proxyObject","deleteProperty","prevValue","deleted","receiver","hasPrevValue","getUntracked","nextValue","then","v","catch","e","childProxyState","propProxyState","size","remove","addPropListener","proxyState","nextCheckVersion","_ref2","propVersion","add","_ref3","_ref4","defaultProxyFunction","unstable_buildProxyFunction","exports","getVersion","ref","obj","_ref5","ensureVersion","notifyInSync","ops","addListener","isListenerActive","removeListener","splice","undefined","TRACK_MEMO_SYMBOL","GET_ORIGINAL_SYMBOL","AFFECTED_PROPERTY","ALL_OWN_KEYS_PROPERTY","getProto","objectsToTrack","isObjectToTrack","prototype","copyTargetObject","from","descriptors","getOwnPropertyDescriptors","getOriginalObject","createProxy","affected","targetCache","targetAndCopied","some","descriptor","copiedTarget","handlerAndState","createProxyHandler","origObj","isTargetCopied","trackObject","recordUsage","used","t","isChanged","prevObj","nextObj","hit","n","g","changed","isAllOwnKeysChanged","prevKeys","nextKeys","k","i","o","trackMemo","mark","affectedToPathList","onlyWithValues","list","seen","walk","path","_used$HAS_KEY_PROPERT","segment","_used$HAS_OWN_KEY_PRO","_used$KEYS_PROPERTY","replaceNewProxy","fn"],"mappings":"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","file":"static/js/5.a0b2335a.chunk.js","sourcesContent":["import type { ConfigCtrlState, ThemeCtrlState } from '@walletconnect/modal-core'\nimport { ConfigCtrl, ModalCtrl, OptionsCtrl, ThemeCtrl } from '@walletconnect/modal-core'\n\n/**\n * Types\n */\nexport type WalletConnectModalConfig = ConfigCtrlState & ThemeCtrlState\n\n/**\n * Client\n */\nexport class WalletConnectModal {\n public constructor(config: WalletConnectModalConfig) {\n ThemeCtrl.setThemeConfig(config)\n ConfigCtrl.setConfig(config)\n this.initUi()\n }\n\n private async initUi() {\n if (typeof window !== 'undefined') {\n await import('@walletconnect/modal-ui')\n const modal = document.createElement('wcm-modal')\n document.body.insertAdjacentElement('beforeend', modal)\n OptionsCtrl.setIsUiLoaded(true)\n }\n }\n\n public openModal = ModalCtrl.open\n\n public closeModal = ModalCtrl.close\n\n public subscribeModal = ModalCtrl.subscribe\n\n public setTheme = ThemeCtrl.setThemeConfig\n}\n","import { proxy, subscribe as valtioSub } from 'valtio/vanilla'\nimport type { RouterCtrlState } from '../types/controllerTypes'\n\n// -- initial state ------------------------------------------------ //\nconst state = proxy<RouterCtrlState>({\n history: ['ConnectWallet'],\n view: 'ConnectWallet',\n data: undefined\n})\n\n// -- controller --------------------------------------------------- //\nexport const RouterCtrl = {\n state,\n\n subscribe(callback: (newState: RouterCtrlState) => void) {\n return valtioSub(state, () => callback(state))\n },\n\n push(view: RouterCtrlState['view'], data?: RouterCtrlState['data']) {\n if (view !== state.view) {\n state.view = view\n if (data) {\n state.data = data\n }\n state.history.push(view)\n }\n },\n\n reset(view: RouterCtrlState['view']) {\n state.view = view\n state.history = [view]\n },\n\n replace(view: RouterCtrlState['view']) {\n if (state.history.length > 1) {\n state.history[state.history.length - 1] = view\n state.view = view\n }\n },\n\n goBack() {\n if (state.history.length > 1) {\n state.history.pop()\n const [last] = state.history.slice(-1)\n state.view = last\n }\n },\n\n setData(data: RouterCtrlState['data']) {\n state.data = data\n }\n}\n","import { RouterCtrl } from '../controllers/RouterCtrl'\n\nexport const CoreUtil = {\n WALLETCONNECT_DEEPLINK_CHOICE: 'WALLETCONNECT_DEEPLINK_CHOICE',\n\n WCM_VERSION: 'WCM_VERSION',\n\n RECOMMENDED_WALLET_AMOUNT: 9,\n\n isMobile() {\n if (typeof window !== 'undefined') {\n return Boolean(\n window.matchMedia('(pointer:coarse)').matches ||\n /Android|webOS|iPhone|iPad|iPod|BlackBerry|Opera Mini/u.test(navigator.userAgent)\n )\n }\n\n return false\n },\n\n isAndroid() {\n return CoreUtil.isMobile() && navigator.userAgent.toLowerCase().includes('android')\n },\n\n isIos() {\n const ua = navigator.userAgent.toLowerCase()\n\n return CoreUtil.isMobile() && (ua.includes('iphone') || ua.includes('ipad'))\n },\n\n isHttpUrl(url: string) {\n return url.startsWith('http://') || url.startsWith('https://')\n },\n\n isArray<T>(data?: T | T[]): data is T[] {\n return Array.isArray(data) && data.length > 0\n },\n\n formatNativeUrl(appUrl: string, wcUri: string, name: string): string {\n if (CoreUtil.isHttpUrl(appUrl)) {\n return this.formatUniversalUrl(appUrl, wcUri, name)\n }\n let safeAppUrl = appUrl\n if (!safeAppUrl.includes('://')) {\n safeAppUrl = appUrl.replaceAll('/', '').replaceAll(':', '')\n safeAppUrl = `${safeAppUrl}://`\n }\n if (!safeAppUrl.endsWith('/')) {\n safeAppUrl = `${safeAppUrl}/`\n }\n this.setWalletConnectDeepLink(safeAppUrl, name)\n const encodedWcUrl = encodeURIComponent(wcUri)\n\n return `${safeAppUrl}wc?uri=${encodedWcUrl}`\n },\n\n formatUniversalUrl(appUrl: string, wcUri: string, name: string): string {\n if (!CoreUtil.isHttpUrl(appUrl)) {\n return this.formatNativeUrl(appUrl, wcUri, name)\n }\n let safeAppUrl = appUrl\n if (!safeAppUrl.endsWith('/')) {\n safeAppUrl = `${safeAppUrl}/`\n }\n this.setWalletConnectDeepLink(safeAppUrl, name)\n const encodedWcUrl = encodeURIComponent(wcUri)\n\n return `${safeAppUrl}wc?uri=${encodedWcUrl}`\n },\n\n async wait(miliseconds: number) {\n return new Promise(resolve => {\n setTimeout(resolve, miliseconds)\n })\n },\n\n openHref(href: string, target: '_blank' | '_self') {\n window.open(href, target, 'noreferrer noopener')\n },\n\n setWalletConnectDeepLink(href: string, name: string) {\n try {\n localStorage.setItem(CoreUtil.WALLETCONNECT_DEEPLINK_CHOICE, JSON.stringify({ href, name }))\n } catch {\n console.info('Unable to set WalletConnect deep link')\n }\n },\n\n setWalletConnectAndroidDeepLink(wcUri: string) {\n try {\n const [href] = wcUri.split('?')\n localStorage.setItem(\n CoreUtil.WALLETCONNECT_DEEPLINK_CHOICE,\n JSON.stringify({ href, name: 'Android' })\n )\n } catch {\n console.info('Unable to set WalletConnect android deep link')\n }\n },\n\n removeWalletConnectDeepLink() {\n try {\n localStorage.removeItem(CoreUtil.WALLETCONNECT_DEEPLINK_CHOICE)\n } catch {\n console.info('Unable to remove WalletConnect deep link')\n }\n },\n\n setModalVersionInStorage() {\n try {\n if (typeof localStorage !== 'undefined') {\n localStorage.setItem(CoreUtil.WCM_VERSION, process.env.ROLLUP_WCM_VERSION ?? 'UNKNOWN')\n }\n } catch {\n console.info('Unable to set Web3Modal version in storage')\n }\n },\n\n getWalletRouterData() {\n const routerData = RouterCtrl.state.data?.Wallet\n if (!routerData) {\n throw new Error('Missing \"Wallet\" view data')\n }\n\n return routerData\n }\n}\n","import { proxy, snapshot, subscribe as valtioSub } from 'valtio/vanilla'\nimport type { EventsCtrlState, ModalEvent, ModalEventData } from '../types/controllerTypes'\n\n// -- helpers ------------------------------------------------------ //\nconst isEnabled =\n typeof location !== 'undefined' &&\n (location.hostname.includes('localhost') || location.protocol.includes('https'))\n\n// -- initial state ------------------------------------------------ //\nconst state = proxy<EventsCtrlState>({\n enabled: isEnabled,\n userSessionId: '',\n events: [],\n connectedWalletId: undefined\n})\n\n// -- controller --------------------------------------------------- //\nexport const EventsCtrl = {\n state,\n\n subscribe(callback: (newEvent: ModalEvent) => void) {\n return valtioSub(state.events, () => callback(snapshot(state.events[state.events.length - 1])))\n },\n\n initialize() {\n if (state.enabled && typeof crypto?.randomUUID !== 'undefined') {\n state.userSessionId = crypto.randomUUID()\n }\n },\n\n setConnectedWalletId(connectedWalletId: EventsCtrlState['connectedWalletId']) {\n state.connectedWalletId = connectedWalletId\n },\n\n click(data: ModalEventData) {\n if (state.enabled) {\n const event = {\n type: 'CLICK' as const,\n name: data.name,\n userSessionId: state.userSessionId,\n timestamp: Date.now(),\n data\n }\n state.events.push(event)\n }\n },\n\n track(data: ModalEventData) {\n if (state.enabled) {\n const event = {\n type: 'TRACK' as const,\n name: data.name,\n userSessionId: state.userSessionId,\n timestamp: Date.now(),\n data\n }\n state.events.push(event)\n }\n },\n\n view(data: ModalEventData) {\n if (state.enabled) {\n const event = {\n type: 'VIEW' as const,\n name: data.name,\n userSessionId: state.userSessionId,\n timestamp: Date.now(),\n data\n }\n state.events.push(event)\n }\n }\n}\n","import { proxy, subscribe as valtioSub } from 'valtio/vanilla'\nimport type { OptionsCtrlState } from '../types/controllerTypes'\n\n// -- initial state ------------------------------------------------ //\nconst state = proxy<OptionsCtrlState>({\n chains: undefined,\n walletConnectUri: undefined,\n isAuth: false,\n isCustomDesktop: false,\n isCustomMobile: false,\n isDataLoaded: false,\n isUiLoaded: false\n})\n\n// -- controller --------------------------------------------------- //\nexport const OptionsCtrl = {\n state,\n\n subscribe(callback: (newState: OptionsCtrlState) => void) {\n return valtioSub(state, () => callback(state))\n },\n\n setChains(chains: OptionsCtrlState['chains']) {\n state.chains = chains\n },\n\n setWalletConnectUri(walletConnectUri: OptionsCtrlState['walletConnectUri']) {\n state.walletConnectUri = walletConnectUri\n },\n\n setIsCustomDesktop(isCustomDesktop: OptionsCtrlState['isCustomDesktop']) {\n state.isCustomDesktop = isCustomDesktop\n },\n\n setIsCustomMobile(isCustomMobile: OptionsCtrlState['isCustomMobile']) {\n state.isCustomMobile = isCustomMobile\n },\n\n setIsDataLoaded(isDataLoaded: OptionsCtrlState['isDataLoaded']) {\n state.isDataLoaded = isDataLoaded\n },\n\n setIsUiLoaded(isUiLoaded: OptionsCtrlState['isUiLoaded']) {\n state.isUiLoaded = isUiLoaded\n },\n\n setIsAuth(isAuth: OptionsCtrlState['isAuth']) {\n state.isAuth = isAuth\n }\n}\n","import { proxy, subscribe as valtioSub } from 'valtio/vanilla'\nimport type { ConfigCtrlState } from '../types/controllerTypes'\nimport { CoreUtil } from '../utils/CoreUtil'\nimport { EventsCtrl } from './EventsCtrl'\nimport { OptionsCtrl } from './OptionsCtrl'\n\nconst state = proxy<ConfigCtrlState>({\n projectId: '',\n mobileWallets: undefined,\n desktopWallets: undefined,\n walletImages: undefined,\n chains: undefined,\n enableAuthMode: false,\n enableExplorer: true,\n explorerExcludedWalletIds: undefined,\n explorerRecommendedWalletIds: undefined,\n termsOfServiceUrl: undefined,\n privacyPolicyUrl: undefined\n})\n\n// -- controller --------------------------------------------------- //\nexport const ConfigCtrl = {\n state,\n\n subscribe(callback: (newState: ConfigCtrlState) => void) {\n return valtioSub(state, () => callback(state))\n },\n\n setConfig(config: ConfigCtrlState) {\n EventsCtrl.initialize()\n OptionsCtrl.setChains(config.chains)\n OptionsCtrl.setIsAuth(Boolean(config.enableAuthMode))\n OptionsCtrl.setIsCustomMobile(Boolean(config.mobileWallets?.length))\n OptionsCtrl.setIsCustomDesktop(Boolean(config.desktopWallets?.length))\n\n CoreUtil.setModalVersionInStorage()\n\n Object.assign(state, config)\n }\n}\n","import { ConfigCtrl } from '../controllers/ConfigCtrl'\nimport type { ListingParams, ListingResponse } from '../types/controllerTypes'\n\n// -- Helpers -------------------------------------------------------\nconst W3M_API = 'https://explorer-api.walletconnect.com'\nconst SDK_TYPE = 'wcm'\nconst SDK_VERSION = `js-${process.env.ROLLUP_WCM_VERSION}`\n\nasync function fetchListings(endpoint: string, params: ListingParams) {\n const allParams = { sdkType: SDK_TYPE, sdkVersion: SDK_VERSION, ...params }\n const url = new URL(endpoint, W3M_API)\n url.searchParams.append('projectId', ConfigCtrl.state.projectId)\n Object.entries(allParams).forEach(([key, value]) => {\n if (value) {\n url.searchParams.append(key, String(value))\n }\n })\n const request = await fetch(url)\n\n return request.json() as Promise<ListingResponse>\n}\n\n// -- Utility -------------------------------------------------------\nexport const ExplorerUtil = {\n async getDesktopListings(params: ListingParams) {\n return fetchListings('/w3m/v1/getDesktopListings', params)\n },\n\n async getMobileListings(params: ListingParams) {\n return fetchListings('/w3m/v1/getMobileListings', params)\n },\n\n async getInjectedListings(params: ListingParams) {\n return fetchListings('/w3m/v1/getInjectedListings', params)\n },\n\n async getAllListings(params: ListingParams) {\n return fetchListings('/w3m/v1/getAllListings', params)\n },\n\n getWalletImageUrl(imageId: string) {\n return `${W3M_API}/w3m/v1/getWalletImage/${imageId}?projectId=${ConfigCtrl.state.projectId}&sdkType=${SDK_TYPE}&sdkVersion=${SDK_VERSION}`\n },\n\n getAssetImageUrl(imageId: string) {\n return `${W3M_API}/w3m/v1/getAssetImage/${imageId}?projectId=${ConfigCtrl.state.projectId}&sdkType=${SDK_TYPE}&sdkVersion=${SDK_VERSION}`\n }\n}\n","import { proxy } from 'valtio/vanilla'\nimport type { ExplorerCtrlState, ListingParams } from '../types/controllerTypes'\nimport { CoreUtil } from '../utils/CoreUtil'\nimport { ExplorerUtil } from '../utils/ExplorerUtil'\nimport { ConfigCtrl } from './ConfigCtrl'\nimport { OptionsCtrl } from './OptionsCtrl'\n\nconst isMobile = CoreUtil.isMobile()\n\n// -- initial state ------------------------------------------------ //\nconst state = proxy<ExplorerCtrlState>({\n wallets: { listings: [], total: 0, page: 1 },\n search: { listings: [], total: 0, page: 1 },\n recomendedWallets: []\n})\n\n// -- controller --------------------------------------------------- //\nexport const ExplorerCtrl = {\n state,\n\n async getRecomendedWallets() {\n const { explorerRecommendedWalletIds, explorerExcludedWalletIds } = ConfigCtrl.state\n\n // Don't fetch recomended wallets\n if (\n explorerRecommendedWalletIds === 'NONE' ||\n (explorerExcludedWalletIds === 'ALL' && !explorerRecommendedWalletIds)\n ) {\n return state.recomendedWallets\n }\n\n // Fetch only recomended wallets defined in config\n if (CoreUtil.isArray(explorerRecommendedWalletIds)) {\n const recommendedIds = explorerRecommendedWalletIds.join(',')\n const params = { recommendedIds }\n const { listings } = await ExplorerUtil.getAllListings(params)\n const listingsArr = Object.values(listings)\n listingsArr.sort((a, b) => {\n const aIndex = explorerRecommendedWalletIds.indexOf(a.id)\n const bIndex = explorerRecommendedWalletIds.indexOf(b.id)\n\n return aIndex - bIndex\n })\n state.recomendedWallets = listingsArr\n }\n\n // Fetch default recomended wallets based on user's device, options and excluded config\n else {\n const { chains, isAuth } = OptionsCtrl.state\n const chainsFilter = chains?.join(',')\n const isExcluded = CoreUtil.isArray(explorerExcludedWalletIds)\n const params = {\n page: 1,\n sdks: isAuth ? 'auth_v1' : undefined,\n entries: CoreUtil.RECOMMENDED_WALLET_AMOUNT,\n chains: chainsFilter,\n version: 2,\n excludedIds: isExcluded ? explorerExcludedWalletIds.join(',') : undefined\n }\n const { listings } = isMobile\n ? await ExplorerUtil.getMobileListings(params)\n : await ExplorerUtil.getDesktopListings(params)\n state.recomendedWallets = Object.values(listings)\n }\n\n return state.recomendedWallets\n },\n\n async getWallets(params: ListingParams) {\n const extendedParams: ListingParams = { ...params }\n const { explorerRecommendedWalletIds, explorerExcludedWalletIds } = ConfigCtrl.state\n const { recomendedWallets } = state\n\n // Don't fetch any wallets if all are excluded\n if (explorerExcludedWalletIds === 'ALL') {\n return state.wallets\n }\n\n // Don't fetch recomended wallets, as we already have these\n if (recomendedWallets.length) {\n extendedParams.excludedIds = recomendedWallets.map(wallet => wallet.id).join(',')\n } else if (CoreUtil.isArray(explorerRecommendedWalletIds)) {\n extendedParams.excludedIds = explorerRecommendedWalletIds.join(',')\n }\n\n // Don't fetch user defined excluded wallets & recomended wallets\n if (CoreUtil.isArray(explorerExcludedWalletIds)) {\n extendedParams.excludedIds = [extendedParams.excludedIds, explorerExcludedWalletIds]\n .filter(Boolean)\n .join(',')\n }\n\n // Fetch only auth wallets\n if (OptionsCtrl.state.isAuth) {\n extendedParams.sdks = 'auth_v1'\n }\n\n const { page, search } = params\n const { listings: listingsObj, total } = isMobile\n ? await ExplorerUtil.getMobileListings(extendedParams)\n : await ExplorerUtil.getDesktopListings(extendedParams)\n const listings = Object.values(listingsObj)\n const type = search ? 'search' : 'wallets'\n state[type] = {\n listings: [...state[type].listings, ...listings],\n total,\n page: page ?? 1\n }\n\n return { listings, total }\n },\n\n getWalletImageUrl(imageId: string) {\n return ExplorerUtil.getWalletImageUrl(imageId)\n },\n\n getAssetImageUrl(imageId: string) {\n return ExplorerUtil.getAssetImageUrl(imageId)\n },\n\n resetSearch() {\n state.search = { listings: [], total: 0, page: 1 }\n }\n}\n","import { proxy, subscribe as valtioSub } from 'valtio/vanilla'\nimport type { ModalCtrlState } from '../types/controllerTypes'\nimport { CoreUtil } from '../utils/CoreUtil'\nimport { OptionsCtrl } from './OptionsCtrl'\nimport { RouterCtrl } from './RouterCtrl'\n\n// -- types -------------------------------------------------------- //\nexport interface OpenOptions {\n uri: string\n chains?: string[]\n}\n\n// -- initial state ------------------------------------------------ //\nconst state = proxy<ModalCtrlState>({\n open: false\n})\n\n// -- controller --------------------------------------------------- //\nexport const ModalCtrl = {\n state,\n\n subscribe(callback: (newState: ModalCtrlState) => void) {\n return valtioSub(state, () => callback(state))\n },\n\n async open(options?: OpenOptions) {\n return new Promise<void>(resolve => {\n const { isUiLoaded, isDataLoaded } = OptionsCtrl.state\n CoreUtil.removeWalletConnectDeepLink()\n\n OptionsCtrl.setWalletConnectUri(options?.uri)\n OptionsCtrl.setChains(options?.chains)\n RouterCtrl.reset('ConnectWallet')\n\n // Open modal if essential async data is ready\n if (isUiLoaded && isDataLoaded) {\n state.open = true\n resolve()\n }\n // Otherwise (slow network) re-attempt open checks\n else {\n const interval = setInterval(() => {\n const opts = OptionsCtrl.state\n if (opts.isUiLoaded && opts.isDataLoaded) {\n clearInterval(interval)\n state.open = true\n resolve()\n }\n }, 200)\n }\n })\n },\n\n close() {\n state.open = false\n }\n}\n","import { proxy, subscribe as valtioSub } from 'valtio/vanilla'\nimport type { ThemeCtrlState } from '../types/controllerTypes'\n\n// -- initial state ------------------------------------------------ //\nfunction isDarkMode() {\n return typeof matchMedia !== 'undefined' && matchMedia('(prefers-color-scheme: dark)').matches\n}\n\nconst state = proxy<ThemeCtrlState>({\n themeMode: isDarkMode() ? 'dark' : 'light'\n})\n\n// -- controller --------------------------------------------------- //\nexport const ThemeCtrl = {\n state,\n\n subscribe(callback: (newState: ThemeCtrlState) => void) {\n return valtioSub(state, () => callback(state))\n },\n\n setThemeConfig(theme: ThemeCtrlState) {\n const { themeMode, themeVariables } = theme\n\n if (themeMode) {\n state.themeMode = themeMode\n }\n\n if (themeVariables) {\n state.themeVariables = { ...themeVariables }\n }\n }\n}\n","import { proxy, subscribe as valtioSub } from 'valtio/vanilla'\nimport type { ToastCtrlState } from '../types/controllerTypes'\n\n// -- initial state ------------------------------------------------ //\nconst state = proxy<ToastCtrlState>({\n open: false,\n message: '',\n variant: 'success'\n})\n\n// -- controller --------------------------------------------------- //\nexport const ToastCtrl = {\n state,\n\n subscribe(callback: (newState: ToastCtrlState) => void) {\n return valtioSub(state, () => callback(state))\n },\n\n openToast(message: ToastCtrlState['message'], variant: ToastCtrlState['variant']) {\n state.open = true\n state.message = message\n state.variant = variant\n },\n\n closeToast() {\n state.open = false\n }\n}\n","'use strict';\n\nvar proxyCompare = require('proxy-compare');\n\nvar isObject = function isObject(x) {\n return typeof x === 'object' && x !== null;\n};\nvar proxyStateMap = new WeakMap();\nvar refSet = new WeakSet();\nvar buildProxyFunction = function buildProxyFunction(objectIs, newProxy, canProxy, defaultHandlePromise, snapCache, createSnapshot, proxyCache, versionHolder, _proxyFunction) {\n if (objectIs === void 0) {\n objectIs = Object.is;\n }\n if (newProxy === void 0) {\n newProxy = function newProxy(target, handler) {\n return new Proxy(target, handler);\n };\n }\n if (canProxy === void 0) {\n canProxy = function canProxy(x) {\n return isObject(x) && !refSet.has(x) && (Array.isArray(x) || !(Symbol.iterator in x)) && !(x instanceof WeakMap) && !(x instanceof WeakSet) && !(x instanceof Error) && !(x instanceof Number) && !(x instanceof Date) && !(x instanceof String) && !(x instanceof RegExp) && !(x instanceof ArrayBuffer);\n };\n }\n if (defaultHandlePromise === void 0) {\n defaultHandlePromise = function defaultHandlePromise(promise) {\n switch (promise.status) {\n case 'fulfilled':\n return promise.value;\n case 'rejected':\n throw promise.reason;\n default:\n throw promise;\n }\n };\n }\n if (snapCache === void 0) {\n snapCache = new WeakMap();\n }\n if (createSnapshot === void 0) {\n createSnapshot = function (_createSnapshot) {\n function createSnapshot(_x, _x2, _x3) {\n return _createSnapshot.apply(this, arguments);\n }\n createSnapshot.toString = function () {\n return _createSnapshot.toString();\n };\n return createSnapshot;\n }(function (target, version, handlePromise) {\n if (handlePromise === void 0) {\n handlePromise = defaultHandlePromise;\n }\n var cache = snapCache.get(target);\n if ((cache == null ? void 0 : cache[0]) === version) {\n return cache[1];\n }\n var snap = Array.isArray(target) ? [] : Object.create(Object.getPrototypeOf(target));\n proxyCompare.markToTrack(snap, true);\n snapCache.set(target, [version, snap]);\n Reflect.ownKeys(target).forEach(function (key) {\n if (Object.getOwnPropertyDescriptor(snap, key)) {\n return;\n }\n var value = Reflect.get(target, key);\n var desc = {\n value: value,\n enumerable: true,\n configurable: true\n };\n if (refSet.has(value)) {\n proxyCompare.markToTrack(value, false);\n } else if (value instanceof Promise) {\n delete desc.value;\n desc.get = function () {\n return handlePromise(value);\n };\n } else if (proxyStateMap.has(value)) {\n var _ref = proxyStateMap.get(value),\n _target = _ref[0],\n _ensureVersion = _ref[1];\n desc.value = createSnapshot(_target, _ensureVersion(), handlePromise);\n }\n Object.defineProperty(snap, key, desc);\n });\n return Object.preventExtensions(snap);\n });\n }\n if (proxyCache === void 0) {\n proxyCache = new WeakMap();\n }\n if (versionHolder === void 0) {\n versionHolder = [1, 1];\n }\n if (_proxyFunction === void 0) {\n _proxyFunction = function proxyFunction(initialObject) {\n if (!isObject(initialObject)) {\n throw new Error('object required');\n }\n var found = proxyCache.get(initialObject);\n if (found) {\n return found;\n }\n var version = versionHolder[0];\n var listeners = new Set();\n var notifyUpdate = function notifyUpdate(op, nextVersion) {\n if (nextVersion === void 0) {\n nextVersion = ++versionHolder[0];\n }\n if (version !== nextVersion) {\n version = nextVersion;\n listeners.forEach(function (listener) {\n return listener(op, nextVersion);\n });\n }\n };\n var checkVersion = versionHolder[1];\n var ensureVersion = function ensureVersion(nextCheckVersion) {\n if (nextCheckVersion === void 0) {\n nextCheckVersion = ++versionHolder[1];\n }\n if (checkVersion !== nextCheckVersion && !listeners.size) {\n checkVersion = nextCheckVersion;\n propProxyStates.forEach(function (_ref2) {\n var propProxyState = _ref2[0];\n var propVersion = propProxyState[1](nextCheckVersion);\n if (propVersion > version) {\n version = propVersion;\n }\n });\n }\n return version;\n };\n var createPropListener = function createPropListener(prop) {\n return function (op, nextVersion) {\n var newOp = [].concat(op);\n newOp[1] = [prop].concat(newOp[1]);\n notifyUpdate(newOp, nextVersion);\n };\n };\n var propProxyStates = new Map();\n var addPropListener = function addPropListener(prop, propProxyState) {\n if (process.env.NODE_ENV !== 'production' && propProxyStates.has(prop)) {\n throw new Error('prop listener already exists');\n }\n if (listeners.size) {\n var remove = propProxyState[3](createPropListener(prop));\n propProxyStates.set(prop, [propProxyState, remove]);\n } else {\n propProxyStates.set(prop, [propProxyState]);\n }\n };\n var removePropListener = function removePropListener(prop) {\n var entry = propProxyStates.get(prop);\n if (entry) {\n var _entry$;\n propProxyStates.delete(prop);\n (_entry$ = entry[1]) == null ? void 0 : _entry$.call(entry);\n }\n };\n var addListener = function addListener(listener) {\n listeners.add(listener);\n if (listeners.size === 1) {\n propProxyStates.forEach(function (_ref3, prop) {\n var propProxyState = _ref3[0],\n prevRemove = _ref3[1];\n if (process.env.NODE_ENV !== 'production' && prevRemove) {\n throw new Error('remove already exists');\n }\n var remove = propProxyState[3](createPropListener(prop));\n propProxyStates.set(prop, [propProxyState, remove]);\n });\n }\n var removeListener = function removeListener() {\n listeners.delete(listener);\n if (listeners.size === 0) {\n propProxyStates.forEach(function (_ref4, prop) {\n var propProxyState = _ref4[0],\n remove = _ref4[1];\n if (remove) {\n remove();\n propProxyStates.set(prop, [propProxyState]);\n }\n });\n }\n };\n return removeListener;\n };\n var baseObject = Array.isArray(initialObject) ? [] : Object.create(Object.getPrototypeOf(initialObject));\n var handler = {\n deleteProperty: function deleteProperty(target, prop) {\n var prevValue = Reflect.get(target, prop);\n removePropListener(prop);\n var deleted = Reflect.deleteProperty(target, prop);\n if (deleted) {\n notifyUpdate(['delete', [prop], prevValue]);\n }\n return deleted;\n },\n set: function set(target, prop, value, receiver) {\n var hasPrevValue = Reflect.has(target, prop);\n var prevValue = Reflect.get(target, prop, receiver);\n if (hasPrevValue && (objectIs(prevValue, value) || proxyCache.has(value) && objectIs(prevValue, proxyCache.get(value)))) {\n return true;\n }\n removePropListener(prop);\n if (isObject(value)) {\n value = proxyCompare.getUntracked(value) || value;\n }\n var nextValue = value;\n if (value instanceof Promise) {\n value.then(function (v) {\n value.status = 'fulfilled';\n value.value = v;\n notifyUpdate(['resolve', [prop], v]);\n }).catch(function (e) {\n value.status = 'rejected';\n value.reason = e;\n notifyUpdate(['reject', [prop], e]);\n });\n } else {\n if (!proxyStateMap.has(value) && canProxy(value)) {\n nextValue = _proxyFunction(value);\n }\n var childProxyState = !refSet.has(nextValue) && proxyStateMap.get(nextValue);\n if (childProxyState) {\n addPropListener(prop, childProxyState);\n }\n }\n Reflect.set(target, prop, nextValue, receiver);\n notifyUpdate(['set', [prop], value, prevValue]);\n return true;\n }\n };\n var proxyObject = newProxy(baseObject, handler);\n proxyCache.set(initialObject, proxyObject);\n var proxyState = [baseObject, ensureVersion, createSnapshot, addListener];\n proxyStateMap.set(proxyObject, proxyState);\n Reflect.ownKeys(initialObject).forEach(function (key) {\n var desc = Object.getOwnPropertyDescriptor(initialObject, key);\n if ('value' in desc) {\n proxyObject[key] = initialObject[key];\n delete desc.value;\n delete desc.writable;\n }\n Object.defineProperty(baseObject, key, desc);\n });\n return proxyObject;\n };\n }\n return [_proxyFunction, proxyStateMap, refSet, objectIs, newProxy, canProxy, defaultHandlePromise, snapCache, createSnapshot, proxyCache, versionHolder];\n};\nvar _buildProxyFunction = buildProxyFunction(),\n defaultProxyFunction = _buildProxyFunction[0];\nfunction proxy(initialObject) {\n if (initialObject === void 0) {\n initialObject = {};\n }\n return defaultProxyFunction(initialObject);\n}\nfunction getVersion(proxyObject) {\n var proxyState = proxyStateMap.get(proxyObject);\n return proxyState == null ? void 0 : proxyState[1]();\n}\nfunction subscribe(proxyObject, callback, notifyInSync) {\n var proxyState = proxyStateMap.get(proxyObject);\n if (process.env.NODE_ENV !== 'production' && !proxyState) {\n console.warn('Please use proxy object');\n }\n var promise;\n var ops = [];\n var addListener = proxyState[3];\n var isListenerActive = false;\n var listener = function listener(op) {\n ops.push(op);\n if (notifyInSync) {\n callback(ops.splice(0));\n return;\n }\n if (!promise) {\n promise = Promise.resolve().then(function () {\n promise = undefined;\n if (isListenerActive) {\n callback(ops.splice(0));\n }\n });\n }\n };\n var removeListener = addListener(listener);\n isListenerActive = true;\n return function () {\n isListenerActive = false;\n removeListener();\n };\n}\nfunction snapshot(proxyObject, handlePromise) {\n var proxyState = proxyStateMap.get(proxyObject);\n if (process.env.NODE_ENV !== 'production' && !proxyState) {\n console.warn('Please use proxy object');\n }\n var _ref5 = proxyState,\n target = _ref5[0],\n ensureVersion = _ref5[1],\n createSnapshot = _ref5[2];\n return createSnapshot(target, ensureVersion(), handlePromise);\n}\nfunction ref(obj) {\n refSet.add(obj);\n return obj;\n}\nvar unstable_buildProxyFunction = buildProxyFunction;\n\nexports.getVersion = getVersion;\nexports.proxy = proxy;\nexports.ref = ref;\nexports.snapshot = snapshot;\nexports.subscribe = subscribe;\nexports.unstable_buildProxyFunction = unstable_buildProxyFunction;\n","// symbols\nconst TRACK_MEMO_SYMBOL = Symbol();\nconst GET_ORIGINAL_SYMBOL = Symbol();\n\n// properties\nconst AFFECTED_PROPERTY = 'a';\nconst IS_TARGET_COPIED_PROPERTY = 'f';\nconst PROXY_PROPERTY = 'p';\nconst PROXY_CACHE_PROPERTY = 'c';\nconst TARGET_CACHE_PROPERTY = 't';\nconst NEXT_OBJECT_PROPERTY = 'n';\nconst CHANGED_PROPERTY = 'g';\nconst HAS_KEY_PROPERTY = 'h';\nconst ALL_OWN_KEYS_PROPERTY = 'w';\nconst HAS_OWN_KEY_PROPERTY = 'o';\nconst KEYS_PROPERTY = 'k';\n\n// function to create a new bare proxy\nlet newProxy = <T extends object>(\n target: T,\n handler: ProxyHandler<T>,\n) => new Proxy(target, handler);\n\n// get object prototype\nconst getProto = Object.getPrototypeOf;\n\nconst objectsToTrack = new WeakMap<object, boolean>();\n\n// check if obj is a plain object or an array\nconst isObjectToTrack = <T>(obj: T): obj is T extends object ? T : never => (\n obj && (objectsToTrack.has(obj as unknown as object)\n ? objectsToTrack.get(obj as unknown as object) as boolean\n : (getProto(obj) === Object.prototype || getProto(obj) === Array.prototype)\n )\n);\n\n// check if it is object\nconst isObject = (x: unknown): x is object => (\n typeof x === 'object' && x !== null\n);\n\n// Properties that are both non-configurable and non-writable will break\n// the proxy get trap when we try to return a recursive/child compare proxy\n// from them. We can avoid this by making a copy of the target object with\n// all descriptors marked as configurable, see `copyTargetObject`.\n// See: https://github.com/dai-shi/proxy-compare/pull/8\nconst needsToCopyTargetObject = (obj: object) => (\n Object.values(Object.getOwnPropertyDescriptors(obj)).some(\n (descriptor) => !descriptor.configurable && !descriptor.writable,\n )\n);\n\n// Make a copy with all descriptors marked as configurable.\nconst copyTargetObject = <T extends object>(obj: T): T => {\n if (Array.isArray(obj)) {\n // Arrays need a special way to copy\n return Array.from(obj) as T;\n }\n // For non-array objects, we create a new object keeping the prototype\n // with changing all configurable options (otherwise, proxies will complain)\n const descriptors = Object.getOwnPropertyDescriptors(obj);\n Object.values(descriptors).forEach((desc) => { desc.configurable = true; });\n return Object.create(getProto(obj), descriptors);\n};\n\ntype HasKeySet = Set<string | symbol>\ntype HasOwnKeySet = Set<string | symbol>\ntype KeysSet = Set<string | symbol>\ntype Used = {\n [HAS_KEY_PROPERTY]?: HasKeySet;\n [ALL_OWN_KEYS_PROPERTY]?: true;\n [HAS_OWN_KEY_PROPERTY]?: HasOwnKeySet;\n [KEYS_PROPERTY]?: KeysSet;\n};\ntype Affected = WeakMap<object, Used>;\ntype ProxyHandlerState<T extends object> = {\n readonly [IS_TARGET_COPIED_PROPERTY]: boolean;\n [PROXY_PROPERTY]?: T;\n [PROXY_CACHE_PROPERTY]?: ProxyCache<object> | undefined;\n [TARGET_CACHE_PROPERTY]?: TargetCache<object> | undefined;\n [AFFECTED_PROPERTY]?: Affected;\n}\ntype ProxyCache<T extends object> = WeakMap<\n object,\n readonly [ProxyHandler<T>, ProxyHandlerState<T>]\n>;\ntype TargetCache<T extends object> = WeakMap<\n object,\n readonly [target: T, copiedTarget?: T]\n>;\n\nconst createProxyHandler = <T extends object>(origObj: T, isTargetCopied: boolean) => {\n const state: ProxyHandlerState<T> = {\n [IS_TARGET_COPIED_PROPERTY]: isTargetCopied,\n };\n let trackObject = false; // for trackMemo\n const recordUsage = (\n type:\n | typeof HAS_KEY_PROPERTY\n | typeof ALL_OWN_KEYS_PROPERTY\n | typeof HAS_OWN_KEY_PROPERTY\n | typeof KEYS_PROPERTY,\n key?: string | symbol,\n ) => {\n if (!trackObject) {\n let used = (state[AFFECTED_PROPERTY] as Affected).get(origObj);\n if (!used) {\n used = {};\n (state[AFFECTED_PROPERTY] as Affected).set(origObj, used);\n }\n if (type === ALL_OWN_KEYS_PROPERTY) {\n used[ALL_OWN_KEYS_PROPERTY] = true;\n } else {\n let set = used[type];\n if (!set) {\n set = new Set();\n used[type] = set;\n }\n set.add(key as string | symbol);\n }\n }\n };\n const recordObjectAsUsed = () => {\n trackObject = true;\n (state[AFFECTED_PROPERTY] as Affected).delete(origObj);\n };\n const handler: ProxyHandler<T> = {\n get(target, key) {\n if (key === GET_ORIGINAL_SYMBOL) {\n return origObj;\n }\n recordUsage(KEYS_PROPERTY, key);\n return createProxy(\n Reflect.get(target, key),\n (state[AFFECTED_PROPERTY] as Affected),\n state[PROXY_CACHE_PROPERTY],\n state[TARGET_CACHE_PROPERTY],\n );\n },\n has(target, key) {\n if (key === TRACK_MEMO_SYMBOL) {\n recordObjectAsUsed();\n return true;\n }\n recordUsage(HAS_KEY_PROPERTY, key);\n return Reflect.has(target, key);\n },\n getOwnPropertyDescriptor(target, key) {\n recordUsage(HAS_OWN_KEY_PROPERTY, key);\n return Reflect.getOwnPropertyDescriptor(target, key);\n },\n ownKeys(target) {\n recordUsage(ALL_OWN_KEYS_PROPERTY);\n return Reflect.ownKeys(target);\n },\n };\n if (isTargetCopied) {\n handler.set = handler.deleteProperty = () => false;\n }\n return [handler, state] as const;\n};\n\nconst getOriginalObject = <T extends object>(obj: T) => (\n // unwrap proxy\n (obj as { [GET_ORIGINAL_SYMBOL]?: typeof obj })[GET_ORIGINAL_SYMBOL]\n // otherwise\n || obj\n);\n\n/**\n * Create a proxy.\n *\n * This function will create a proxy at top level and proxy nested objects as you access them,\n * in order to keep track of which properties were accessed via get/has proxy handlers:\n *\n * NOTE: Printing of WeakMap is hard to inspect and not very readable\n * for this purpose you can use the `affectedToPathList` helper.\n *\n * @param {object} obj - Object that will be wrapped on the proxy.\n * @param {WeakMap<object, unknown>} affected -\n * WeakMap that will hold the tracking of which properties in the proxied object were accessed.\n * @param {WeakMap<object, unknown>} [proxyCache] -\n * WeakMap that will help keep referential identity for proxies.\n * @returns {Proxy<object>} - Object wrapped in a proxy.\n *\n * @example\n * import { createProxy } from 'proxy-compare';\n *\n * const original = { a: \"1\", c: \"2\", d: { e: \"3\" } };\n * const affected = new WeakMap();\n * const proxy = createProxy(original, affected);\n *\n * proxy.a // Will mark as used and track its value.\n * // This will update the affected WeakMap with original as key\n * // and a Set with \"a\"\n *\n * proxy.d // Will mark \"d\" as accessed to track and proxy itself ({ e: \"3\" }).\n * // This will update the affected WeakMap with original as key\n * // and a Set with \"d\"\n */\nexport const createProxy = <T>(\n obj: T,\n affected: WeakMap<object, unknown>,\n proxyCache?: WeakMap<object, unknown>,\n targetCache?: WeakMap<object, unknown>,\n): T => {\n if (!isObjectToTrack(obj)) return obj;\n let targetAndCopied = (\n targetCache && (targetCache as TargetCache<typeof obj>).get(obj)\n );\n if (!targetAndCopied) {\n const target = getOriginalObject(obj);\n if (needsToCopyTargetObject(target)) {\n targetAndCopied = [target, copyTargetObject(target)];\n } else {\n targetAndCopied = [target];\n }\n targetCache?.set(obj, targetAndCopied);\n }\n const [target, copiedTarget] = targetAndCopied;\n let handlerAndState = (\n proxyCache && (proxyCache as ProxyCache<typeof target>).get(target)\n );\n if (\n !handlerAndState\n || handlerAndState[1][IS_TARGET_COPIED_PROPERTY] !== !!copiedTarget\n ) {\n handlerAndState = createProxyHandler<typeof target>(target, !!copiedTarget);\n handlerAndState[1][PROXY_PROPERTY] = newProxy(\n copiedTarget || target,\n handlerAndState[0],\n );\n if (proxyCache) {\n proxyCache.set(target, handlerAndState);\n }\n }\n handlerAndState[1][AFFECTED_PROPERTY] = affected as Affected;\n handlerAndState[1][PROXY_CACHE_PROPERTY] = proxyCache as ProxyCache<object> | undefined;\n handlerAndState[1][TARGET_CACHE_PROPERTY] = targetCache as TargetCache<object> | undefined;\n return handlerAndState[1][PROXY_PROPERTY] as typeof target;\n};\n\nconst isAllOwnKeysChanged = (prevObj: object, nextObj: object) => {\n const prevKeys = Reflect.ownKeys(prevObj);\n const nextKeys = Reflect.ownKeys(nextObj);\n return prevKeys.length !== nextKeys.length\n || prevKeys.some((k, i) => k !== nextKeys[i]);\n};\n\ntype ChangedCache = WeakMap<object, {\n [NEXT_OBJECT_PROPERTY]: object;\n [CHANGED_PROPERTY]: boolean;\n}>;\n\n/**\n * Compare changes on objects.\n *\n * This will compare the affected properties on tracked objects inside the proxy\n * to check if there were any changes made to it,\n * by default if no property was accessed on the proxy it will attempt to do a\n * reference equality check for the objects provided (Object.is(a, b)). If you access a property\n * on the proxy, then isChanged will only compare the affected properties.\n *\n * @param {object} prevObj - The previous object to compare.\n * @param {object} nextObj - Object to compare with the previous one.\n * @param {WeakMap<object, unknown>} affected -\n * WeakMap that holds the tracking of which properties in the proxied object were accessed.\n * @param {WeakMap<object, unknown>} [cache] -\n * WeakMap that holds a cache of the comparisons for better performance with repetitive comparisons,\n * and to avoid infinite loop with circular structures.\n * @returns {boolean} - Boolean indicating if the affected property on the object has changed.\n *\n * @example\n * import { createProxy, isChanged } from 'proxy-compare';\n *\n * const obj = { a: \"1\", c: \"2\", d: { e: \"3\" } };\n * const affected = new WeakMap();\n *\n * const proxy = createProxy(obj, affected);\n *\n * proxy.a\n *\n * isChanged(obj, { a: \"1\" }, affected) // false\n *\n * proxy.a = \"2\"\n *\n * isChanged(obj, { a: \"1\" }, affected) // true\n */\n\nexport const isChanged = (\n prevObj: unknown,\n nextObj: unknown,\n affected: WeakMap<object, unknown>,\n cache?: WeakMap<object, unknown>,\n): boolean => {\n if (Object.is(prevObj, nextObj)) {\n return false;\n }\n if (!isObject(prevObj) || !isObject(nextObj)) return true;\n const used = (affected as Affected).get(getOriginalObject(prevObj));\n if (!used) return true;\n if (cache) {\n const hit = (cache as ChangedCache).get(prevObj);\n if (hit && hit[NEXT_OBJECT_PROPERTY] === nextObj) {\n return hit[CHANGED_PROPERTY];\n }\n // for object with cycles\n (cache as ChangedCache).set(prevObj, {\n [NEXT_OBJECT_PROPERTY]: nextObj,\n [CHANGED_PROPERTY]: false,\n });\n }\n let changed: boolean | null = null;\n try {\n for (const key of used[HAS_KEY_PROPERTY] || []) {\n changed = Reflect.has(prevObj, key) !== Reflect.has(nextObj, key);\n if (changed) return changed;\n }\n if (used[ALL_OWN_KEYS_PROPERTY] === true) {\n changed = isAllOwnKeysChanged(prevObj, nextObj);\n if (changed) return changed;\n } else {\n for (const key of used[HAS_OWN_KEY_PROPERTY] || []) {\n const hasPrev = !!Reflect.getOwnPropertyDescriptor(prevObj, key);\n const hasNext = !!Reflect.getOwnPropertyDescriptor(nextObj, key);\n changed = hasPrev !== hasNext;\n if (changed) return changed;\n }\n }\n for (const key of used[KEYS_PROPERTY] || []) {\n changed = isChanged(\n (prevObj as any)[key],\n (nextObj as any)[key],\n affected,\n cache,\n );\n if (changed) return changed;\n }\n if (changed === null) changed = true;\n return changed;\n } finally {\n if (cache) {\n cache.set(prevObj, {\n [NEXT_OBJECT_PROPERTY]: nextObj,\n [CHANGED_PROPERTY]: changed,\n });\n }\n }\n};\n\n// explicitly track object with memo\nexport const trackMemo = (obj: unknown) => {\n if (isObjectToTrack(obj)) {\n return TRACK_MEMO_SYMBOL in obj;\n }\n return false;\n};\n\n/**\n * Unwrap proxy to get the original object.\n *\n * Used to retrieve the original object used to create the proxy instance with `createProxy`.\n *\n * @param {Proxy<object>} obj - The proxy wrapper of the originial object.\n * @returns {object | null} - Return either the unwrapped object if exists.\n *\n * @example\n * import { createProxy, getUntracked } from 'proxy-compare';\n *\n * const original = { a: \"1\", c: \"2\", d: { e: \"3\" } };\n * const affected = new WeakMap();\n *\n * const proxy = createProxy(original, affected);\n * const originalFromProxy = getUntracked(proxy)\n *\n * Object.is(original, originalFromProxy) // true\n * isChanged(original, originalFromProxy, affected) // false\n */\nexport const getUntracked = <T>(obj: T): T | null => {\n if (isObjectToTrack(obj)) {\n return (obj as { [GET_ORIGINAL_SYMBOL]?: T })[GET_ORIGINAL_SYMBOL] || null;\n }\n return null;\n};\n\n/**\n * Mark object to be tracked.\n *\n * This function marks an object that will be passed into `createProxy`\n * as marked to track or not. By default only Array and Object are marked to track,\n * so this is useful for example to mark a class instance to track or to mark a object\n * to be untracked when creating your proxy.\n *\n * @param obj - Object to mark as tracked or not.\n * @param mark - Boolean indicating whether you want to track this object or not.\n * @returns - No return.\n *\n * @example\n * import { createProxy, markToTrack, isChanged } from 'proxy-compare';\n *\n * const nested = { e: \"3\" }\n *\n * markToTrack(nested, false)\n *\n * const original = { a: \"1\", c: \"2\", d: nested };\n * const affected = new WeakMap();\n *\n * const proxy = createProxy(original, affected);\n *\n * proxy.d.e\n *\n * isChanged(original, { d: { e: \"3\" } }, affected) // true\n */\nexport const markToTrack = (obj: object, mark = true) => {\n objectsToTrack.set(obj, mark);\n};\n\n/**\n * Convert `affected` to path list\n *\n * `affected` is a weak map which is not printable.\n * This function is can convert it to printable path list.\n * It's for debugging purpose.\n *\n * @param obj - An object that is used with `createProxy`.\n * @param affected - A weak map that is used with `createProxy`.\n * @param onlyWithValues - An optional boolean to exclude object getters.\n * @returns - An array of paths.\n */\nexport const affectedToPathList = (\n obj: unknown,\n affected: WeakMap<object, unknown>,\n onlyWithValues?: boolean,\n) => {\n const list: (string | symbol)[][] = [];\n const seen = new WeakSet();\n const walk = (x: unknown, path?: (string | symbol)[]) => {\n if (seen.has(x as object)) {\n // for object with cycles\n return;\n }\n if (isObject(x)) {\n seen.add(x);\n }\n const used = isObject(x) && (affected as Affected).get(getOriginalObject(x));\n if (used) {\n used[HAS_KEY_PROPERTY]?.forEach((key) => {\n const segment = `:has(${String(key)})`;\n list.push(path ? [...path, segment] : [segment]);\n });\n if (used[ALL_OWN_KEYS_PROPERTY] === true) {\n const segment = ':ownKeys';\n list.push(path ? [...path, segment] : [segment]);\n } else {\n used[HAS_OWN_KEY_PROPERTY]?.forEach((key) => {\n const segment = `:hasOwn(${String(key)})`;\n list.push(path ? [...path, segment] : [segment]);\n });\n }\n used[KEYS_PROPERTY]?.forEach((key) => {\n if (!onlyWithValues || 'value' in (Object.getOwnPropertyDescriptor(x, key) || {})) {\n walk((x as any)[key], path ? [...path, key] : [key]);\n }\n });\n } else if (path) {\n list.push(path);\n }\n };\n walk(obj);\n return list;\n};\n\n/**\n * replace newProxy function.\n *\n * This can be used if you want to use proxy-polyfill.\n * Note that proxy-polyfill can't polyfill everything.\n * Use it at your own risk.\n */\nexport const replaceNewProxy = (fn: typeof newProxy) => {\n newProxy = fn;\n};\n"],"sourceRoot":""}
@@ -0,0 +1,2 @@
1
+ (this["webpackJsonp@dcl/explorer-website"]=this["webpackJsonp@dcl/explorer-website"]||[]).push([[6],{1308:function(e,p){},1310:function(e,p){}}]);
2
+ //# sourceMappingURL=6.376edb7c.chunk.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":[],"names":[],"mappings":"","file":"static/js/6.edc69014.chunk.js","sourceRoot":""}
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"static/js/6.376edb7c.chunk.js","sourceRoot":""}