UNPKG

starknetkit

Version:

<!-- logo --> <p align="center"> <img width='300' src="https://starknetkit-website-git-blo-1541-argentlabs.vercel.app/starknetKit-logo.svg"> </p>

19 lines (18 loc) 28.4 kB
"use strict";var U=Object.defineProperty;var K=(r,e,t)=>e in r?U(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t;var k=(r,e,t)=>(K(r,typeof e!="symbol"?e+"":e,t),t);const Z=require("./core-aa9478e0.cjs"),N=require("starknet"),p=require("./connector-391e8980.cjs"),H=require("./trpc-6791c117.cjs"),T=require("./lastConnected-2e5632be.cjs"),$=require("./argentX.cjs"),O=require("./index-aa5c5f7b.cjs"),J={mainnet:"https://starknet-mainnet.public.blastapi.io",testnet:"https://starknet-sepolia.public.blastapi.io"},Y={mainnet:"https://rpc.starknet.lava.build",testnet:"https://rpc.starknet-sepolia.lava.build"},I=[J,Y];function ee(){const r=Math.floor(Math.random()*I.length);return I[r]}const te=()=>Object.keys(localStorage).some(r=>r==="walletconnect"||r.startsWith("wc@2:")),P=()=>{if(te()){delete localStorage.walletconnect;for(const r in localStorage)r.startsWith("wc@2:")&&delete localStorage[r]}},L="f2e613881f7a0e811295cdd57999e31b",W=`<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg" > <rect width="32" height="32" rx="8" fill="#FF875B" /> <path d="M18.316 8H13.684C13.5292 8 13.4052 8.1272 13.4018 8.28531C13.3082 12.7296 11.0323 16.9477 7.11513 19.9355C6.99077 20.0303 6.96243 20.2085 7.05335 20.3369L9.76349 24.1654C9.85569 24.2957 10.0353 24.3251 10.1618 24.2294C12.6111 22.3734 14.5812 20.1345 16 17.6529C17.4187 20.1345 19.389 22.3734 21.8383 24.2294C21.9646 24.3251 22.1443 24.2957 22.2366 24.1654L24.9467 20.3369C25.0375 20.2085 25.0092 20.0303 24.885 19.9355C20.9676 16.9477 18.6918 12.7296 18.5983 8.28531C18.5949 8.1272 18.4708 8 18.316 8Z" fill="white" /> </svg>`;function re(){if(!(typeof window>"u"))return window?.starknet_argentX}const R=()=>{if(typeof window>"u")return!1;const r=re();return r?r.isInAppBrowser:!1};var se=typeof global=="object"&&global&&global.Object===Object&&global;const ne=se;var ie=typeof self=="object"&&self&&self.Object===Object&&self,oe=ne||ie||Function("return this")();const ae=oe;var ce=ae.Symbol;const _=ce;var G=Object.prototype,de=G.hasOwnProperty,le=G.toString,C=_?_.toStringTag:void 0;function ue(r){var e=de.call(r,C),t=r[C];try{r[C]=void 0;var n=!0}catch{}var i=le.call(r);return n&&(e?r[C]=t:delete r[C]),i}var he=Object.prototype,fe=he.toString;function ge(r){return fe.call(r)}var we="[object Null]",me="[object Undefined]",j=_?_.toStringTag:void 0;function be(r){return r==null?r===void 0?me:we:j&&j in Object(r)?ue(r):ge(r)}function pe(r){return r!=null&&typeof r=="object"}var ve=Array.isArray;const Me=ve;var ye="[object String]";function E(r){return typeof r=="string"||!Me(r)&&pe(r)&&be(r)==ye}function A(r){return r.isCompoundConnector}function S(r,e=!1){return A(r)?e?r.fallbackConnector:r.connector:r}function z(r,e){const t=r.find(n=>n?S(n)?.id===e:!1);return t?S(t):null}const Se={"Amazon Silk":"amazon_silk","Android Browser":"android",Bada:"bada",BlackBerry:"blackberry",Chrome:"chrome",Chromium:"chromium",Electron:"electron",Epiphany:"epiphany",Firefox:"firefox",Focus:"focus",Generic:"generic","Google Search":"google_search",Googlebot:"googlebot","Internet Explorer":"ie","K-Meleon":"k_meleon",Maxthon:"maxthon","Microsoft Edge":"edge","MZ Browser":"mz","NAVER Whale Browser":"naver",Opera:"opera","Opera Coast":"opera_coast",PhantomJS:"phantomjs",Puffin:"puffin",QupZilla:"qupzilla",QQ:"qq",QQLite:"qqlite",Safari:"safari",Sailfish:"sailfish","Samsung Internet for Android":"samsung_internet",SeaMonkey:"seamonkey",Sleipnir:"sleipnir",Swing:"swing",Tizen:"tizen","UC Browser":"uc",Vivaldi:"vivaldi","WebOS Browser":"webos",WeChat:"wechat","Yandex Browser":"yandex",Roku:"roku"},D={amazon_silk:"Amazon Silk",android:"Android Browser",bada:"Bada",blackberry:"BlackBerry",chrome:"Chrome",chromium:"Chromium",electron:"Electron",epiphany:"Epiphany",firefox:"Firefox",focus:"Focus",generic:"Generic",googlebot:"Googlebot",google_search:"Google Search",ie:"Internet Explorer",k_meleon:"K-Meleon",maxthon:"Maxthon",edge:"Microsoft Edge",mz:"MZ Browser",naver:"NAVER Whale Browser",opera:"Opera",opera_coast:"Opera Coast",phantomjs:"PhantomJS",puffin:"Puffin",qupzilla:"QupZilla",qq:"QQ Browser",qqlite:"QQ Browser Lite",safari:"Safari",sailfish:"Sailfish",samsung_internet:"Samsung Internet for Android",seamonkey:"SeaMonkey",sleipnir:"Sleipnir",swing:"Swing",tizen:"Tizen",uc:"UC Browser",vivaldi:"Vivaldi",webos:"WebOS Browser",wechat:"WeChat",yandex:"Yandex Browser"},u={tablet:"tablet",mobile:"mobile",desktop:"desktop",tv:"tv"},w={WindowsPhone:"Windows Phone",Windows:"Windows",MacOS:"macOS",iOS:"iOS",Android:"Android",WebOS:"WebOS",BlackBerry:"BlackBerry",Bada:"Bada",Tizen:"Tizen",Linux:"Linux",ChromeOS:"Chrome OS",PlayStation4:"PlayStation 4",Roku:"Roku"},y={EdgeHTML:"EdgeHTML",Blink:"Blink",Trident:"Trident",Presto:"Presto",Gecko:"Gecko",WebKit:"WebKit"};class s{static getFirstMatch(e,t){const n=t.match(e);return n&&n.length>0&&n[1]||""}static getSecondMatch(e,t){const n=t.match(e);return n&&n.length>1&&n[2]||""}static matchAndReturnConst(e,t,n){if(e.test(t))return n}static getWindowsVersionName(e){switch(e){case"NT":return"NT";case"XP":return"XP";case"NT 5.0":return"2000";case"NT 5.1":return"XP";case"NT 5.2":return"2003";case"NT 6.0":return"Vista";case"NT 6.1":return"7";case"NT 6.2":return"8";case"NT 6.3":return"8.1";case"NT 10.0":return"10";default:return}}static getMacOSVersionName(e){const t=e.split(".").splice(0,2).map(n=>parseInt(n,10)||0);if(t.push(0),t[0]===10)switch(t[1]){case 5:return"Leopard";case 6:return"Snow Leopard";case 7:return"Lion";case 8:return"Mountain Lion";case 9:return"Mavericks";case 10:return"Yosemite";case 11:return"El Capitan";case 12:return"Sierra";case 13:return"High Sierra";case 14:return"Mojave";case 15:return"Catalina";default:return}}static getAndroidVersionName(e){const t=e.split(".").splice(0,2).map(n=>parseInt(n,10)||0);if(t.push(0),!(t[0]===1&&t[1]<5)){if(t[0]===1&&t[1]<6)return"Cupcake";if(t[0]===1&&t[1]>=6)return"Donut";if(t[0]===2&&t[1]<2)return"Eclair";if(t[0]===2&&t[1]===2)return"Froyo";if(t[0]===2&&t[1]>2)return"Gingerbread";if(t[0]===3)return"Honeycomb";if(t[0]===4&&t[1]<1)return"Ice Cream Sandwich";if(t[0]===4&&t[1]<4)return"Jelly Bean";if(t[0]===4&&t[1]>=4)return"KitKat";if(t[0]===5)return"Lollipop";if(t[0]===6)return"Marshmallow";if(t[0]===7)return"Nougat";if(t[0]===8)return"Oreo";if(t[0]===9)return"Pie"}}static getVersionPrecision(e){return e.split(".").length}static compareVersions(e,t,n=!1){const i=s.getVersionPrecision(e),c=s.getVersionPrecision(t);let a=Math.max(i,c),h=0;const l=s.map([e,t],d=>{const f=a-s.getVersionPrecision(d),b=d+new Array(f+1).join(".0");return s.map(b.split("."),g=>new Array(20-g.length).join("0")+g).reverse()});for(n&&(h=a-Math.min(i,c)),a-=1;a>=h;){if(l[0][a]>l[1][a])return 1;if(l[0][a]===l[1][a]){if(a===h)return 0;a-=1}else if(l[0][a]<l[1][a])return-1}}static map(e,t){const n=[];let i;if(Array.prototype.map)return Array.prototype.map.call(e,t);for(i=0;i<e.length;i+=1)n.push(t(e[i]));return n}static find(e,t){let n,i;if(Array.prototype.find)return Array.prototype.find.call(e,t);for(n=0,i=e.length;n<i;n+=1){const c=e[n];if(t(c,n))return c}}static assign(e,...t){const n=e;let i,c;if(Object.assign)return Object.assign(e,...t);for(i=0,c=t.length;i<c;i+=1){const a=t[i];typeof a=="object"&&a!==null&&Object.keys(a).forEach(l=>{n[l]=a[l]})}return e}static getBrowserAlias(e){return Se[e]}static getBrowserTypeByAlias(e){return D[e]||""}}const o=/version\/(\d+(\.?_?\d+)+)/i,Be=[{test:[/googlebot/i],describe(r){const e={name:"Googlebot"},t=s.getFirstMatch(/googlebot\/(\d+(\.\d+))/i,r)||s.getFirstMatch(o,r);return t&&(e.version=t),e}},{test:[/opera/i],describe(r){const e={name:"Opera"},t=s.getFirstMatch(o,r)||s.getFirstMatch(/(?:opera)[\s/](\d+(\.?_?\d+)+)/i,r);return t&&(e.version=t),e}},{test:[/opr\/|opios/i],describe(r){const e={name:"Opera"},t=s.getFirstMatch(/(?:opr|opios)[\s/](\S+)/i,r)||s.getFirstMatch(o,r);return t&&(e.version=t),e}},{test:[/SamsungBrowser/i],describe(r){const e={name:"Samsung Internet for Android"},t=s.getFirstMatch(o,r)||s.getFirstMatch(/(?:SamsungBrowser)[\s/](\d+(\.?_?\d+)+)/i,r);return t&&(e.version=t),e}},{test:[/Whale/i],describe(r){const e={name:"NAVER Whale Browser"},t=s.getFirstMatch(o,r)||s.getFirstMatch(/(?:whale)[\s/](\d+(?:\.\d+)+)/i,r);return t&&(e.version=t),e}},{test:[/MZBrowser/i],describe(r){const e={name:"MZ Browser"},t=s.getFirstMatch(/(?:MZBrowser)[\s/](\d+(?:\.\d+)+)/i,r)||s.getFirstMatch(o,r);return t&&(e.version=t),e}},{test:[/focus/i],describe(r){const e={name:"Focus"},t=s.getFirstMatch(/(?:focus)[\s/](\d+(?:\.\d+)+)/i,r)||s.getFirstMatch(o,r);return t&&(e.version=t),e}},{test:[/swing/i],describe(r){const e={name:"Swing"},t=s.getFirstMatch(/(?:swing)[\s/](\d+(?:\.\d+)+)/i,r)||s.getFirstMatch(o,r);return t&&(e.version=t),e}},{test:[/coast/i],describe(r){const e={name:"Opera Coast"},t=s.getFirstMatch(o,r)||s.getFirstMatch(/(?:coast)[\s/](\d+(\.?_?\d+)+)/i,r);return t&&(e.version=t),e}},{test:[/opt\/\d+(?:.?_?\d+)+/i],describe(r){const e={name:"Opera Touch"},t=s.getFirstMatch(/(?:opt)[\s/](\d+(\.?_?\d+)+)/i,r)||s.getFirstMatch(o,r);return t&&(e.version=t),e}},{test:[/yabrowser/i],describe(r){const e={name:"Yandex Browser"},t=s.getFirstMatch(/(?:yabrowser)[\s/](\d+(\.?_?\d+)+)/i,r)||s.getFirstMatch(o,r);return t&&(e.version=t),e}},{test:[/ucbrowser/i],describe(r){const e={name:"UC Browser"},t=s.getFirstMatch(o,r)||s.getFirstMatch(/(?:ucbrowser)[\s/](\d+(\.?_?\d+)+)/i,r);return t&&(e.version=t),e}},{test:[/Maxthon|mxios/i],describe(r){const e={name:"Maxthon"},t=s.getFirstMatch(o,r)||s.getFirstMatch(/(?:Maxthon|mxios)[\s/](\d+(\.?_?\d+)+)/i,r);return t&&(e.version=t),e}},{test:[/epiphany/i],describe(r){const e={name:"Epiphany"},t=s.getFirstMatch(o,r)||s.getFirstMatch(/(?:epiphany)[\s/](\d+(\.?_?\d+)+)/i,r);return t&&(e.version=t),e}},{test:[/puffin/i],describe(r){const e={name:"Puffin"},t=s.getFirstMatch(o,r)||s.getFirstMatch(/(?:puffin)[\s/](\d+(\.?_?\d+)+)/i,r);return t&&(e.version=t),e}},{test:[/sleipnir/i],describe(r){const e={name:"Sleipnir"},t=s.getFirstMatch(o,r)||s.getFirstMatch(/(?:sleipnir)[\s/](\d+(\.?_?\d+)+)/i,r);return t&&(e.version=t),e}},{test:[/k-meleon/i],describe(r){const e={name:"K-Meleon"},t=s.getFirstMatch(o,r)||s.getFirstMatch(/(?:k-meleon)[\s/](\d+(\.?_?\d+)+)/i,r);return t&&(e.version=t),e}},{test:[/micromessenger/i],describe(r){const e={name:"WeChat"},t=s.getFirstMatch(/(?:micromessenger)[\s/](\d+(\.?_?\d+)+)/i,r)||s.getFirstMatch(o,r);return t&&(e.version=t),e}},{test:[/qqbrowser/i],describe(r){const e={name:/qqbrowserlite/i.test(r)?"QQ Browser Lite":"QQ Browser"},t=s.getFirstMatch(/(?:qqbrowserlite|qqbrowser)[/](\d+(\.?_?\d+)+)/i,r)||s.getFirstMatch(o,r);return t&&(e.version=t),e}},{test:[/msie|trident/i],describe(r){const e={name:"Internet Explorer"},t=s.getFirstMatch(/(?:msie |rv:)(\d+(\.?_?\d+)+)/i,r);return t&&(e.version=t),e}},{test:[/\sedg\//i],describe(r){const e={name:"Microsoft Edge"},t=s.getFirstMatch(/\sedg\/(\d+(\.?_?\d+)+)/i,r);return t&&(e.version=t),e}},{test:[/edg([ea]|ios)/i],describe(r){const e={name:"Microsoft Edge"},t=s.getSecondMatch(/edg([ea]|ios)\/(\d+(\.?_?\d+)+)/i,r);return t&&(e.version=t),e}},{test:[/vivaldi/i],describe(r){const e={name:"Vivaldi"},t=s.getFirstMatch(/vivaldi\/(\d+(\.?_?\d+)+)/i,r);return t&&(e.version=t),e}},{test:[/seamonkey/i],describe(r){const e={name:"SeaMonkey"},t=s.getFirstMatch(/seamonkey\/(\d+(\.?_?\d+)+)/i,r);return t&&(e.version=t),e}},{test:[/sailfish/i],describe(r){const e={name:"Sailfish"},t=s.getFirstMatch(/sailfish\s?browser\/(\d+(\.\d+)?)/i,r);return t&&(e.version=t),e}},{test:[/silk/i],describe(r){const e={name:"Amazon Silk"},t=s.getFirstMatch(/silk\/(\d+(\.?_?\d+)+)/i,r);return t&&(e.version=t),e}},{test:[/phantom/i],describe(r){const e={name:"PhantomJS"},t=s.getFirstMatch(/phantomjs\/(\d+(\.?_?\d+)+)/i,r);return t&&(e.version=t),e}},{test:[/slimerjs/i],describe(r){const e={name:"SlimerJS"},t=s.getFirstMatch(/slimerjs\/(\d+(\.?_?\d+)+)/i,r);return t&&(e.version=t),e}},{test:[/blackberry|\bbb\d+/i,/rim\stablet/i],describe(r){const e={name:"BlackBerry"},t=s.getFirstMatch(o,r)||s.getFirstMatch(/blackberry[\d]+\/(\d+(\.?_?\d+)+)/i,r);return t&&(e.version=t),e}},{test:[/(web|hpw)[o0]s/i],describe(r){const e={name:"WebOS Browser"},t=s.getFirstMatch(o,r)||s.getFirstMatch(/w(?:eb)?[o0]sbrowser\/(\d+(\.?_?\d+)+)/i,r);return t&&(e.version=t),e}},{test:[/bada/i],describe(r){const e={name:"Bada"},t=s.getFirstMatch(/dolfin\/(\d+(\.?_?\d+)+)/i,r);return t&&(e.version=t),e}},{test:[/tizen/i],describe(r){const e={name:"Tizen"},t=s.getFirstMatch(/(?:tizen\s?)?browser\/(\d+(\.?_?\d+)+)/i,r)||s.getFirstMatch(o,r);return t&&(e.version=t),e}},{test:[/qupzilla/i],describe(r){const e={name:"QupZilla"},t=s.getFirstMatch(/(?:qupzilla)[\s/](\d+(\.?_?\d+)+)/i,r)||s.getFirstMatch(o,r);return t&&(e.version=t),e}},{test:[/firefox|iceweasel|fxios/i],describe(r){const e={name:"Firefox"},t=s.getFirstMatch(/(?:firefox|iceweasel|fxios)[\s/](\d+(\.?_?\d+)+)/i,r);return t&&(e.version=t),e}},{test:[/electron/i],describe(r){const e={name:"Electron"},t=s.getFirstMatch(/(?:electron)\/(\d+(\.?_?\d+)+)/i,r);return t&&(e.version=t),e}},{test:[/MiuiBrowser/i],describe(r){const e={name:"Miui"},t=s.getFirstMatch(/(?:MiuiBrowser)[\s/](\d+(\.?_?\d+)+)/i,r);return t&&(e.version=t),e}},{test:[/chromium/i],describe(r){const e={name:"Chromium"},t=s.getFirstMatch(/(?:chromium)[\s/](\d+(\.?_?\d+)+)/i,r)||s.getFirstMatch(o,r);return t&&(e.version=t),e}},{test:[/chrome|crios|crmo/i],describe(r){const e={name:"Chrome"},t=s.getFirstMatch(/(?:chrome|crios|crmo)\/(\d+(\.?_?\d+)+)/i,r);return t&&(e.version=t),e}},{test:[/GSA/i],describe(r){const e={name:"Google Search"},t=s.getFirstMatch(/(?:GSA)\/(\d+(\.?_?\d+)+)/i,r);return t&&(e.version=t),e}},{test(r){const e=!r.test(/like android/i),t=r.test(/android/i);return e&&t},describe(r){const e={name:"Android Browser"},t=s.getFirstMatch(o,r);return t&&(e.version=t),e}},{test:[/playstation 4/i],describe(r){const e={name:"PlayStation 4"},t=s.getFirstMatch(o,r);return t&&(e.version=t),e}},{test:[/safari|applewebkit/i],describe(r){const e={name:"Safari"},t=s.getFirstMatch(o,r);return t&&(e.version=t),e}},{test:[/.*/i],describe(r){const e=/^(.*)\/(.*) /,t=/^(.*)\/(.*)[ \t]\((.*)/,i=r.search("\\(")!==-1?t:e;return{name:s.getFirstMatch(i,r),version:s.getSecondMatch(i,r)}}}],Fe=[{test:[/Roku\/DVP/],describe(r){const e=s.getFirstMatch(/Roku\/DVP-(\d+\.\d+)/i,r);return{name:w.Roku,version:e}}},{test:[/windows phone/i],describe(r){const e=s.getFirstMatch(/windows phone (?:os)?\s?(\d+(\.\d+)*)/i,r);return{name:w.WindowsPhone,version:e}}},{test:[/windows /i],describe(r){const e=s.getFirstMatch(/Windows ((NT|XP)( \d\d?.\d)?)/i,r),t=s.getWindowsVersionName(e);return{name:w.Windows,version:e,versionName:t}}},{test:[/Macintosh(.*?) FxiOS(.*?)\//],describe(r){const e={name:w.iOS},t=s.getSecondMatch(/(Version\/)(\d[\d.]+)/,r);return t&&(e.version=t),e}},{test:[/macintosh/i],describe(r){const e=s.getFirstMatch(/mac os x (\d+(\.?_?\d+)+)/i,r).replace(/[_\s]/g,"."),t=s.getMacOSVersionName(e),n={name:w.MacOS,version:e};return t&&(n.versionName=t),n}},{test:[/(ipod|iphone|ipad)/i],describe(r){const e=s.getFirstMatch(/os (\d+([_\s]\d+)*) like mac os x/i,r).replace(/[_\s]/g,".");return{name:w.iOS,version:e}}},{test(r){const e=!r.test(/like android/i),t=r.test(/android/i);return e&&t},describe(r){const e=s.getFirstMatch(/android[\s/-](\d+(\.\d+)*)/i,r),t=s.getAndroidVersionName(e),n={name:w.Android,version:e};return t&&(n.versionName=t),n}},{test:[/(web|hpw)[o0]s/i],describe(r){const e=s.getFirstMatch(/(?:web|hpw)[o0]s\/(\d+(\.\d+)*)/i,r),t={name:w.WebOS};return e&&e.length&&(t.version=e),t}},{test:[/blackberry|\bbb\d+/i,/rim\stablet/i],describe(r){const e=s.getFirstMatch(/rim\stablet\sos\s(\d+(\.\d+)*)/i,r)||s.getFirstMatch(/blackberry\d+\/(\d+([_\s]\d+)*)/i,r)||s.getFirstMatch(/\bbb(\d+)/i,r);return{name:w.BlackBerry,version:e}}},{test:[/bada/i],describe(r){const e=s.getFirstMatch(/bada\/(\d+(\.\d+)*)/i,r);return{name:w.Bada,version:e}}},{test:[/tizen/i],describe(r){const e=s.getFirstMatch(/tizen[/\s](\d+(\.\d+)*)/i,r);return{name:w.Tizen,version:e}}},{test:[/linux/i],describe(){return{name:w.Linux}}},{test:[/CrOS/],describe(){return{name:w.ChromeOS}}},{test:[/PlayStation 4/],describe(r){const e=s.getFirstMatch(/PlayStation 4[/\s](\d+(\.\d+)*)/i,r);return{name:w.PlayStation4,version:e}}}],Ce=[{test:[/googlebot/i],describe(){return{type:"bot",vendor:"Google"}}},{test:[/huawei/i],describe(r){const e=s.getFirstMatch(/(can-l01)/i,r)&&"Nova",t={type:u.mobile,vendor:"Huawei"};return e&&(t.model=e),t}},{test:[/nexus\s*(?:7|8|9|10).*/i],describe(){return{type:u.tablet,vendor:"Nexus"}}},{test:[/ipad/i],describe(){return{type:u.tablet,vendor:"Apple",model:"iPad"}}},{test:[/Macintosh(.*?) FxiOS(.*?)\//],describe(){return{type:u.tablet,vendor:"Apple",model:"iPad"}}},{test:[/kftt build/i],describe(){return{type:u.tablet,vendor:"Amazon",model:"Kindle Fire HD 7"}}},{test:[/silk/i],describe(){return{type:u.tablet,vendor:"Amazon"}}},{test:[/tablet(?! pc)/i],describe(){return{type:u.tablet}}},{test(r){const e=r.test(/ipod|iphone/i),t=r.test(/like (ipod|iphone)/i);return e&&!t},describe(r){const e=s.getFirstMatch(/(ipod|iphone)/i,r);return{type:u.mobile,vendor:"Apple",model:e}}},{test:[/nexus\s*[0-6].*/i,/galaxy nexus/i],describe(){return{type:u.mobile,vendor:"Nexus"}}},{test:[/[^-]mobi/i],describe(){return{type:u.mobile}}},{test(r){return r.getBrowserName(!0)==="blackberry"},describe(){return{type:u.mobile,vendor:"BlackBerry"}}},{test(r){return r.getBrowserName(!0)==="bada"},describe(){return{type:u.mobile}}},{test(r){return r.getBrowserName()==="windows phone"},describe(){return{type:u.mobile,vendor:"Microsoft"}}},{test(r){const e=Number(String(r.getOSVersion()).split(".")[0]);return r.getOSName(!0)==="android"&&e>=3},describe(){return{type:u.tablet}}},{test(r){return r.getOSName(!0)==="android"},describe(){return{type:u.mobile}}},{test(r){return r.getOSName(!0)==="macos"},describe(){return{type:u.desktop,vendor:"Apple"}}},{test(r){return r.getOSName(!0)==="windows"},describe(){return{type:u.desktop}}},{test(r){return r.getOSName(!0)==="linux"},describe(){return{type:u.desktop}}},{test(r){return r.getOSName(!0)==="playstation 4"},describe(){return{type:u.tv}}},{test(r){return r.getOSName(!0)==="roku"},describe(){return{type:u.tv}}}],_e=[{test(r){return r.getBrowserName(!0)==="microsoft edge"},describe(r){if(/\sedg\//i.test(r))return{name:y.Blink};const t=s.getFirstMatch(/edge\/(\d+(\.?_?\d+)+)/i,r);return{name:y.EdgeHTML,version:t}}},{test:[/trident/i],describe(r){const e={name:y.Trident},t=s.getFirstMatch(/trident\/(\d+(\.?_?\d+)+)/i,r);return t&&(e.version=t),e}},{test(r){return r.test(/presto/i)},describe(r){const e={name:y.Presto},t=s.getFirstMatch(/presto\/(\d+(\.?_?\d+)+)/i,r);return t&&(e.version=t),e}},{test(r){const e=r.test(/gecko/i),t=r.test(/like gecko/i);return e&&!t},describe(r){const e={name:y.Gecko},t=s.getFirstMatch(/gecko\/(\d+(\.?_?\d+)+)/i,r);return t&&(e.version=t),e}},{test:[/(apple)?webkit\/537\.36/i],describe(){return{name:y.Blink}}},{test:[/(apple)?webkit/i],describe(r){const e={name:y.WebKit},t=s.getFirstMatch(/webkit\/(\d+(\.?_?\d+)+)/i,r);return t&&(e.version=t),e}}];class q{constructor(e,t=!1){if(e==null||e==="")throw new Error("UserAgent parameter can't be empty");this._ua=e,this.parsedResult={},t!==!0&&this.parse()}getUA(){return this._ua}test(e){return e.test(this._ua)}parseBrowser(){this.parsedResult.browser={};const e=s.find(Be,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.browser=e.describe(this.getUA())),this.parsedResult.browser}getBrowser(){return this.parsedResult.browser?this.parsedResult.browser:this.parseBrowser()}getBrowserName(e){return e?String(this.getBrowser().name).toLowerCase()||"":this.getBrowser().name||""}getBrowserVersion(){return this.getBrowser().version}getOS(){return this.parsedResult.os?this.parsedResult.os:this.parseOS()}parseOS(){this.parsedResult.os={};const e=s.find(Fe,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.os=e.describe(this.getUA())),this.parsedResult.os}getOSName(e){const{name:t}=this.getOS();return e?String(t).toLowerCase()||"":t||""}getOSVersion(){return this.getOS().version}getPlatform(){return this.parsedResult.platform?this.parsedResult.platform:this.parsePlatform()}getPlatformType(e=!1){const{type:t}=this.getPlatform();return e?String(t).toLowerCase()||"":t||""}parsePlatform(){this.parsedResult.platform={};const e=s.find(Ce,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.platform=e.describe(this.getUA())),this.parsedResult.platform}getEngine(){return this.parsedResult.engine?this.parsedResult.engine:this.parseEngine()}getEngineName(e){return e?String(this.getEngine().name).toLowerCase()||"":this.getEngine().name||""}parseEngine(){this.parsedResult.engine={};const e=s.find(_e,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.engine=e.describe(this.getUA())),this.parsedResult.engine}parse(){return this.parseBrowser(),this.parseOS(),this.parsePlatform(),this.parseEngine(),this}getResult(){return s.assign({},this.parsedResult)}satisfies(e){const t={};let n=0;const i={};let c=0;if(Object.keys(e).forEach(h=>{const l=e[h];typeof l=="string"?(i[h]=l,c+=1):typeof l=="object"&&(t[h]=l,n+=1)}),n>0){const h=Object.keys(t),l=s.find(h,f=>this.isOS(f));if(l){const f=this.satisfies(t[l]);if(f!==void 0)return f}const d=s.find(h,f=>this.isPlatform(f));if(d){const f=this.satisfies(t[d]);if(f!==void 0)return f}}if(c>0){const h=Object.keys(i),l=s.find(h,d=>this.isBrowser(d,!0));if(l!==void 0)return this.compareVersion(i[l])}}isBrowser(e,t=!1){const n=this.getBrowserName().toLowerCase();let i=e.toLowerCase();const c=s.getBrowserTypeByAlias(i);return t&&c&&(i=c.toLowerCase()),i===n}compareVersion(e){let t=[0],n=e,i=!1;const c=this.getBrowserVersion();if(typeof c=="string")return e[0]===">"||e[0]==="<"?(n=e.substr(1),e[1]==="="?(i=!0,n=e.substr(2)):t=[],e[0]===">"?t.push(1):t.push(-1)):e[0]==="="?n=e.substr(1):e[0]==="~"&&(i=!0,n=e.substr(1)),t.indexOf(s.compareVersions(c,n,i))>-1}isOS(e){return this.getOSName(!0)===String(e).toLowerCase()}isPlatform(e){return this.getPlatformType(!0)===String(e).toLowerCase()}isEngine(e){return this.getEngineName(!0)===String(e).toLowerCase()}is(e,t=!1){return this.isBrowser(e,t)||this.isOS(e)||this.isPlatform(e)}some(e=[]){return e.some(t=>this.is(t))}}/*! * Bowser - a browser detector * https://github.com/lancedikson/bowser * MIT License | (c) Dustin Diaz 2012-2015 * MIT License | (c) Denis Demchenko 2015-2019 */class Ae{static getParser(e,t=!1){if(typeof e!="string")throw new Error("UserAgent should be a string");return new q(e,t)}static parse(e){return new q(e).getResult()}static get BROWSER_MAP(){return D}static get ENGINE_MAP(){return y}static get OS_MAP(){return w}static get PLATFORMS_MAP(){return u}}const V=typeof window<"u"?window:null;function Q(){if(!V)return null;switch(Ae.getParser(V.navigator.userAgent).getBrowserName()?.toLowerCase()){case"firefox":return"firefox";case"microsoft edge":return"edge";case"android browser":case"chrome":case"chromium":case"electron":case"opera":case"vivaldi":return"chrome";default:return null}}function x(r,e,t){let n=t;n||(n=Q());const i=S(r),c=A(r),a=e?.find(h=>h.id===(i.id==="argentMobile"?"argentX":i.id))?.downloads;return{name:c?r.name:i.name,id:i.id,icon:c?r.icon:i.icon,connector:r,installed:!0,title:"title"in i&&E(i.title)?i.title:void 0,subtitle:"subtitle"in i&&E(i.subtitle)?i.subtitle:void 0,download:a?.[n],downloads:a}}const ke=({availableConnectors:r,installedWallets:e,discoveryWallets:t,storeVersion:n,customOrder:i})=>{if(R())return[];const a=e.map(d=>z(r,d.id));return(i?r:[...r.filter(d=>a.includes(S(d))),...r.filter(d=>!a.includes(S(d)))]).map(d=>{const f=A(d),b=S(d),g=e.find(m=>m.id===b?.id);if(g){let m,v;f?(m=d.icon,v=d.name):(m=g.id==="argentX"?{light:O.ARGENT_X_ICON,dark:O.ARGENT_X_ICON}:E(g.icon)?{light:g.icon,dark:g.icon}:g.icon,v=g.id==="argentX"?"Ready Wallet (formerly Argent)":g.name);const B=t.find(F=>F.id===(g.id==="argentMobile"?"argentX":b?.id))?.downloads;return{name:v,id:g.id,icon:m,connector:d,installed:!0,download:B?.[n],downloads:B}}const M=t.filter(m=>!!m.downloads[n]).find(m=>m.id===b?.id);if(M){const{downloads:m}=M,v=M.id==="argentX"?O.ARGENT_X_ICON:M.icon;return{name:M.name,id:M.id,icon:{light:v,dark:v},connector:d,installed:!1,download:m[n],downloads:m}}return!b||!b.id||!b.name?null:x(d,t)}).filter(d=>d!==null)};class X extends p.Connector{constructor(t){super();k(this,"_wallet",null);k(this,"_options");this._options=t}available(){return!0}async ready(){if(!this._wallet)return!1;try{return(await this._wallet.request({type:"wallet_getPermissions"})).includes(T.Permission.ACCOUNTS)}catch{return!1}}get id(){return"argentMobile"}get name(){return"Ready (formerly Argent)"}get icon(){return{dark:W,light:W}}get wallet(){if(!this._wallet)throw new p.ConnectorNotConnectedError;return this._wallet}async connect(t={}){if(await this.ensureWallet({onlyQRCode:t?.onlyQRCode}),!this._wallet)throw new p.ConnectorNotFoundError;const n=await this._wallet.request({type:"wallet_requestAccounts"}),i=await this.chainId();return{account:n[0],chainId:i}}async disconnect(){if(await this._wallet.disable(),P(),!this.available()&&!this._wallet)throw new p.ConnectorNotFoundError;this._wallet=null}async account(t){if(!this._wallet)throw new p.ConnectorNotConnectedError;const n=await this._wallet.request({type:"wallet_requestAccounts",params:{silent_mode:!0}});return new N.WalletAccount(t,this._wallet,n[0],void 0)}async chainId(){if(!this._wallet)throw new p.ConnectorNotConnectedError;const t=await this._wallet.request({type:"wallet_requestChainId"}),n=H.getStarknetChainId(t);return BigInt(n)}async request(t){if(!this._wallet)throw new p.ConnectorNotConnectedError;try{return await this._wallet.request(t)}catch{throw new p.UserRejectedRequestError}}async initEventListener(t){if(!this._wallet)throw new p.ConnectorNotConnectedError;this._wallet.on("accountsChanged",t)}async removeEventListener(t){if(!this._wallet)throw new p.ConnectorNotConnectedError;this._wallet.off("accountsChanged",t),this._wallet=null}async ensureWallet(t){const{getStarknetWindowObject:n}=await Promise.resolve().then(()=>require("./index-93fc7ad9.cjs")),{chainId:i,projectId:c,dappName:a,description:h,url:l,icons:d,rpcUrl:f}=this._options,b=ee(),g=f??(!i||i===N.constants.NetworkName.SN_MAIN?b.mainnet:b.testnet),M=(await Z.main.getDiscoveryWallets()).map(F=>F.id.toLowerCase()==="argentx"?{...F,name:"Ready Wallet (formerly Argent)"}:F),m={onlyQRCode:t?.onlyQRCode,chainId:i??N.constants.NetworkName.SN_MAIN,name:a,projectId:c??L,description:h,url:l,icons:d,rpcUrl:g,modalWallet:x(this,M)};c===L&&(console.log("========= NOTICE ========="),console.log("While your application will continue to function, we highly recommended"),console.log("signing up for your own API keys."),console.log("Go to WalletConnect Cloud (https://cloud.walletconnect.com) and create a new account."),console.log("Once your account is created, create a new project and collect the Project ID"),console.log("=========================="));const v=await n(m);if(!v)throw new p.UserRejectedRequestError;this._wallet=v;const B=this._wallet;await B.enable(),B.client.on("session_delete",()=>{P(),this._wallet=null,T.removeStarknetLastConnectedWallet(),document.dispatchEvent(new Event("wallet_disconnected"))})}}class Ne{static init({options:e,inAppBrowserOptions:t}){return R()?new $.ArgentX(t):new X(e)}}exports.ArgentMobileBaseConnector=X;exports.ArgentMobileConnector=Ne;exports.extractConnector=S;exports.findConnectorById=z;exports.getModalWallet=x;exports.getStoreVersionFromBrowser=Q;exports.isCompoundConnector=A;exports.isInArgentMobileAppBrowser=R;exports.mapModalWallets=ke;exports.resetWalletConnect=P;