@avalabs/avalanche-module 4.1.0 → 4.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs CHANGED
@@ -7,43 +7,43 @@ var glacierSdk = require('@avalabs/glacier-sdk');
7
7
  var rpcErrors = require('@metamask/rpc-errors');
8
8
  var coreWalletsSdk = require('@avalabs/core-wallets-sdk');
9
9
  var avalanchejs = require('@avalabs/avalanchejs');
10
- var X = require('big.js');
10
+ var j = require('big.js');
11
11
  var cryptoSdk = require('@avalabs/crypto-sdk');
12
12
  var coreUtilsSdk = require('@avalabs/core-utils-sdk');
13
- var Aa = require('crypto');
13
+ var gs = require('crypto');
14
14
 
15
15
  function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
16
16
 
17
- var X__default = /*#__PURE__*/_interopDefault(X);
18
- var Aa__default = /*#__PURE__*/_interopDefault(Aa);
17
+ var j__default = /*#__PURE__*/_interopDefault(j);
18
+ var gs__default = /*#__PURE__*/_interopDefault(gs);
19
19
 
20
- var Wt=Object.defineProperty;var cn=(e,t,r)=>t in e?Wt(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r;var a=(e,t)=>Wt(e,"name",{value:t,configurable:!0});var $=(e,t,r)=>(cn(e,typeof t!="symbol"?t+"":t,r),r),Ye=(e,t,r)=>{if(!t.has(e))throw TypeError("Cannot "+r)};var y=(e,t,r)=>(Ye(e,t,"read from private field"),r?r.call(e):t.get(e)),I=(e,t,r)=>{if(t.has(e))throw TypeError("Cannot add the same private member more than once");t instanceof WeakSet?t.add(e):t.set(e,r);},C=(e,t,r,n)=>(Ye(e,t,"write to private field"),n?n.call(e,r):t.set(e,r),r);var Qe=(e,t,r)=>(Ye(e,t,"access private method"),r);function Kt(e){let t,r=0;for(t=0;t<e.length;t++)r+=e.charCodeAt(t)*(t+1);return r}a(Kt,"charsum");function Ze(e){let t,r=0;for(t=0;t<e.length;t++){let n=Kt(e[t]??"");r=r+65027/n;}return (""+r).slice(0,16)}a(Ze,"arrayHash");var j=a(async({operation:e,isSuccess:t,maxRetries:r=10,backoffPolicy:n=_.exponential()})=>{let o=0,s=0,i;for(;s<r;){s>0&&await ln(o);try{let l=await e(s);if(t(l))return l}catch(l){i=l;}o=n(s),s++;}let c=i?`Max retry exceeded. ${i}`:"Max retry exceeded.";throw new Error(c)},"retry"),et=class et{static exponential(){return t=>Math.pow(2,t)*1e3}static constant(t){return r=>t*1e3}static constantMs(t){return r=>t}static linearThenExponential(t,r){return n=>{if(n<t)return (n+1)*r;let o=n-t+1,s=t*r,i=2*r*(Math.pow(2,o)-1);return s+i}}};a(et,"RetryBackoffPolicy");var _=et;function ln(e){return new Promise(t=>setTimeout(t,e))}a(ln,"delay");var tt=a(e=>j({operation:t=>e(t>0),maxRetries:2,backoffPolicy:_.constant(1),isSuccess:t=>t?.status?.error_code!==429}),"coingeckoRetry");async function W(e,t,r=fetch){let n=await r(...e);if(!n.ok)throw new Error(`Request failed with status ${n.status}`);let o=await n.json();return t.parse(o)}a(W,"fetchAndVerify");var rt=class rt{constructor(t,r){this.proxyApiUrl=t;this.fetchFn=r;}simplePrice(t){let r=new URLSearchParams(t);return W([`${this.proxyApiUrl}/proxy/coingecko/simple/price?${r}`,{method:"POST",headers:{"Content-Type":"application/json"}}],vmModuleTypes.RawSimplePriceResponseSchema,this.fetchFn)}simplePriceByContractAddresses(t){let{id:r,...n}=t,o=new URLSearchParams(n);return W([`${this.proxyApiUrl}/proxy/coingecko/simple/token_price/${r}?${o}`,{method:"POST",headers:{"Content-Type":"application/json"}}],vmModuleTypes.RawSimplePriceResponseSchema,this.fetchFn)}};a(rt,"CoingeckoProxyClient");var ke=rt;var dn=zod.z.array(zod.z.object({internalId:zod.z.string(),id:zod.z.string(),symbol:zod.z.string(),name:zod.z.string(),image:zod.z.string().optional().nullable(),current_price:zod.z.number().optional().nullable(),price_change_percentage_24h:zod.z.number().optional().nullable(),market_cap:zod.z.number().optional().nullable(),total_volume:zod.z.number().optional().nullable(),platforms:zod.z.record(zod.z.string(),zod.z.string())})),nt=class nt{constructor(t){this.proxyApiUrl=t;}watchlistToken(t){let r=new URLSearchParams(t);return W([`${this.proxyApiUrl}/watchlist/tokens?${r}`,{method:"GET",headers:{"Content-Type":"application/json"}}],dn)}};a(nt,"WatchlistProxyClient");var Be=nt;var O,K,J,ae,at=class at{constructor({storage:t,proxyApiUrl:r,fetch:n}){I(this,O,void 0);I(this,K,void 0);I(this,J,void 0);I(this,ae,void 0);$(this,"transformSimplePriceResponse",a((t,r=[coreCoingeckoSdk.VsCurrencyType.USD])=>{let n={};return Object.keys(t).forEach(o=>{let s=t[o];n[o]={},r.forEach(i=>{n[o]={[i]:{price:s?.[i],change24:s?.[`${i}_24h_change`],vol24:s?.[`${i}_24h_vol`],marketCap:s?.[`${i}_market_cap`]}};});}),n},"transformSimplePriceResponse"));C(this,O,t),C(this,K,r),C(this,J,n??globalThis.fetch),C(this,ae,coreCoingeckoSdk.getBasicCoingeckoHttp(void 0,y(this,J)));}async getWatchlistDataForToken({tokenDetails:t,currency:r=coreCoingeckoSdk.VsCurrencyType.USD}){let n=(await new Be(y(this,K)).watchlistToken({tokens:t.symbol,currency:r})).filter(s=>t.isNative?s.internalId===`NATIVE-${t.symbol.toLowerCase()}`:s.platforms[t.caip2Id]===t.address),[o]=n;return o?{priceInCurrency:o.current_price??0,change24:o.price_change_percentage_24h??0,marketCap:o.market_cap??0,vol24:o.total_volume??0}:{priceInCurrency:0,change24:0,marketCap:0,vol24:0}}async getSimplePrice({coinIds:t=[],currencies:r=[coreCoingeckoSdk.VsCurrencyType.USD]}){let n,s=`getSimplePrice-${t?`${Ze(t)}-${r.toString()}`:`${r.toString()}`}`;if(n=y(this,O)?.get?.(s),n)return n;try{n=await tt(i=>this.simplePrice({coinIds:t,currencies:r,marketCap:!0,vol24:!0,change24:!0,useCoingeckoProxy:i}));}catch{n=void 0;}return y(this,O)?.set?.(s,n),n}async getPricesByAddresses(t,r,n=coreCoingeckoSdk.VsCurrencyType.USD){let o,i=`getPricesWithMarketDataByAddresses-${`${Ze(t)}-${r}-${n}`}`;if(o=y(this,O)?.get?.(i),o)return o;try{o=await tt(c=>this.fetchPricesByAddresses({assetPlatformId:r,tokenAddresses:t,currency:n,useCoingeckoProxy:c}));}catch(c){console.error(c),o=void 0;}return y(this,O)?.set?.(i,o),o}async fetchPricesByAddresses({assetPlatformId:t,tokenAddresses:r,currency:n=coreCoingeckoSdk.VsCurrencyType.USD,useCoingeckoProxy:o=!1}){if(o){let s=await new ke(y(this,K),y(this,J)).simplePriceByContractAddresses({id:t,contract_addresses:r,vs_currencies:[n],include_market_cap:!0,include_24hr_vol:!0,include_24hr_change:!0});return this.transformSimplePriceResponse(s,[n])}return coreCoingeckoSdk.simpleTokenPrice(y(this,ae),{assetPlatformId:t,tokenAddresses:r,currencies:[n],marketCap:!0,vol24:!0,change24:!0})}async simplePrice({coinIds:t=[],currencies:r=[coreCoingeckoSdk.VsCurrencyType.USD],marketCap:n=!1,vol24:o=!1,change24:s=!1,lastUpdated:i=!1,useCoingeckoProxy:c=!1,shouldThrow:l=!0}){if(c){let d=await new ke(y(this,K),y(this,J)).simplePrice({ids:t,vs_currencies:r,include_market_cap:n,include_24hr_vol:o,include_24hr_change:s,include_last_updated_at:i});return this.transformSimplePriceResponse(d,r)}return coreCoingeckoSdk.simplePrice(y(this,ae),{coinIds:t,currencies:r,marketCap:n,vol24:o,change24:s,lastUpdated:i,shouldThrow:l})}};O=new WeakMap,K=new WeakMap,J=new WeakMap,ae=new WeakMap,a(at,"TokenService");var Ie=at;zod.object({date:zod.string(),usd:zod.record(zod.number())});var h=a((e,t,r,n)=>({label:e,type:vmModuleTypes.DetailItemType.CURRENCY,value:t,maxDecimals:r,symbol:n}),"currencyItem"),x=a((e,t,r="horizontal")=>({label:e,alignment:r,type:vmModuleTypes.DetailItemType.TEXT,value:t}),"textItem");var b=a((e,t)=>({label:e,type:vmModuleTypes.DetailItemType.ADDRESS,value:t}),"addressItem"),zt=a((e,t)=>({label:e,type:vmModuleTypes.DetailItemType.ADDRESS_LIST,value:t}),"addressListItem"),k=a((e,t)=>({label:e,type:vmModuleTypes.DetailItemType.NODE_ID,value:t}),"nodeIDItem"),ot=a((e,t)=>({label:e,type:vmModuleTypes.DetailItemType.DATA,value:t}),"dataItem"),E=a((e,t)=>({label:e,type:vmModuleTypes.DetailItemType.DATE,value:t}),"dateItem"),oe=a((e,t)=>({label:e,type:vmModuleTypes.DetailItemType.NETWORK,value:t}),"networkItem");var z=a(({name:e,version:t})=>{switch(e){case vmModuleTypes.AppName.CORE_MOBILE_IOS:case vmModuleTypes.AppName.CORE_MOBILE_ANDROID:case vmModuleTypes.AppName.CORE_WEB:case vmModuleTypes.AppName.CORE_EXTENSION:case vmModuleTypes.AppName.EXPLORER:return {"x-application-name":e,"x-application-version":t};case vmModuleTypes.AppName.OTHER:return}},"getCoreHeaders");var Yt=process.env.GLACIER_API_KEY;var Me=a(()=>Yt,"getGlacierApiKey");var Tn={rltoken:Me()},Y,Le,Ue,Zt,_e,er,st=class st extends glacierSdk.FetchHttpRequest{constructor(r){super(r);I(this,Ue);I(this,_e);I(this,Y,0);I(this,Le,_.exponential());}request(r){let n={...Tn,...r.query||{}},o={...r,query:Object.keys(n).length>0?n:void 0},s=a(()=>super.request(o),"getRequest");return y(this,Y)>0?Qe(this,_e,er).call(this,s):Qe(this,Ue,Zt).call(this,s)}};Y=new WeakMap,Le=new WeakMap,Ue=new WeakSet,Zt=a(function(r){let n=r();return new glacierSdk.CancelablePromise((o,s,i)=>{i(()=>n.cancel()),n.then(c=>{C(this,Y,0),o(c);}).catch(c=>{if(c instanceof glacierSdk.ApiError){let l=c.status===429,d=c.status>=500&&c.status<600;C(this,Y,y(this,Y)+Number(l||d));}s(c);});})},"#request"),_e=new WeakSet,er=a(function(r){let n=y(this,Le).call(this,y(this,Y));return new glacierSdk.CancelablePromise((o,s,i)=>{let c=setTimeout(()=>{let l=r();i(()=>{l.cancel(),clearTimeout(c);}),l.then(o).catch(s);},n);})},"#postponeRequest"),a(st,"GlacierFetchHttpRequest");var De=st;var Q=a((e,t)=>({message:`${e}${t instanceof Error?`: ${t.message}`:""}`,data:{cause:t}}),"rpcErrorOpts");var tr={name:"Avalanche",description:"",version:"0.0.1",sources:{module:{checksum:"",location:{npm:{filePath:"dist/index.js",packageName:"@avalabs/avalanche-module",registry:"https://registry.npmjs.org"}}}},network:{chainIds:["avax:8aDU0Kqh-5d23op-B-r-4YbQFRbsgF9a","avax:YRLfeDBJpfEqUWe2FYR1OpXsnDDZeKWd","avax:Rr9hnPVPxuUvrdCul-vjEsU1zmqKqRDo","avax:Sj7NVE3jXTbJvwFAiu7OEUo_8g8ctXMG","avax:imji8papUf2EhV3le337w1vgFauqkJg-","avax:8AJTpRj3SAqv1e80Mtl9em08LhvKEbkl","avax:N5PeRoKwDDREF0awn2GPsb9sHnGRzdEX"],namespaces:["avax"]},cointype:"9000",permissions:{rpc:{dapps:!0,methods:["avalanche_sendTransaction","avalanche_signTransaction","avalanche_signMessage"],nonRestrictedMethods:[]}},manifestVersion:"0.1"};var kn={glacierApiUrl:"https://core-proxy-api.avax.network/v1/proxy/glacier",proxyApiUrl:"https://proxy-api.avax.network"},In={glacierApiUrl:"https://core-proxy-api.avax-test.network/v1/proxy/glacier",proxyApiUrl:"https://proxy-api-dev.avax.network"},nr=a(e=>{switch(e){case vmModuleTypes.Environment.PRODUCTION:return kn;case vmModuleTypes.Environment.DEV:return In}},"getEnv");var Dn=zod.z.object({transactionHex:zod.z.string(),chainAlias:zod.z.enum(["X","P","C"]),externalIndices:zod.z.number().array().optional(),internalIndices:zod.z.number().array().optional(),utxos:zod.z.string().array().optional()}),ar=a(e=>Dn.safeParse(e),"parseRequestParams");var D=a(async e=>{let{isTestnet:t,isDevnet:r,rpcUrl:n,customRpcHeaders:o}=e,s=o?{headers:o}:void 0;return r?coreWalletsSdk.Avalanche.JsonRpcProvider.fromBaseURL(n):t?coreWalletsSdk.Avalanche.JsonRpcProvider.getDefaultFujiProvider(s):coreWalletsSdk.Avalanche.JsonRpcProvider.getDefaultMainnetProvider(s)},"getProvider");var sr=a(({utxoHexes:e=[],vm:t})=>{if(!e.length)return [];let r=avalanchejs.utils.getManagerForVM(t).getDefaultCodec();return e.map(n=>{let o=avalanchejs.utils.hexToBuffer(n),s=avalanchejs.Utxo.fromBytes(o,r)[0];if(!s)throw new Error("Failed to decode provided UTXO");return s})},"getProvidedUtxos");var Oe=a(async({utxoHexes:e,vm:t,getIndexedUtxos:r})=>{let n=sr({utxoHexes:e,vm:t});if(!n.length)return r();let o=[];try{o=await r();}catch(c){return console.error("Unable to fetch UTXOs from the indexer, falling back to the provided ones",c),n}let s=a(c=>`${c.utxoId.txID.toString()}:${c.utxoId.outputIdx.value()}`,"utxoKey"),i=new Set(o.map(s));return [...o,...n.filter(c=>!i.has(s(c)))]},"resolveUtxos");var cr={[vmModuleTypes.NetworkVMType.AVM]:"X",[vmModuleTypes.NetworkVMType.PVM]:"P",[vmModuleTypes.NetworkVMType.EVM]:"C"},Cn=a(e=>typeof e?.output?.getOwners=="function","hasOwners"),bn=a(e=>typeof e?.address?.toHex=="function","isEvmOutput"),lr=a((e,t,r)=>{let n=e.flatMap(o=>bn(o)?[o.address.toHex()]:Cn(o)?(o.output.getOwners?.()??[]).map(s=>avalanchejs.utils.format(t,r,s)):[]);return [...new Set(n)]},"formatOwners"),wn=a(({tx:e,destination:t,isTestnet:r})=>{let n=e,o=n.exportedOutputs??n.outs;return Array.isArray(o)?lr(o,cr[t],avalanchejs.networkIDs.getHRP(r?avalanchejs.networkIDs.FujiID:avalanchejs.networkIDs.MainnetID)):[]},"getExportRecipients"),Rn=a(({tx:e,chain:t,isTestnet:r})=>{let n=e,o=n.Outs??n.baseTx?.outputs;return Array.isArray(o)?lr(o,cr[t],avalanchejs.networkIDs.getHRP(r?avalanchejs.networkIDs.FujiID:avalanchejs.networkIDs.MainnetID)):[]},"getImportRecipients"),Fe=a((e,t,r)=>{if(t.type===vmModuleTypes.TxType.Export&&t.destination)return wn({tx:e,destination:t.destination,isTestnet:r});if(t.type===vmModuleTypes.TxType.Import&&t.chain)return Rn({tx:e,chain:t.chain,isTestnet:r})},"getCrossChainRecipients");var He=a(e=>{switch(e.type){case vmModuleTypes.TxType.AddPermissionlessDelegator:return {...e,type:vmModuleTypes.TxType.AddPermissionlessDelegator};case vmModuleTypes.TxType.AddPermissionlessValidator:return {...e,type:vmModuleTypes.TxType.AddPermissionlessValidator};case vmModuleTypes.TxType.AddSubnetValidator:return {...e,type:vmModuleTypes.TxType.AddSubnetValidator};case vmModuleTypes.TxType.CreateChain:return {...e,type:vmModuleTypes.TxType.CreateChain};case vmModuleTypes.TxType.CreateSubnet:return {...e,type:vmModuleTypes.TxType.CreateSubnet};case vmModuleTypes.TxType.RemoveSubnetValidator:return {...e,type:vmModuleTypes.TxType.RemoveSubnetValidator};case vmModuleTypes.TxType.AddAutoRenewedValidator:return {...e,type:vmModuleTypes.TxType.AddAutoRenewedValidator};case vmModuleTypes.TxType.SetAutoRenewedValidatorConfig:return {...e,type:vmModuleTypes.TxType.SetAutoRenewedValidatorConfig};case vmModuleTypes.TxType.ConvertSubnetToL1:return {...e,type:vmModuleTypes.TxType.ConvertSubnetToL1,chain:e.chain};case vmModuleTypes.TxType.SetL1ValidatorWeight:return {...e,type:vmModuleTypes.TxType.SetL1ValidatorWeight,chain:e.chain};case vmModuleTypes.TxType.DisableL1Validator:return {...e,type:vmModuleTypes.TxType.DisableL1Validator,chain:e.chain};case vmModuleTypes.TxType.IncreaseL1ValidatorBalance:return {...e,type:vmModuleTypes.TxType.IncreaseL1ValidatorBalance,chain:e.chain};case vmModuleTypes.TxType.RegisterL1Validator:return {...e,type:vmModuleTypes.TxType.RegisterL1Validator,chain:e.chain};case vmModuleTypes.TxType.Export:return {...e,type:vmModuleTypes.TxType.Export,chain:e.chain,destination:e.destination};case vmModuleTypes.TxType.Import:return {...e,type:vmModuleTypes.TxType.Import,chain:e.chain,source:e.source};case vmModuleTypes.TxType.Base:return {...e,type:vmModuleTypes.TxType.Base,chain:e.chain};default:return}},"parseTxDetails");var dr=a(e=>{switch(e.type){case vmModuleTypes.TxType.AddPermissionlessDelegator:return "Do you want to add this delegator?";case vmModuleTypes.TxType.AddPermissionlessValidator:return "Do you want to add this validator?";case vmModuleTypes.TxType.Export:return "Do you approve this export?";case vmModuleTypes.TxType.Import:return "Do you approve this import?";case vmModuleTypes.TxType.Base:return "Do you approve this transaction?";case vmModuleTypes.TxType.AddSubnetValidator:return "Do you want to add this subnet validator?";case vmModuleTypes.TxType.CreateChain:return "Do you want to create this chain?";case vmModuleTypes.TxType.CreateSubnet:return "Do you want to create this L1?";case vmModuleTypes.TxType.RemoveSubnetValidator:return "Do you want to remove this subnet validator?";case vmModuleTypes.TxType.ConvertSubnetToL1:return "Do you want to convert this subnet?";case vmModuleTypes.TxType.DisableL1Validator:return "Do you want to disable this validator?";case vmModuleTypes.TxType.IncreaseL1ValidatorBalance:return "Do you want to increase this validator balance?";case vmModuleTypes.TxType.RegisterL1Validator:return "Do you want to register this validator?";case vmModuleTypes.TxType.SetL1ValidatorWeight:return "Do you want to set this validator weight?";case vmModuleTypes.TxType.AddAutoRenewedValidator:return "Do you want to add this auto-renewed validator?";case vmModuleTypes.TxType.SetAutoRenewedValidatorConfig:return "Do you want to update this auto-renewed validator config?";default:return "Sign Message"}},"parseTxDisplayTitle");var lt=a(async({indices:e,chainAlias:t,isChange:r,network:n,xpubXP:o,externalXPAddresses:s})=>{if(o){let i=await D(n);return e.map(c=>coreWalletsSdk.Avalanche.getAddressFromXpub(o,c,i,t,r))}return s&&Array.isArray(s)?e.map(c=>s.find(l=>l.index===c)).filter(c=>c!==void 0).map(c=>c.address):[]},"getAddressesByIndices");var dt=a(e=>e.type===vmModuleTypes.TxType.AddPermissionlessDelegator,"isAddPermissionlessDelegatorTx"),pt=a(e=>e.type===vmModuleTypes.TxType.AddPermissionlessValidator,"isAddPermissionlessValidatorTx"),mt=a(e=>e.type===vmModuleTypes.TxType.Export,"isExportTx"),ut=a(e=>e.type===vmModuleTypes.TxType.Import,"isImportTx"),Vn=a(e=>e.type===vmModuleTypes.TxType.Base,"isBaseTx"),ht=a(e=>e.type===vmModuleTypes.TxType.AddSubnetValidator,"isAddSubnetValidatorTx"),En=a(e=>e.type===vmModuleTypes.TxType.CreateChain,"isCreateChainTx"),Bn=a(e=>e.type===vmModuleTypes.TxType.CreateSubnet,"isCreateSubnetTx"),gt=a(e=>e.type===vmModuleTypes.TxType.RemoveSubnetValidator,"isRemoveSubnetValidatorTx"),pr=a(e=>e.type===vmModuleTypes.TxType.ConvertSubnetToL1,"isConvertSubnetToL1Tx"),mr=a(e=>e.type===vmModuleTypes.TxType.DisableL1Validator,"isDisableL1ValidatorTx"),ur=a(e=>e.type===vmModuleTypes.TxType.IncreaseL1ValidatorBalance,"isIncreaseL1ValidatorBalanceTx"),hr=a(e=>e.type===vmModuleTypes.TxType.RegisterL1Validator,"isRegisterL1ValidatorTx"),gr=a(e=>e.type===vmModuleTypes.TxType.SetL1ValidatorWeight,"isSetL1ValidatorWeightTx"),ft=a(e=>e.type===vmModuleTypes.TxType.AddAutoRenewedValidator,"isAddAutoRenewedValidatorTx"),yt=a(e=>e.type===vmModuleTypes.TxType.SetAutoRenewedValidatorConfig,"isSetAutoRenewedValidatorConfigTx"),ys=a(e=>dt(e)||pt(e)||ht(e)||gt(e)||ft(e)||yt(e),"isStakingDetails"),xs=a(e=>mt(e)||ut(e),"isExportImportTxDetails"),fr=a(e=>Vn(e),"isChainDetails"),yr=a(e=>En(e),"isBlockchainDetails"),xr=a(e=>Bn(e),"isSubnetDetails");var B=(n=>(n.AVM="X-Chain",n.PVM="P-Chain",n.EVM="C-Chain",n))(B||{});var xt=a(({tx:e,symbol:t,network:r,signerAccount:n})=>{let o=[],{txFee:s,nodeID:i,subnetID:c,start:l,end:d,stake:u}=e,m={items:[b("Account",n),oe("Network",{name:r.chainName,logoUri:r.logoUri})]};o.push(m);let p=[k("Node",i),k("Subnet ID",c),h("Stake Amount",u,9,t),E("Start",l),E("End",d)];return o.push({title:"Staking Details",items:p}),s&&o.push({title:"Network Fee",items:[h("Fee Amount",s,9,t)]}),o},"addPermissionlessDelegatorDetailSection");var At=a(({tx:e,symbol:t,network:r,signerAccount:n})=>{let o=[],{txFee:s,nodeID:i,subnetID:c,delegationFee:l,start:d,end:u,stake:m}=e,p={items:[b("Account",n),oe("Network",{name:r.chainName,logoUri:r.logoUri})]};o.push(p);let f=[k("Node",i),k("Subnet ID",c)];return f.push(h("Stake Amount",m,9,t),x("Delegation Fee",`${l/1e4} %`),E("Start",d),E("End",u)),o.push({title:"Staking Details",items:f}),s&&o.push({title:"Network Fee",items:[h("Fee Amount",s,9,t)]}),o},"addPermissionlessValidatorDetailSection");var Tt=a((e,t)=>{let r=[],{txFee:n,nodeID:o,start:s,end:i,subnetID:c}=e,l=[k("Subnet ID",c),k("Node ID",o),E("Start Date",s),E("End Date",i)];return r.push({title:"Staking Details",items:l}),n&&r.push({title:"Network Fee",items:[h("Fee Amount",n,9,t)]}),r},"addSubnetValidatorDetailSection");var vt=a((e,t)=>{let r=[],{txFee:n,chainID:o,managerAddress:s,subnetID:i,validators:c}=e,l=[k("Subnet ID",i),k("Chain ID",o),b("Manager Address",s)];return r.push({title:"L1 Details",items:l}),c.forEach(({balance:d,stake:u,nodeId:m,remainingBalanceOwners:p,deactivationOwners:f},T)=>{let v=[k("Node ID",m),h("Balance",d,9,t),h("Stake",u,9,t)];f.length>0&&v.push(x(`${f.length>1?"Owners":"Owner"} Able to Deactivate`,f.join(`
20
+ var dr=Object.defineProperty;var On=(e,t,r)=>t in e?dr(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r;var n=(e,t)=>dr(e,"name",{value:t,configurable:!0});var z=(e,t,r)=>(On(e,typeof t!="symbol"?t+"":t,r),r),pt=(e,t,r)=>{if(!t.has(e))throw TypeError("Cannot "+r)};var y=(e,t,r)=>(pt(e,t,"read from private field"),r?r.call(e):t.get(e)),S=(e,t,r)=>{if(t.has(e))throw TypeError("Cannot add the same private member more than once");t instanceof WeakSet?t.add(e):t.set(e,r);},b=(e,t,r,a)=>(pt(e,t,"write to private field"),a?a.call(e,r):t.set(e,r),r);var mt=(e,t,r)=>(pt(e,t,"access private method"),r);function pr(e){let t,r=0;for(t=0;t<e.length;t++)r+=e.charCodeAt(t)*(t+1);return r}n(pr,"charsum");function ut(e){let t,r=0;for(t=0;t<e.length;t++){let a=pr(e[t]??"");r=r+65027/a;}return (""+r).slice(0,16)}n(ut,"arrayHash");var Y=n(async({operation:e,isSuccess:t,maxRetries:r=10,backoffPolicy:a=G.exponential()})=>{let s=0,o=0,c;for(;o<r;){o>0&&await _n(s);try{let i=await e(o);if(t(i))return i}catch(i){c=i;}s=a(o),o++;}let l=c?`Max retry exceeded. ${c}`:"Max retry exceeded.";throw new Error(l)},"retry"),ft=class ft{static exponential(){return t=>Math.pow(2,t)*1e3}static constant(t){return r=>t*1e3}static constantMs(t){return r=>t}static linearThenExponential(t,r){return a=>{if(a<t)return (a+1)*r;let s=a-t+1,o=t*r,c=2*r*(Math.pow(2,s)-1);return o+c}}};n(ft,"RetryBackoffPolicy");var G=ft;function _n(e){return new Promise(t=>setTimeout(t,e))}n(_n,"delay");var gt=n(e=>Y({operation:t=>e(t>0),maxRetries:2,backoffPolicy:G.constant(1),isSuccess:t=>t?.status?.error_code!==429}),"coingeckoRetry");async function Q(e,t,r=fetch){let a=await r(...e);if(!a.ok)throw new Error(`Request failed with status ${a.status}`);let s=await a.json();return t.parse(s)}n(Q,"fetchAndVerify");var ht=class ht{constructor(t,r){this.proxyApiUrl=t;this.fetchFn=r;}simplePrice(t){let r=new URLSearchParams(t);return Q([`${this.proxyApiUrl}/proxy/coingecko/simple/price?${r}`,{method:"POST",headers:{"Content-Type":"application/json"}}],vmModuleTypes.RawSimplePriceResponseSchema,this.fetchFn)}simplePriceByContractAddresses(t){let{id:r,...a}=t,s=new URLSearchParams(a);return Q([`${this.proxyApiUrl}/proxy/coingecko/simple/token_price/${r}?${s}`,{method:"POST",headers:{"Content-Type":"application/json"}}],vmModuleTypes.RawSimplePriceResponseSchema,this.fetchFn)}};n(ht,"CoingeckoProxyClient");var Pe=ht;var Fn=zod.z.array(zod.z.object({internalId:zod.z.string(),id:zod.z.string(),symbol:zod.z.string(),name:zod.z.string(),image:zod.z.string().optional().nullable(),current_price:zod.z.number().optional().nullable(),price_change_percentage_24h:zod.z.number().optional().nullable(),market_cap:zod.z.number().optional().nullable(),total_volume:zod.z.number().optional().nullable(),platforms:zod.z.record(zod.z.string(),zod.z.string())})),yt=class yt{constructor(t){this.proxyApiUrl=t;}watchlistToken(t){let r=new URLSearchParams(t);return Q([`${this.proxyApiUrl}/watchlist/tokens?${r}`,{method:"GET",headers:{"Content-Type":"application/json"}}],Fn)}};n(yt,"WatchlistProxyClient");var Ge=yt;var W,Z,ee,pe,xt=class xt{constructor({storage:t,proxyApiUrl:r,fetch:a}){S(this,W,void 0);S(this,Z,void 0);S(this,ee,void 0);S(this,pe,void 0);z(this,"transformSimplePriceResponse",n((t,r=[coreCoingeckoSdk.VsCurrencyType.USD])=>{let a={};return Object.keys(t).forEach(s=>{let o=t[s];a[s]={},r.forEach(c=>{a[s]={[c]:{price:o?.[c],change24:o?.[`${c}_24h_change`],vol24:o?.[`${c}_24h_vol`],marketCap:o?.[`${c}_market_cap`]}};});}),a},"transformSimplePriceResponse"));b(this,W,t),b(this,Z,r),b(this,ee,a??globalThis.fetch),b(this,pe,coreCoingeckoSdk.getBasicCoingeckoHttp(void 0,y(this,ee)));}async getWatchlistDataForToken({tokenDetails:t,currency:r=coreCoingeckoSdk.VsCurrencyType.USD}){let a=(await new Ge(y(this,Z)).watchlistToken({tokens:t.symbol,currency:r})).filter(o=>t.isNative?o.internalId===`NATIVE-${t.symbol.toLowerCase()}`:o.platforms[t.caip2Id]===t.address),[s]=a;return s?{priceInCurrency:s.current_price??0,change24:s.price_change_percentage_24h??0,marketCap:s.market_cap??0,vol24:s.total_volume??0}:{priceInCurrency:0,change24:0,marketCap:0,vol24:0}}async getSimplePrice({coinIds:t=[],currencies:r=[coreCoingeckoSdk.VsCurrencyType.USD]}){let a,o=`getSimplePrice-${t?`${ut(t)}-${r.toString()}`:`${r.toString()}`}`;if(a=y(this,W)?.get?.(o),a)return a;try{a=await gt(c=>this.simplePrice({coinIds:t,currencies:r,marketCap:!0,vol24:!0,change24:!0,useCoingeckoProxy:c}));}catch{a=void 0;}return y(this,W)?.set?.(o,a),a}async getPricesByAddresses(t,r,a=coreCoingeckoSdk.VsCurrencyType.USD){let s,c=`getPricesWithMarketDataByAddresses-${`${ut(t)}-${r}-${a}`}`;if(s=y(this,W)?.get?.(c),s)return s;try{s=await gt(l=>this.fetchPricesByAddresses({assetPlatformId:r,tokenAddresses:t,currency:a,useCoingeckoProxy:l}));}catch(l){console.error(l),s=void 0;}return y(this,W)?.set?.(c,s),s}async fetchPricesByAddresses({assetPlatformId:t,tokenAddresses:r,currency:a=coreCoingeckoSdk.VsCurrencyType.USD,useCoingeckoProxy:s=!1}){if(s){let o=await new Pe(y(this,Z),y(this,ee)).simplePriceByContractAddresses({id:t,contract_addresses:r,vs_currencies:[a],include_market_cap:!0,include_24hr_vol:!0,include_24hr_change:!0});return this.transformSimplePriceResponse(o,[a])}return coreCoingeckoSdk.simpleTokenPrice(y(this,pe),{assetPlatformId:t,tokenAddresses:r,currencies:[a],marketCap:!0,vol24:!0,change24:!0})}async simplePrice({coinIds:t=[],currencies:r=[coreCoingeckoSdk.VsCurrencyType.USD],marketCap:a=!1,vol24:s=!1,change24:o=!1,lastUpdated:c=!1,useCoingeckoProxy:l=!1,shouldThrow:i=!0}){if(l){let d=await new Pe(y(this,Z),y(this,ee)).simplePrice({ids:t,vs_currencies:r,include_market_cap:a,include_24hr_vol:s,include_24hr_change:o,include_last_updated_at:c});return this.transformSimplePriceResponse(d,r)}return coreCoingeckoSdk.simplePrice(y(this,pe),{coinIds:t,currencies:r,marketCap:a,vol24:s,change24:o,lastUpdated:c,shouldThrow:i})}};W=new WeakMap,Z=new WeakMap,ee=new WeakMap,pe=new WeakMap,n(xt,"TokenService");var be=xt;zod.object({date:zod.string(),usd:zod.record(zod.number())});var f=n((e,t,r,a,s)=>({label:e,type:vmModuleTypes.DetailItemType.CURRENCY,value:t,maxDecimals:r,symbol:a,...s===void 0?{}:{isNativeToken:s}}),"currencyItem"),x=n((e,t,r="horizontal")=>({label:e,alignment:r,type:vmModuleTypes.DetailItemType.TEXT,value:t}),"textItem");var V=n((e,t)=>({label:e,type:vmModuleTypes.DetailItemType.ADDRESS,value:t}),"addressItem"),ur=n((e,t)=>({label:e,type:vmModuleTypes.DetailItemType.ADDRESS_LIST,value:t}),"addressListItem"),D=n((e,t)=>({label:e,type:vmModuleTypes.DetailItemType.NODE_ID,value:t}),"nodeIDItem"),At=n((e,t)=>({label:e,type:vmModuleTypes.DetailItemType.DATA,value:t}),"dataItem"),B=n((e,t)=>({label:e,type:vmModuleTypes.DetailItemType.DATE,value:t}),"dateItem"),me=n((e,t)=>({label:e,type:vmModuleTypes.DetailItemType.NETWORK,value:t}),"networkItem"),Tt=n((e,t)=>({label:e,type:vmModuleTypes.DetailItemType.TRANSFER_LIST,value:t}),"transferListItem"),vt=n((e,t)=>({label:e,type:vmModuleTypes.DetailItemType.COLLAPSIBLE_GROUP,value:t}),"collapsibleGroupItem");var te=n(({name:e,version:t})=>{switch(e){case vmModuleTypes.AppName.CORE_MOBILE_IOS:case vmModuleTypes.AppName.CORE_MOBILE_ANDROID:case vmModuleTypes.AppName.CORE_WEB:case vmModuleTypes.AppName.CORE_EXTENSION:case vmModuleTypes.AppName.EXPLORER:return {"x-application-name":e,"x-application-version":t};case vmModuleTypes.AppName.OTHER:return}},"getCoreHeaders");var fr=process.env.GLACIER_API_KEY;var We=n(()=>fr,"getGlacierApiKey");var zn={rltoken:We()},re,qe,je,hr,$e,yr,Dt=class Dt extends glacierSdk.FetchHttpRequest{constructor(r){super(r);S(this,je);S(this,$e);S(this,re,0);S(this,qe,G.exponential());}request(r){let a={...zn,...r.query||{}},s={...r,query:Object.keys(a).length>0?a:void 0},o=n(()=>super.request(s),"getRequest");return y(this,re)>0?mt(this,$e,yr).call(this,o):mt(this,je,hr).call(this,o)}};re=new WeakMap,qe=new WeakMap,je=new WeakSet,hr=n(function(r){let a=r();return new glacierSdk.CancelablePromise((s,o,c)=>{c(()=>a.cancel()),a.then(l=>{b(this,re,0),s(l);}).catch(l=>{if(l instanceof glacierSdk.ApiError){let i=l.status===429,d=l.status>=500&&l.status<600;b(this,re,y(this,re)+Number(i||d));}o(l);});})},"#request"),$e=new WeakSet,yr=n(function(r){let a=y(this,qe).call(this,y(this,re));return new glacierSdk.CancelablePromise((s,o,c)=>{let l=setTimeout(()=>{let i=r();c(()=>{i.cancel(),clearTimeout(l);}),i.then(s).catch(o);},a);})},"#postponeRequest"),n(Dt,"GlacierFetchHttpRequest");var Ce=Dt;var ne=n((e,t)=>({message:`${e}${t instanceof Error?`: ${t.message}`:""}`,data:{cause:t}}),"rpcErrorOpts");var xr={name:"Avalanche",description:"",version:"0.0.1",sources:{module:{checksum:"",location:{npm:{filePath:"dist/index.js",packageName:"@avalabs/avalanche-module",registry:"https://registry.npmjs.org"}}}},network:{chainIds:["avax:8aDU0Kqh-5d23op-B-r-4YbQFRbsgF9a","avax:YRLfeDBJpfEqUWe2FYR1OpXsnDDZeKWd","avax:Rr9hnPVPxuUvrdCul-vjEsU1zmqKqRDo","avax:Sj7NVE3jXTbJvwFAiu7OEUo_8g8ctXMG","avax:imji8papUf2EhV3le337w1vgFauqkJg-","avax:8AJTpRj3SAqv1e80Mtl9em08LhvKEbkl","avax:N5PeRoKwDDREF0awn2GPsb9sHnGRzdEX"],namespaces:["avax"]},cointype:"9000",permissions:{rpc:{dapps:!0,methods:["avalanche_sendTransaction","avalanche_signTransaction","avalanche_signMessage"],nonRestrictedMethods:[]}},manifestVersion:"0.1"};var Qn={glacierApiUrl:"https://core-proxy-api.avax.network/v1/proxy/glacier",proxyApiUrl:"https://proxy-api.avax.network"},Zn={glacierApiUrl:"https://core-proxy-api.avax-test.network/v1/proxy/glacier",proxyApiUrl:"https://proxy-api-dev.avax.network"},Tr=n(e=>{switch(e){case vmModuleTypes.Environment.PRODUCTION:return Qn;case vmModuleTypes.Environment.DEV:return Zn}},"getEnv");var ea=zod.z.object({transactionHex:zod.z.string(),chainAlias:zod.z.enum(["X","P","C"]),externalIndices:zod.z.number().array().optional(),internalIndices:zod.z.number().array().optional(),utxos:zod.z.string().array().optional()}),vr=n(e=>ea.safeParse(e),"parseRequestParams");var I=n(async e=>{let{isTestnet:t,isDevnet:r,rpcUrl:a,customRpcHeaders:s}=e,o=s?{headers:s}:void 0;return r?coreWalletsSdk.Avalanche.JsonRpcProvider.fromBaseURL(a):t?coreWalletsSdk.Avalanche.JsonRpcProvider.getDefaultFujiProvider(o):coreWalletsSdk.Avalanche.JsonRpcProvider.getDefaultMainnetProvider(o)},"getProvider");var Sr=n(({utxoHexes:e=[],vm:t})=>{if(!e.length)return [];let r=avalanchejs.utils.getManagerForVM(t).getDefaultCodec();return e.map(a=>{let s=avalanchejs.utils.hexToBuffer(a),o=avalanchejs.Utxo.fromBytes(s,r)[0];if(!o)throw new Error("Failed to decode provided UTXO");return o})},"getProvidedUtxos");var Ke=n(async({utxoHexes:e,vm:t,getIndexedUtxos:r})=>{let a=Sr({utxoHexes:e,vm:t});if(!a.length)return r();let s=[];try{s=await r();}catch(l){return console.error("Unable to fetch UTXOs from the indexer, falling back to the provided ones",l),a}let o=n(l=>`${l.utxoId.txID.toString()}:${l.utxoId.outputIdx.value()}`,"utxoKey"),c=new Set(s.map(o));return [...s,...a.filter(l=>!c.has(o(l)))]},"resolveUtxos");var kr={[vmModuleTypes.NetworkVMType.AVM]:"X",[vmModuleTypes.NetworkVMType.PVM]:"P",[vmModuleTypes.NetworkVMType.EVM]:"C"},na=n(e=>typeof e?.output?.getOwners=="function","hasOwners"),aa=n(e=>typeof e?.address?.toHex=="function","isEvmOutput"),Pr=n((e,t,r)=>{let a=e.flatMap(s=>aa(s)?[s.address.toHex()]:na(s)?(s.output.getOwners?.()??[]).map(o=>avalanchejs.utils.format(t,r,o)):[]);return [...new Set(a)]},"formatOwners"),sa=n(({tx:e,destination:t,isTestnet:r})=>{let a=e,s=a.exportedOutputs??a.outs;return Array.isArray(s)?Pr(s,kr[t],avalanchejs.networkIDs.getHRP(r?avalanchejs.networkIDs.FujiID:avalanchejs.networkIDs.MainnetID)):[]},"getExportRecipients"),oa=n(({tx:e,chain:t,isTestnet:r})=>{let a=e,s=a.Outs??a.baseTx?.outputs;return Array.isArray(s)?Pr(s,kr[t],avalanchejs.networkIDs.getHRP(r?avalanchejs.networkIDs.FujiID:avalanchejs.networkIDs.MainnetID)):[]},"getImportRecipients"),Je=n((e,t,r)=>{if(t.type===vmModuleTypes.TxType.Export&&t.destination)return sa({tx:e,destination:t.destination,isTestnet:r});if(t.type===vmModuleTypes.TxType.Import&&t.chain)return oa({tx:e,chain:t.chain,isTestnet:r})},"getCrossChainRecipients");var ze=n(e=>{switch(e.type){case vmModuleTypes.TxType.AddPermissionlessDelegator:return {...e,type:vmModuleTypes.TxType.AddPermissionlessDelegator};case vmModuleTypes.TxType.AddPermissionlessValidator:return {...e,type:vmModuleTypes.TxType.AddPermissionlessValidator};case vmModuleTypes.TxType.AddSubnetValidator:return {...e,type:vmModuleTypes.TxType.AddSubnetValidator};case vmModuleTypes.TxType.CreateChain:return {...e,type:vmModuleTypes.TxType.CreateChain};case vmModuleTypes.TxType.CreateSubnet:return {...e,type:vmModuleTypes.TxType.CreateSubnet};case vmModuleTypes.TxType.RemoveSubnetValidator:return {...e,type:vmModuleTypes.TxType.RemoveSubnetValidator};case vmModuleTypes.TxType.AddAutoRenewedValidator:return {...e,type:vmModuleTypes.TxType.AddAutoRenewedValidator};case vmModuleTypes.TxType.SetAutoRenewedValidatorConfig:return {...e,type:vmModuleTypes.TxType.SetAutoRenewedValidatorConfig};case vmModuleTypes.TxType.ConvertSubnetToL1:return {...e,type:vmModuleTypes.TxType.ConvertSubnetToL1,chain:e.chain};case vmModuleTypes.TxType.SetL1ValidatorWeight:return {...e,type:vmModuleTypes.TxType.SetL1ValidatorWeight,chain:e.chain};case vmModuleTypes.TxType.DisableL1Validator:return {...e,type:vmModuleTypes.TxType.DisableL1Validator,chain:e.chain};case vmModuleTypes.TxType.IncreaseL1ValidatorBalance:return {...e,type:vmModuleTypes.TxType.IncreaseL1ValidatorBalance,chain:e.chain};case vmModuleTypes.TxType.RegisterL1Validator:return {...e,type:vmModuleTypes.TxType.RegisterL1Validator,chain:e.chain};case vmModuleTypes.TxType.Export:return {...e,type:vmModuleTypes.TxType.Export,chain:e.chain,destination:e.destination};case vmModuleTypes.TxType.Import:return {...e,type:vmModuleTypes.TxType.Import,chain:e.chain,source:e.source};case vmModuleTypes.TxType.Base:return {...e,type:vmModuleTypes.TxType.Base,chain:e.chain};default:return}},"parseTxDetails");var br=n(e=>{switch(e.type){case vmModuleTypes.TxType.AddPermissionlessDelegator:return "Do you want to add this delegator?";case vmModuleTypes.TxType.AddPermissionlessValidator:return "Do you want to add this validator?";case vmModuleTypes.TxType.Export:return "Do you approve this export?";case vmModuleTypes.TxType.Import:return "Do you approve this import?";case vmModuleTypes.TxType.Base:return "Do you approve this transaction?";case vmModuleTypes.TxType.AddSubnetValidator:return "Do you want to add this subnet validator?";case vmModuleTypes.TxType.CreateChain:return "Do you want to create this chain?";case vmModuleTypes.TxType.CreateSubnet:return "Do you want to create this L1?";case vmModuleTypes.TxType.RemoveSubnetValidator:return "Do you want to remove this subnet validator?";case vmModuleTypes.TxType.ConvertSubnetToL1:return "Do you want to convert this subnet?";case vmModuleTypes.TxType.DisableL1Validator:return "Do you want to disable this validator?";case vmModuleTypes.TxType.IncreaseL1ValidatorBalance:return "Do you want to increase this validator balance?";case vmModuleTypes.TxType.RegisterL1Validator:return "Do you want to register this validator?";case vmModuleTypes.TxType.SetL1ValidatorWeight:return "Do you want to set this validator weight?";case vmModuleTypes.TxType.AddAutoRenewedValidator:return "Do you want to add this auto-renewed validator?";case vmModuleTypes.TxType.SetAutoRenewedValidatorConfig:return "Do you want to update this auto-renewed validator config?";default:return "Sign Message"}},"parseTxDisplayTitle");var kt=n(async({indices:e,chainAlias:t,isChange:r,network:a,xpubXP:s,externalXPAddresses:o})=>{if(s){let c=await I(a);return e.map(l=>coreWalletsSdk.Avalanche.getAddressFromXpub(s,l,c,t,r))}return o&&Array.isArray(o)?e.map(l=>o.find(i=>i.index===l)).filter(l=>l!==void 0).map(l=>l.address):[]},"getAddressesByIndices");var we=n(e=>e.type===vmModuleTypes.TxType.AddPermissionlessDelegator,"isAddPermissionlessDelegatorTx"),Re=n(e=>e.type===vmModuleTypes.TxType.AddPermissionlessValidator,"isAddPermissionlessValidatorTx"),Pt=n(e=>e.type===vmModuleTypes.TxType.Export,"isExportTx"),bt=n(e=>e.type===vmModuleTypes.TxType.Import,"isImportTx"),ca=n(e=>e.type===vmModuleTypes.TxType.Base,"isBaseTx"),Ct=n(e=>e.type===vmModuleTypes.TxType.AddSubnetValidator,"isAddSubnetValidatorTx"),la=n(e=>e.type===vmModuleTypes.TxType.CreateChain,"isCreateChainTx"),da=n(e=>e.type===vmModuleTypes.TxType.CreateSubnet,"isCreateSubnetTx"),wt=n(e=>e.type===vmModuleTypes.TxType.RemoveSubnetValidator,"isRemoveSubnetValidatorTx"),Cr=n(e=>e.type===vmModuleTypes.TxType.ConvertSubnetToL1,"isConvertSubnetToL1Tx"),wr=n(e=>e.type===vmModuleTypes.TxType.DisableL1Validator,"isDisableL1ValidatorTx"),Rr=n(e=>e.type===vmModuleTypes.TxType.IncreaseL1ValidatorBalance,"isIncreaseL1ValidatorBalanceTx"),Vr=n(e=>e.type===vmModuleTypes.TxType.RegisterL1Validator,"isRegisterL1ValidatorTx"),Nr=n(e=>e.type===vmModuleTypes.TxType.SetL1ValidatorWeight,"isSetL1ValidatorWeightTx"),Rt=n(e=>e.type===vmModuleTypes.TxType.AddAutoRenewedValidator,"isAddAutoRenewedValidatorTx"),Vt=n(e=>e.type===vmModuleTypes.TxType.SetAutoRenewedValidatorConfig,"isSetAutoRenewedValidatorConfigTx"),ui=n(e=>we(e)||Re(e)||Ct(e)||wt(e)||Rt(e)||Vt(e),"isStakingDetails"),fi=n(e=>Pt(e)||bt(e),"isExportImportTxDetails"),Er=n(e=>ca(e),"isChainDetails"),Mr=n(e=>la(e),"isBlockchainDetails"),Br=n(e=>da(e),"isSubnetDetails");var _=(a=>(a.AVM="X-Chain",a.PVM="P-Chain",a.EVM="C-Chain",a))(_||{}),Nt={mainnet:"P-avax1qhxnrs9qwd2tyftl0yjscsy6n90gqrd8j3fk0t",testnet:"P-fuji1tdu6cekp82sctyykhnl5snskeertua3vz63tyn"};var pa="Input amounts",ma="Output amounts",ua=n(e=>e.reduce((t,r)=>(r.assetDescription&&t.set(r.assetId,r.assetDescription),t),new Map),"_getDescribedAssets"),fa=n((e,t,r,a,s)=>{if(e===a)return f(r,t,9,r,!0);let o=s.get(e);return o?f(o.name,t,o.denomination,o.symbol,!1):x(e,t.toString(),"vertical")},"_getAmountItem"),Ur=n((e,t,r)=>{let a=ua(e.outputs),s=n((o,c)=>{let l=Object.entries(c);return l.length===0?[]:[{title:o,items:l.map(([i,d])=>fa(i,d,t,r,a))}]},"section");return [...s(pa,e.inputAmounts),...s(ma,e.outputAmounts)]},"amountDetailsSections");var ga=n(e=>e.reduce((t,r)=>(r.assetDescription&&t.set(r.assetId,r.assetDescription),t),new Map),"_getDescribedAssets"),Lr=n((e,t,r,a)=>{let s=ga(e.outputs),o=Object.entries(t.spentAmounts);if(o.length!==0)return {title:"You spend",items:o.map(([c,l])=>{if(c===a)return f(r,l,9,r,!0);let i=s.get(c);return i?f(i.name,l,i.denomination,i.symbol,!1):x(c,l.toString(),"vertical")})}},"spendDetailsSection");var Or="Transaction Outputs",ha=n((e,t)=>e.isAvax?{symbol:t,decimals:9}:e.assetDescription?{symbol:e.assetDescription.symbol,decimals:e.assetDescription.denomination,assetName:e.assetDescription.name}:{},"_getAssetDetails"),ya=n(e=>we(e)||Re(e)?Number(e.end):void 0,"_getStakeEnd"),xa=n((e,t)=>e.isStake?{isStaked:!0,stakedUntil:t}:{},"_getStakeDetails"),Aa=n((e,t,r)=>({addresses:e.owners,amount:e.amount,assetId:e.assetId,isNativeToken:e.isAvax,...ha(e,t),threshold:Number(e.threshold),lockedUntil:Number(e.locktime),stakeableLockedUntil:Number(e.stakeableLocktime),...xa(e,r)}),"_getTransferDetails"),_r=n((e,t)=>{if(e.outputs.length===0)return;let r=ya(e);return {title:Or,items:[Tt(Or,e.outputs.map(a=>Aa(a,t,r)))]}},"valueDetailsSection");var Et=n(({tx:e,symbol:t,network:r,signerAccount:a})=>{let s=[],{txFee:o,nodeID:c,subnetID:l,start:i,end:d,stake:m}=e,u={items:[V("Account",a),me("Network",{name:r.chainName,logoUri:r.logoUri})]};s.push(u);let p=[D("Node",c),D("Subnet ID",l),f("Stake Amount",m,9,t),B("Start",i),B("End",d)];return s.push({title:"Staking Details",items:p}),o&&s.push({items:[f("Fee Amount",o,9,t)]}),s},"addPermissionlessDelegatorDetailSection");var Mt=n(({tx:e,symbol:t,network:r,signerAccount:a})=>{let s=[],{txFee:o,nodeID:c,subnetID:l,delegationFee:i,start:d,end:m,stake:u}=e,p={items:[V("Account",a),me("Network",{name:r.chainName,logoUri:r.logoUri})]};s.push(p);let h=[D("Node",c),D("Subnet ID",l)];return h.push(f("Stake Amount",u,9,t),x("Delegation Fee",`${i/1e4} %`),B("Start",d),B("End",m)),s.push({title:"Staking Details",items:h}),o&&s.push({items:[f("Fee Amount",o,9,t)]}),s},"addPermissionlessValidatorDetailSection");var Bt=n((e,t)=>{let r=[],{txFee:a,nodeID:s,start:o,end:c,subnetID:l}=e,i=[D("Subnet ID",l),D("Node ID",s),B("Start Date",o),B("End Date",c)];return r.push({title:"Staking Details",items:i}),a&&r.push({items:[f("Fee Amount",a,9,t)]}),r},"addSubnetValidatorDetailSection");var Ut=n((e,t)=>{let r=[],{txFee:a,chainID:s,managerAddress:o,subnetID:c,validators:l}=e,i=[D("Subnet ID",c),D("Chain ID",s),V("Manager Address",o)];return r.push({title:"L1 Details",items:i}),l.forEach(({balance:d,stake:m,nodeId:u,remainingBalanceOwners:p,deactivationOwners:h},A)=>{let v=[D("Node ID",u),f("Balance",d,9,t),f("Stake",m,9,t)];h.length>0&&v.push(x(`${h.length>1?"Owners":"Owner"} Able to Deactivate`,h.join(`
21
21
  `),"vertical")),p.length>0&&v.push(x(`${p.length>1?"Owners":"Owner"} of the Remaining Balance`,p.join(`
22
- `),"vertical")),r.push({title:T===0?"Validators":void 0,items:v});}),n&&r.push({title:"Network Fee",items:[h("Fee Amount",n,9,t)]}),r},"convertSubnetToL1DetailSection");var kt=a((e,t,r=[])=>{let n=[],{txFee:o,amount:s,chain:i,destination:c,type:l}=e;return n.push({items:[x("Source Chain",`Avalanche ${B[i]}`),x("Target Chain",`Avalanche ${B[c]}`)]}),n.push({items:[x("Transaction Type",l?(l[0]||"").toUpperCase()+l.slice(1):""),h("Amount",s,9,t),...r.map(d=>b("To",d))]}),o&&n.push({title:"Network Fee",items:[h("Fee Amount",o,9,t)]}),n},"exportDetailSection");var It=a((e,t,r=[])=>{let n=[],{txFee:o,amount:s,chain:i,source:c,type:l}=e;return n.push({items:[x("Source Chain",`Avalanche ${B[c]}`),x("Destination Chain",`Avalanche ${B[i]}`)]}),n.push({items:[x("Transaction Type",l?(l[0]||"").toUpperCase()+l.slice(1):""),h("Amount",s,9,t),...r.map(d=>b("To",d))]}),o&&n.push({title:"Network Fee",items:[h("Fee Amount",o,9,t)]}),n},"importDetailSection");var Dt=a((e,t)=>{let r=[],{txFee:n,nodeID:o,subnetID:s}=e,i=[k("Node ID",o),k("Subnet ID",s)];return r.push({title:"Staking Details",items:i}),n&&r.push({title:"Network Fee",items:[h("Fee Amount",n,9,t)]}),r},"removeSubnetValidatorDetailSection");var Ln=a((e,t)=>e.isAvax?[h("Amount",e.amount,9,t)]:e.assetDescription?[h("Amount",e.amount,e.assetDescription.denomination,e.assetDescription.symbol),x("Asset",e.assetDescription.name)]:[x("Amount",`${e.amount} (smallest unit)`),x("Asset",e.assetId,"vertical")],"amountItems"),St=a((e,t)=>{let r=[],{txFee:n,chain:o,outputs:s,memo:i}=e;return r.push({title:"Chain Details",items:[x("Active chain",`Avalanche ${B[o]}`)]}),s.forEach((c,l)=>{let d=c.owners.flatMap(m=>[b("To",m),...Ln(c,t)]);c.owners.length>1&&d.push(x("Threshold",c.threshold.toString()));let u=Number(c.locktime)*1e3;u>Date.now()&&d.push(x("Locked until",new Date(u).toUTCString())),r.push({title:l===0?"Balance Change":void 0,items:d});}),o!==avalanchejs.PVM&&i&&r.push({title:"Memo",items:[i]}),n&&r.push({title:"Network Fee",items:[h("Fee Amount",n,9,t)]}),r},"chainDetailSection");var Pt=a((e,t)=>{let r=[],{txFee:n,threshold:o,controlKeys:s}=e;return r.push({title:"L1 Details",items:[zt(s.length>1?"Owners":"Owner",s),x("Signature Threshold",`${o}/${s.length}`,"horizontal")]}),n&&r.push({title:"Network Fee",items:[h("Fee Amount",n,9,t)]}),r},"subnetDetailSection");var Un=a(e=>{try{let t=JSON.parse(e);return JSON.stringify(t,null,2)}catch(t){return console.error("Failed to format genesis data:",t),e}},"formatGenesisData"),Ct=a((e,t)=>{let r=[],{txFee:n,chainID:o,chainName:s,vmID:i,genesisData:c}=e,l=[x("Blockchain name",s,"vertical"),x("Blockchain ID",o,"vertical"),x("Virtual Machine ID",i,"vertical"),ot("Genesis Data",Un(c))];return r.push({title:"Blockchain Details",items:l}),n&&r.push({title:"Network Fee",items:[h("Fee Amount",n,9,t)]}),r},"blockChainDetailSection");var bt=a((e,t)=>{let r=[],{txFee:n,validationId:o}=e,s=[k("Validation ID",o)];return r.push({title:"L1 Details",items:s}),n&&r.push({title:"Network Fee",items:[h("Fee Amount",n,9,t)]}),r},"disableL1ValidatorDetailSection");var wt=a((e,t)=>{let r=[],{txFee:n,balance:o,validationId:s}=e,i=[k("Validation ID",s),h("Increase by amount",o,9,t)];return r.push({title:"L1 Details",items:i}),n&&r.push({title:"Network Fee",items:[h("Fee Amount",n,9,t)]}),r},"increaseL1ValidatorBalanceDetailSection");var Rt=a((e,t)=>{let r=[],{txFee:n,balance:o}=e,s=[h("Initial balance",o,9,t)];return r.push({title:"L1 Details",items:s}),n&&r.push({title:"Network Fee",items:[h("Fee Amount",n,9,t)]}),r},"registerL1ValidatorDetailSection");var Nt=a((e,t)=>{let r=[],{txFee:n}=e;return n&&r.push({title:"Network Fee",items:[h("Fee Amount",n,9,t)]}),r},"setL1ValidatorWeightDetailSection");var _n=60*60*24,Ar=1e4,Vt=a(({tx:e,symbol:t,network:r,signerAccount:n})=>{let o=[],{txFee:s,nodeID:i,stake:c,delegationFee:l,autoCompoundRewardShares:d,period:u}=e,m={items:[b("Account",n),oe("Network",{name:r.chainName,logoUri:r.logoUri})]};o.push(m);let p=[k("Node",i),h("Stake Amount",c,9,t),x("Delegation fee",`${l/Ar} %`),x("Cycle duration",`${Number(u)/_n} days`),x("Compound rewards percentage",`${d/Ar} %`)];return o.push({title:"Staking Details",items:p}),s&&o.push({title:"Network Fee",items:[h("Fee Amount",s,9,t)]}),o},"addAutoRenewedValidatorDetailSection");var On=60*60*24,Fn=1e4,Et=a((e,t)=>{let r=[],{txFee:n,txId:o,autoCompoundRewardShares:s,period:i}=e,c=[k("Validator Tx ID",o),x("Cycle duration",`${Number(i)/On} days`),x("Compound rewards percentage",`${s/Fn} %`)];return r.push({title:"Staking Details",items:c}),n&&r.push({title:"Network Fee",items:[h("Fee Amount",n,9,t)]}),r},"setAutoRenewedValidatorConfigDetailSection");var Xe=a((e,t,r)=>{if(fr(e))return St(e,t);if(mt(e))return kt(e,t,r?.recipients);if(ut(e))return It(e,t,r?.recipients);if(xr(e))return Pt(e,t);if(dt(e)){if(!r)throw new Error("context (network, signerAccount) is required for AddPermissionlessDelegator");return xt({tx:e,symbol:t,network:r.network,signerAccount:r.signerAccount})}else if(pt(e)){if(!r)throw new Error("context (network, signerAccount) is required for AddPermissionlessValidator");return At({tx:e,symbol:t,network:r.network,signerAccount:r.signerAccount})}else {if(yr(e))return Ct(e,t);if(ht(e))return Tt(e,t);if(gt(e))return Dt(e,t);if(pr(e))return vt(e,t);if(mr(e))return bt(e,t);if(ur(e))return wt(e,t);if(hr(e))return Rt(e,t);if(gr(e))return Nt(e,t);if(ft(e)){if(!r)throw new Error("context (network, signerAccount) is required for AddAutoRenewedValidator");return Vt({tx:e,symbol:t,network:r.network,signerAccount:r.signerAccount})}else if(yt(e))return Et(e,t)}},"getTransactionDetailSections");var kr=a(e=>e.chainInfo.chainName===glacierSdk.PrimaryNetworkChainName.P_CHAIN,"isPChainTransactions"),Ir=a(e=>e.chainInfo.chainName===glacierSdk.PrimaryNetworkChainName.X_CHAIN,"isXChainTransactions");function le(e,t,r="tx"){return `${e}/${r}/${t}`}a(le,"getExplorerAddressByNetwork");function Z({amount:e,decimals:t}){return e===void 0?new X__default.default(0):new X__default.default(e/10**t)}a(Z,"getTokenValue");var Hn=zod.z.object({currentAddress:zod.z.string({required_error:"No active account found"}),currentEvmAddress:zod.z.string().optional(),xpubXP:zod.z.string({invalid_type_error:"xpubXP must be a string"}).optional()}),Xn=zod.z.object({account:zod.z.object({xpAddress:zod.z.string({required_error:"XP address is required",invalid_type_error:"XP address must be a string"}),evmAddress:zod.z.string().optional(),xpubXP:zod.z.string({invalid_type_error:"xpubXP must be a string"}).optional(),externalXPAddresses:zod.z.array(zod.z.object({index:zod.z.number(),address:zod.z.string()}))})}),Gn=a(e=>({xpAddress:e.currentAddress,evmAddress:e.currentEvmAddress,xpubXP:e.xpubXP,externalXPAddresses:[]}),"getAccountFromLegacyContext"),qn=a(e=>e.account,"getAccountFromNewContext"),$n=a(e=>e!=null&&typeof e=="object"&&"account"in e&&e.account!=null&&typeof e.account=="object","hasAccountField"),Ge=a(e=>{if(!e)return {success:!1,error:"Missing Avalanche transaction context"};if($n(e)){let{success:o,data:s,error:i}=Xn.safeParse(e);return o?{success:!0,data:qn(s)}:{success:!1,error:i.errors[0]?.message||"Invalid or missing Avalanche transaction context"}}let{success:t,data:r,error:n}=Hn.safeParse(e);return t?{success:!0,data:Gn(r)}:{success:!1,error:n.errors[0]?.message||"Invalid or missing Avalanche transaction context"}},"getAccountFromContext");var Sr=a(async({request:e,network:t,approvalController:r,glacierApiUrl:n,appInfo:o,getAuthHeaders:s})=>{let i=ar(e.params);if(!i.success)return {error:rpcErrors.rpcErrors.invalidParams(Q("Transaction params are invalid",i.error))};try{let{transactionHex:c,chainAlias:l,externalIndices:d,internalIndices:u,utxos:m}=i.data,p=coreWalletsSdk.Avalanche.getVmByChainAlias(l),f=avalanchejs.utils.hexToBuffer(c),T=t.isTestnet??!1,v=await D(t),N=Ge(e.context);if(!N.success)return {error:rpcErrors.rpcErrors.invalidParams(N.error)};let{xpAddress:L,xpubXP:w,externalXPAddresses:ge}=N.data,re=await Oe({utxoHexes:m,vm:p,getIndexedUtxos:async()=>coreWalletsSdk.Avalanche.getUtxosByTxFromGlacier({transactionHex:c,chainAlias:l,network:T?glacierSdk.Network.FUJI:glacierSdk.Network.MAINNET,url:n,headers:{...z(o),...await s?.()}})}),q;if(l==="C")q=await coreWalletsSdk.Avalanche.createAvalancheEvmUnsignedTx({txBytes:f,vm:p,utxos:re,fromAddress:L});else {let ve=avalanchejs.utils.unpackWithManager(p,f);if(w!==void 0&&typeof w!="string")return {error:rpcErrors.rpcErrors.invalidParams("xpubXP must be a string")};let ze=await lt({indices:d??[],chainAlias:l,isChange:!1,network:t,xpubXP:w,externalXPAddresses:ge}),an=await lt({indices:u??[],chainAlias:l,isChange:!0,network:t,xpubXP:w,externalXPAddresses:ge}),on=[...new Set([L,...ze,...an])].map(sn=>avalanchejs.utils.parse(sn)[2]);q=await coreWalletsSdk.Avalanche.createAvalancheUnsignedTx({tx:ve,utxos:re,provider:v,fromAddressBytes:on});}let fe=await coreWalletsSdk.Avalanche.parseAvalancheTx(q,v,L),ye=He(fe),xe=dr(fe);if(fe.type==="unknown"||ye===void 0)return {error:rpcErrors.rpcErrors.internal("Unable to parse transaction data. Unsupported tx type")};let Ae={type:vmModuleTypes.RpcMethod.AVALANCHE_SEND_TRANSACTION,unsignedTxJson:JSON.stringify(q.toJSON()),data:fe,vm:p,externalIndices:d,internalIndices:u},Ve=Xe(ye,t.networkToken.symbol,{network:t,signerAccount:L,recipients:Fe(q.getTx(),ye,T)});if(Ve===void 0)return {error:rpcErrors.rpcErrors.internal("Unable to parse transaction display data. Unsupported tx type")};let Ee={title:xe,network:{chainId:t.chainId,name:t.chainName,logoUri:t.logoUri},details:Ve,networkFeeSelector:!1},Te=await r.requestApproval({request:e,displayData:Ee,signingData:Ae});if("error"in Te)return {error:Te.error};let U;try{U=await Jn(v,Te,p);}catch(ve){return {error:rpcErrors.rpcErrors.internal(Q("Unable to broadcast transaction",ve))}}return zn({explorerUrl:t.explorerUrl??"",provider:v,txHash:U,vm:p,onTransactionPending:r.onTransactionPending,onTransactionConfirmed:r.onTransactionConfirmed,onTransactionReverted:r.onTransactionReverted,onTransactionStatusUnknown:r.onTransactionStatusUnknown,request:e}),{result:U}}catch(c){return console.error(c),{error:rpcErrors.rpcErrors.internal(Q("Unable to create transaction",c))}}},"avalancheSendTransaction"),Jn=a(async(e,t,r)=>{if("txHash"in t)return t.txHash;let{txID:n}=await e.issueTxHex(t.signedData,r);return n},"getTxHash"),zn=a(async({explorerUrl:e,provider:t,txHash:r,vm:n,onTransactionPending:o,onTransactionConfirmed:s,onTransactionReverted:i,onTransactionStatusUnknown:c,request:l})=>{let u=le(e,r);try{o({txHash:r,request:l,explorerLink:u}),n===avalanchejs.PVM?(await j({operation:()=>t.getApiP().getTxStatus({txID:r}),isSuccess:p=>["Committed","Dropped"].includes(p.status),maxRetries:7})).status==="Committed"?s({txHash:r,explorerLink:u,request:l}):i({txHash:r,request:l}):n===avalanchejs.AVM?(await j({operation:()=>t.getApiX().getTxStatus({txID:r}),isSuccess:p=>["Accepted","Rejected"].includes(p.status),maxRetries:7})).status==="Accepted"?s({txHash:r,explorerLink:u,request:l}):i({txHash:r,request:l}):(await j({operation:()=>t.getApiC().getAtomicTx({txID:r}),isSuccess:m=>m.blockHeight!==void 0,maxRetries:7}),s({txHash:r,explorerLink:u,request:l}));}catch(m){console.error(m),m instanceof Error&&m.message.startsWith("Max retry exceeded.")?c?.({txHash:r,explorerLink:u,request:l}):i({txHash:r,request:l});}},"waitForTransactionReceipt");var Yn=zod.z.union([zod.z.tuple([zod.z.string()]).describe("message to sign"),zod.z.tuple([zod.z.string().describe("message to sign"),zod.z.number().nonnegative().describe("account index")])]),Pr=a(e=>Yn.safeParse(e),"parseRequestParams");var br=a(async({request:e,network:t,approvalController:r})=>{let n=Pr(e.params);if(!n.success)return console.error("invalid params",n.error),{error:rpcErrors.rpcErrors.invalidParams(Q("Params are invalid",n.error))};let[o,s]=n.data,i=Buffer.from(o,"utf-8").toString("hex"),c={type:vmModuleTypes.RpcMethod.AVALANCHE_SIGN_MESSAGE,data:i,accountIndex:s},l={title:"Sign Message",dAppInfo:{name:e.dappInfo.name,action:`${e.dappInfo.name} is requesting to sign the following message`,logoUri:e.dappInfo.icon},network:{chainId:t.chainId,name:t.chainName,logoUri:t.logoUri},details:[{title:"Message",items:[o]}]},d=await r.requestApproval({request:e,displayData:l,signingData:c});return "error"in d?{error:d.error}:"signedData"in d?{result:d.signedData}:{error:rpcErrors.rpcErrors.internal("No signed data returned")}},"avalancheSignMessage");var Zn=zod.z.object({from:zod.z.string().optional().describe("Avalanche receiving address"),transactionHex:zod.z.string(),chainAlias:zod.z.enum(["X","P","C"]),utxos:zod.z.string().array().optional()}),wr=a(e=>Zn.safeParse(e),"parseRequestParams");var Er=a(async({vm:e,txBytes:t,utxos:r,currentAddress:n,currentEvmAddress:o,provider:s})=>{let i,c,l=avalanchejs.utils.unpackWithManager(e,t);if(avalanchejs.evmSerial.isExportTx(l)){let d=l.ins[0]?.address.toHex();if(!o)throw rpcErrors.rpcErrors.invalidRequest("Missing EVM address");if(d?.toLowerCase()!==o.toLowerCase())throw new Error("This account has nothing to sign");return coreWalletsSdk.Avalanche.createAvalancheEvmUnsignedTx({txBytes:t,vm:e,utxos:r,fromAddress:n})}try{let u=avalanchejs.utils.getManagerForVM(e).unpack(t,avalanchejs.avaxSerial.SignedTx);avalanchejs.evmSerial.isImportTx(l)?c=await coreWalletsSdk.Avalanche.createAvalancheEvmUnsignedTx({txBytes:t,vm:e,utxos:r,fromAddress:n}):c=await coreWalletsSdk.Avalanche.createAvalancheUnsignedTx({tx:l,provider:s,credentials:u.getCredentials(),utxos:r}),i=l.getSigIndices().map((m,p)=>new avalanchejs.Credential(coreWalletsSdk.Avalanche.populateCredential(m,{unsignedTx:c,credentialIndex:p})));}catch{i=l.getSigIndices().map(u=>new avalanchejs.Credential(coreWalletsSdk.Avalanche.populateCredential(u)));}return coreWalletsSdk.Avalanche.createAvalancheUnsignedTx({tx:l,provider:s,credentials:i,utxos:r})},"getUnsignedOrPartiallySignedTx");var Mr=a(async({request:e,network:t,approvalController:r,glacierApiUrl:n,appInfo:o,getAuthHeaders:s})=>{let i=wr(e.params);if(!i.success)return console.error("invalid params",i.error),{error:rpcErrors.rpcErrors.invalidParams("Params are invalid")};let{transactionHex:c,chainAlias:l,from:d,utxos:u}=i.data,m=coreWalletsSdk.Avalanche.getVmByChainAlias(l),p=t.isTestnet??!1,f=await D(t),T=Ge(e.context);if(!T.success)return {error:rpcErrors.rpcErrors.invalidParams(T.error)};let{xpAddress:v,evmAddress:N}=T.data,L=await Oe({utxoHexes:u,vm:m,getIndexedUtxos:async()=>coreWalletsSdk.Avalanche.getUtxosByTxFromGlacier({transactionHex:c,chainAlias:l,network:p?glacierSdk.Network.FUJI:glacierSdk.Network.MAINNET,url:n,headers:{...z(o),...await s?.()}})}),w=await Er({txBytes:avalanchejs.utils.hexToBuffer(c),vm:m,utxos:L,currentAddress:v,currentEvmAddress:N,provider:f}),ge=avalanchejs.utils.addressesFromBytes([avalanchejs.utils.parse(d??v)[2]])[0];if(!ge)return {error:rpcErrors.rpcErrors.invalidRequest("Missing signer address")};let re=w.getSigIndicesForAddress(ge);if(!re)return {error:rpcErrors.rpcErrors.invalidRequest("This account has nothing to sign")};let q=w.getSigIndices();if(!re.some(([ve,ze])=>q[ve]?.includes(ze)))return {error:rpcErrors.rpcErrors.invalidRequest("This account has nothing to sign")};let ye=d??v,xe=await coreWalletsSdk.Avalanche.parseAvalancheTx(w,f,d??v),Ae=He(xe);if(xe.type==="unknown"||Ae===void 0)return {error:rpcErrors.rpcErrors.invalidParams("Unable to parse transaction data. Unsupported tx type")};let Ve={type:vmModuleTypes.RpcMethod.AVALANCHE_SIGN_TRANSACTION,data:xe,vm:m,unsignedTxJson:JSON.stringify(w.toJSON()),ownSignatureIndices:re},Ee=Xe(Ae,t.networkToken.symbol,{network:t,signerAccount:ye,recipients:Fe(w.getTx(),Ae,p)});if(Ee===void 0)return {error:rpcErrors.rpcErrors.internal("Unable to parse transaction display data. Unsupported tx type")};let Te={title:"Do you approve this transaction?",dAppInfo:{name:e.dappInfo.name,action:`${e.dappInfo.name} requests you to sign the following transaction`,logoUri:e.dappInfo.icon},network:{chainId:t.chainId,name:t.chainName,logoUri:t.logoUri},details:Ee},U=await r.requestApproval({request:e,displayData:Te,signingData:Ve});return "error"in U?{error:U.error}:"signedData"in U?{result:U.signedData}:{error:rpcErrors.rpcErrors.invalidRequest("No signed data returned")}},"avalancheSignTransaction");var te=a(({accountIndex:e,derivationPathType:t,addressIndex:r=0})=>{if(e<0)throw rpcErrors.rpcErrors.invalidParams("Account index must be a non-negative integer");if(r!==void 0&&r<0)throw rpcErrors.rpcErrors.invalidParams("Address index must be a non-negative integer");switch(t){case"bip44":return {[vmModuleTypes.NetworkVMType.AVM]:`m/44'/9000'/${e}'/0/${r}`,[vmModuleTypes.NetworkVMType.CoreEth]:`m/44'/60'/0'/0/${e}`};case"ledger_live":return {[vmModuleTypes.NetworkVMType.AVM]:`m/44'/9000'/${e}'/0/${r}`,[vmModuleTypes.NetworkVMType.CoreEth]:`m/44'/60'/${e}'/0/0`};default:throw rpcErrors.rpcErrors.invalidParams(`Unsupported derivation path type: ${t}`)}},"buildDerivationPath");var _t=a(e=>"derivationPathType"in e&&"accountIndex"in e&&typeof e.accountIndex=="number"&&typeof e.derivationPathType=="string","hasDerivationDetails");var Lr=a(async e=>{let{approvalController:t,network:r,secretId:n}=e,o=_t(e)?te(e).AVM:void 0,s=_t(e)?te(e).CoreEth:void 0,i=await D(r),c=await t.requestPublicKey({curve:"secp256k1",secretId:n,derivationPath:o}).catch(()=>null),l=await t.requestPublicKey({curve:"secp256k1",secretId:n,derivationPath:s}).catch(()=>null),d=l?{[vmModuleTypes.NetworkVMType.CoreEth]:i.getAddress(Buffer.from(l,"hex"),"C")}:{},u=c?{[vmModuleTypes.NetworkVMType.AVM]:i.getAddress(Buffer.from(c,"hex"),"X"),[vmModuleTypes.NetworkVMType.PVM]:i.getAddress(Buffer.from(c,"hex"),"P")}:{};return {...d,...u}},"deriveAddress");var Ur=a(async e=>{let{approvalController:t,network:r,secretId:n,accountIndices:o,derivationPathType:s,addressIndex:i}=e;if(o.length===0)return [];await cryptoSdk.init();let c=await Promise.all(o.map(async d=>{let u=te({accountIndex:d,derivationPathType:s,addressIndex:i}),[m,p]=await Promise.all([t.requestPublicKey({curve:"secp256k1",secretId:n,derivationPath:u.AVM}),t.requestPublicKey({curve:"secp256k1",secretId:n,derivationPath:u.CoreEth})]);return {xp:Uint8Array.from(Buffer.from(m,"hex")),evm:Uint8Array.from(Buffer.from(p,"hex"))}}));return (await cryptoSdk.deriveAddressesForAvalanche(c.map(d=>d.xp),c.map(d=>d.evm),!!r.isTestnet)).map(d=>({[vmModuleTypes.NetworkVMType.AVM]:d.x,[vmModuleTypes.NetworkVMType.PVM]:d.p,[vmModuleTypes.NetworkVMType.CoreEth]:d.coreEth}))},"deriveAddresses");var Or=a(async({accountIndex:e,xpubXP:t,walletType:r,network:n})=>{if(!n)throw rpcErrors.rpcErrors.invalidParams("network is required to get address");if(t===void 0)throw rpcErrors.rpcErrors.invalidParams("xpubXP is required to get address");let o=await D(n),s;switch(r){case vmModuleTypes.WalletType.Mnemonic:case vmModuleTypes.WalletType.Ledger:case vmModuleTypes.WalletType.Keystone:{s=coreWalletsSdk.Avalanche.getAddressPublicKeyFromXpub(t,e);break}case vmModuleTypes.WalletType.LedgerLive:case vmModuleTypes.WalletType.Seedless:{s=Buffer.from(t,"hex");break}default:throw rpcErrors.rpcErrors.invalidParams(`Unsupported wallet type: ${r}`)}return {[vmModuleTypes.NetworkVMType.AVM]:o.getAddress(s,"X"),[vmModuleTypes.NetworkVMType.PVM]:o.getAddress(s,"P")}},"getAddress");var Xt=class Xt extends Error{constructor(){super(...arguments);$(this,"message","Glacier is unhealthy. Try again later.");}};a(Xt,"GlacierUnhealthyError");var $e=Xt,Gt=class Gt{constructor({glacierApiUrl:t,headers:r,getAuthHeaders:n}){$(this,"glacierSdk");$(this,"isGlacierHealthy",!0);$(this,"isHealthy",a(()=>this.isGlacierHealthy,"isHealthy"));this.glacierSdk=new glacierSdk.Glacier({BASE:t,HEADERS:n?async()=>({...r,...await n()}):r},De);}setGlacierToUnhealthy(){this.isGlacierHealthy=!1,setTimeout(()=>{this.isGlacierHealthy=!0;},5*60*1e3);}async listLatestPrimaryNetworkTransactions(t){try{return this.glacierSdk.primaryNetworkTransactions.listLatestPrimaryNetworkTransactions(t)}catch(r){throw r instanceof $e&&this.setGlacierToUnhealthy(),r}}async getChainBalance(t){try{return this.glacierSdk.primaryNetworkBalances.getBalancesByAddresses(t)}catch(r){throw r instanceof $e&&this.setGlacierToUnhealthy(),r}}};a(Gt,"AvalancheGlacierService");var je=Gt;var qt=a(e=>Object.keys(e).includes("unlockedUnstaked"),"isPchainBalance"),Hr=a(e=>Object.keys(e).includes("locked"),"isXchainBalance"),Fr=a((e,t)=>e?.length?e.reduce((r,n)=>n.assetId!==t?r:r+BigInt(n.amount),0n):0n,"sumAvaxFromAssets");function We(e,t){if(qt(e)){let n=[...e.unlockedUnstaked||[],...e.unlockedStaked||[],...e.pendingStaked||[],...e.lockedStaked||[],...e.lockedStakeable||[],...e.lockedPlatform||[],...e.atomicMemoryLocked||[],...e.atomicMemoryUnlocked||[]],o=Fr(n,t),s=e.restakedRewards?BigInt(e.restakedRewards):0n;return o+s}let r=[...e.unlocked||[],...e.locked||[],...e.atomicMemoryUnlocked||[],...e.atomicMemoryLocked||[]];return Fr(r,t)}a(We,"calculateAvaxTotalBalance");var Gr=a(({balance:e,networkToken:t,priceInCurrency:r,marketCap:n,vol24:o,change24:s,coingeckoId:i,avaxAssetId:c})=>{let l={},d={unlockedUnstaked:e.unlockedUnstaked,unlockedStaked:e.unlockedStaked,pendingStaked:e.pendingStaked,lockedStaked:e.lockedStaked,lockedStakeable:e.lockedStakeable,lockedPlatform:e.lockedPlatform,atomicMemoryLocked:e.atomicMemoryLocked,atomicMemoryUnlocked:e.atomicMemoryUnlocked};for(let T in d){let v=d[T];if(!v||!v.length){l[T]=0n;continue}v.forEach(N=>{if(N.assetId!==c)return;let w=(l[T]??0n)+BigInt(N.amount);l[T]=w;});}let u=new coreUtilsSdk.TokenUnit(l.unlockedUnstaked?l.unlockedUnstaked:0n,t.decimals,t.symbol),m=r?u.mul(r).toDisplay({fixedDp:2,asNumber:!0}):void 0,p=new coreUtilsSdk.TokenUnit(We(e,c),t.decimals,t.symbol),f=r?p.mul(r).toDisplay({fixedDp:2,asNumber:!0}):void 0;return {...t,type:vmModuleTypes.TokenType.NATIVE,priceInCurrency:r,balance:p.toSubUnit(),balanceInCurrency:f,balanceDisplayValue:p.toDisplay(),balanceCurrencyDisplayValue:f?.toFixed(2),available:u.toSubUnit(),availableInCurrency:m,availableDisplayValue:u.toDisplay(),availableCurrencyDisplayValue:m?.toFixed(2),utxos:e,balancePerType:{lockedStaked:l.lockedStaked,lockedStakeable:l.lockedStakeable,lockedPlatform:l.lockedPlatform,atomicMemoryLocked:l.atomicMemoryLocked,atomicMemoryUnlocked:l.atomicMemoryUnlocked,unlockedUnstaked:l.unlockedUnstaked,unlockedStaked:l.unlockedStaked,pendingStaked:l.pendingStaked,restakedRewards:e.restakedRewards?BigInt(e.restakedRewards):void 0},marketCap:n,vol24:o,change24:s,coingeckoId:i}},"convertPChainBalance");var $r=a(({balance:e,networkToken:t,priceInCurrency:r,marketCap:n,vol24:o,change24:s,coingeckoId:i,avaxAssetId:c})=>{let l={},d={unlocked:e.unlocked,locked:e.locked,atomicMemoryUnlocked:e.atomicMemoryUnlocked,atomicMemoryLocked:e.atomicMemoryLocked};for(let T in d){let v=d[T];if(!v||!v.length){l[T]=0n;continue}v.forEach(N=>{if(N.assetId!==c)return;let w=(l[T]??0n)+BigInt(N.amount);l[T]=w;});}let u=new coreUtilsSdk.TokenUnit(l.unlocked?l.unlocked:0n,t.decimals,t.symbol),m=r?u.mul(r).toDisplay({fixedDp:2,asNumber:!0}):void 0,p=new coreUtilsSdk.TokenUnit(We(e,c),t.decimals,t.symbol),f=r!==void 0?p.mul(r):void 0;return {...t,coingeckoId:i,type:vmModuleTypes.TokenType.NATIVE,priceInCurrency:r,balance:p.toSubUnit(),balanceInCurrency:f?.toDisplay({fixedDp:2,asNumber:!0}),balanceDisplayValue:p.toDisplay(),balanceCurrencyDisplayValue:f?.toDisplay({fixedDp:2}),available:u.toSubUnit(),availableInCurrency:m,availableDisplayValue:u.toDisplay(),availableCurrencyDisplayValue:m?.toFixed(2),utxos:e,balancePerType:{unlocked:l.unlocked,locked:l.locked,atomicMemoryUnlocked:l.atomicMemoryUnlocked,atomicMemoryLocked:l.atomicMemoryLocked},marketCap:n,vol24:o,change24:s}},"convertXChainBalance");var Kr=a(async({addresses:e,currency:t,network:r,glacierService:n,tokenService:o})=>{let s=await D(r);if(!n.isHealthy())return Promise.reject("Glacier is unhealthy. Try again later.");let c=t.toLowerCase(),l=e[0]??"",d=r.networkToken,u=r.pricingProviders?.coingecko.nativeTokenId,m=r.vmName===vmModuleTypes.NetworkVMType.PVM?glacierSdk.BlockchainId.P_CHAIN:glacierSdk.BlockchainId.X_CHAIN,p=r.isDevnet?null:r.isTestnet?glacierSdk.Network.FUJI:glacierSdk.Network.MAINNET;if(!p)return Promise.reject("Glacier does not supported local devnets");let f=await n.getChainBalance({blockchainId:m,network:p,addresses:e.join(",")}).then(N=>N.balances),T=await o.getWatchlistDataForToken({tokenDetails:{symbol:r.networkToken.symbol,isNative:!0,caip2Id:r.caipId??""},currency:c}),v;return qt(f)?(v=Gr({balance:f,networkToken:d,priceInCurrency:T.priceInCurrency??void 0,marketCap:T.marketCap??void 0,vol24:T.vol24??void 0,change24:T.change24??void 0,coingeckoId:u??"",avaxAssetId:s.getContext().avaxAssetID}),{[l]:{[d.symbol]:v}}):Hr(f)?(v=$r({balance:f,networkToken:d,priceInCurrency:T.priceInCurrency??void 0,marketCap:T.marketCap??void 0,vol24:T.vol24??void 0,change24:T.change24??void 0,coingeckoId:u??"",avaxAssetId:s.getContext().avaxAssetID}),{[l]:{[d.symbol]:v}}):Promise.reject("Incorrect type balance was returned from glacier")},"getBalances");async function Jr(e){let{vmName:t}=e,r=await D(e);if(t===vmModuleTypes.NetworkVMType.AVM)return {baseFee:BigInt(1e6),low:{maxFeePerGas:BigInt(1e6)},medium:{maxFeePerGas:BigInt(1e6)},high:{maxFeePerGas:BigInt(1e6)},isFixedFee:!0};let{price:n}=await r.getApiP().getFeeState(),o=100/Number(n)/100,s=Math.min(1,Math.max(o,.15)),i=Math.min(1,Math.max(o*2,.3)),c=1+s,l=1+i;return {baseFee:n,low:{maxFeePerGas:n},medium:{maxFeePerGas:n*BigInt(Math.round(100*c))/100n},high:{maxFeePerGas:n*BigInt(Math.round(100*l))/100n},isFixedFee:!1}}a(Jr,"getNetworkFee");function Yr({tx:e,address:t,networkToken:r,chainId:n,explorerUrl:o,isTestnet:s}){let i=new Set(e.consumedUtxos.flatMap(p=>p.addresses)||[]),c=new Set(e.emittedUtxos.flatMap(p=>p.addresses)||[]),l=ma({tx:e,isTestnet:s,networkToken:r,froms:i}),d=ua({tx:e,isTestnet:s,networkToken:r}),u=t.toLowerCase().startsWith("p-")?t.slice(2):t,m=i.has(u);return {hash:e.txHash,isContractCall:!1,isIncoming:!m,isOutgoing:m,from:[...i.values()].join(","),to:[...c.values()].join(","),isSender:m,timestamp:e.blockTimestamp*1e3,tokens:[{decimal:r.decimals.toString(),name:r.name,symbol:r.symbol,type:vmModuleTypes.TokenType.NATIVE,amount:l.toString()}],gasUsed:d.toString(),explorerLink:le(o??"",e.txHash,"tx"),txType:e.txType,chainId:n.toString()}}a(Yr,"convertPChainTransaction");function ma({tx:e,isTestnet:t,networkToken:r,froms:n}){let o=["ImportTx","ExportTx"].includes(e.txType),s=e.txType==="BaseTx",i=e.emittedUtxos.filter(p=>p.asset.assetId===be(!!t)&&!p.addresses.some(f=>n.has(f))).reduce((p,f)=>p.add(f.asset.amount),new X__default.default(0)),c=e.value.find(p=>p.assetId===be(!!t))?.amount,l=i.gt(new X__default.default(0))?i:c?new X__default.default(c):new X__default.default(0)??new X__default.default(0),d=t?coreWalletsSdk.Avalanche.FujiContext.pBlockchainID:coreWalletsSdk.Avalanche.MainnetContext.pBlockchainID,u=e.emittedUtxos.filter(p=>p.asset.assetId===be(!!t)&&(e.txType==="ImportTx"&&p.consumedOnChainId===d||e.txType==="ExportTx"&&p.consumedOnChainId!==d)).reduce((p,f)=>p.add(f.amount),new X__default.default(0)),m=s?l:o?u:e.amountStaked.length===0?zr(e.value,!!t):zr(e.amountStaked,!!t);return Z({amount:m?.toNumber(),decimals:r.decimals})}a(ma,"getAmount");function ua({tx:e,isTestnet:t,networkToken:r}){let n=e.amountBurned?.filter(o=>o.assetId===be(!!t)).reduce((o,s)=>o.add(s.amount),new X__default.default(0));return Z({amount:n?.toNumber(),decimals:r.decimals})}a(ua,"getBurnedAmount");function zr(e,t){return e.filter(r=>r.assetId===be(t)).reduce((r,n)=>r.add(n.amount),new X__default.default(0))}a(zr,"aggregateValue");function be(e){return e?coreWalletsSdk.Avalanche.FujiContext.avaxAssetID:coreWalletsSdk.Avalanche.MainnetContext.avaxAssetID}a(be,"getAvaxAssetId");function Qr({tx:e,address:t,networkToken:r,chainId:n,explorerUrl:o,isTestnet:s}){let i=new Set(e.consumedUtxos.flatMap(T=>T.addresses)||[]),c=new Set(e.emittedUtxos.flatMap(T=>T.addresses)||[]),l=t.toLowerCase().startsWith("x-")?t.slice(2):t,d=["ImportTx","ExportTx"].includes(e.txType),{amount:u,isSender:m}=ga({tx:e,isTestnet:s,networkToken:r,chainAddress:l,isImportExport:d}),p=fa({isTestnet:s,tx:e,networkToken:r}),f=d?u.toString():m?u.minus(p).toString():u.toString();return {hash:e.txHash,isContractCall:!1,isIncoming:!m,isOutgoing:m,from:[...i.values()].join(","),to:[...c.values()].join(","),isSender:m,timestamp:e.timestamp*1e3,tokens:[{decimal:r.decimals.toString(),name:r.name,symbol:r.symbol,type:vmModuleTypes.TokenType.NATIVE,amount:f}],gasUsed:p.toString(),explorerLink:le(o??"",e.txHash,"tx"),txType:e.txType,chainId:n.toString()}}a(Qr,"convertXChainTransaction");function ga({tx:e,isTestnet:t,networkToken:r,chainAddress:n,isImportExport:o}){if(o){let d=t?coreWalletsSdk.Avalanche.FujiContext.xBlockchainID:coreWalletsSdk.Avalanche.MainnetContext.xBlockchainID,u=e.emittedUtxos.filter(m=>m.asset.assetId===Re(!!t)&&(e.txType==="ImportTx"&&m.consumedOnChainId===d||e.txType==="ExportTx"&&m.consumedOnChainId!==d)).reduce((m,p)=>m.add(p.asset.amount),new X__default.default(0));return {amount:Z({amount:u.toNumber(),decimals:r.decimals}),isSender:!0}}let s=e.consumedUtxos.filter(d=>d.asset.assetId===Re(!!t)&&d.addresses.includes(n)).reduce((d,u)=>d.add(u.asset.amount),new X__default.default(0)),i=e.emittedUtxos.filter(d=>d.asset.assetId===Re(!!t)&&d.addresses.includes(n)).reduce((d,u)=>d.add(u.asset.amount),new X__default.default(0)),c=s.gte(i),l=c?s.minus(i):i.minus(s);return {amount:Z({amount:l.toNumber(),decimals:r.decimals}),isSender:c}}a(ga,"getAmount");function fa({isTestnet:e,tx:t,networkToken:r}){let n=t.amountUnlocked.filter(i=>i.assetId===Re(!!e)).reduce((i,c)=>i.add(c.amount),new X__default.default(0)),o=t.amountCreated.filter(i=>i.assetId===Re(!!e)).reduce((i,c)=>i.add(c.amount),new X__default.default(0)),s=n.minus(o);return Z({amount:s.toNumber(),decimals:r.decimals})}a(fa,"getBurnedAmount");function Re(e){return e?coreWalletsSdk.Avalanche.FujiContext.avaxAssetID:coreWalletsSdk.Avalanche.MainnetContext.avaxAssetID}a(Re,"getAvaxAssetId");var tn=a(async({address:e,nextPageToken:t,offset:r,network:n,glacierService:o})=>{let{isTestnet:s,networkToken:i,explorerUrl:c,chainId:l}=n;if(!o.isHealthy())return {transactions:[],nextPageToken:""};let u=n.isTestnet?glacierSdk.Network.FUJI:glacierSdk.Network.MAINNET,m=await o.listLatestPrimaryNetworkTransactions({addresses:e,blockchainId:xa(e),network:u,pageSize:r,pageToken:t,sortOrder:glacierSdk.SortOrder.DESC}),p=[];return kr(m)&&(p=m.transactions.map(f=>Yr({tx:f,isTestnet:s,address:e,networkToken:i,explorerUrl:c,chainId:l}))),Ir(m)&&(p=m.transactions.map(f=>Qr({tx:f,isTestnet:s,address:e,networkToken:i,explorerUrl:c,chainId:l}))),{transactions:p,nextPageToken:m.nextPageToken}},"getTransactionHistory"),xa=a(e=>e.split(",")[0]?.toLowerCase().startsWith("p-")?glacierSdk.BlockchainId.P_CHAIN:glacierSdk.BlockchainId.X_CHAIN,"getBlockchainIdByAddress");function rn({blockchainId:e,isTestnet:t}){let r=t?"fuji"+e:e,n=Aa__default.default.createHash("sha256").update(r).digest("base64");return "avax:"+Ta(n).substring(0,32)}a(rn,"hashBlockchainId");var Ta=a(e=>e.replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,""),"convertBase64ToBase64Url");var me,Ne,ue,M,he,G,jt=class jt{constructor({approvalController:t,environment:r,appInfo:n,runtime:o}){I(this,me,void 0);I(this,Ne,void 0);I(this,ue,void 0);I(this,M,void 0);I(this,he,void 0);I(this,G,void 0);let{glacierApiUrl:s,proxyApiUrl:i}=nr(r);C(this,he,n),C(this,G,o),C(this,me,new je({glacierApiUrl:s,headers:z(n),getAuthHeaders:async()=>y(this,G)?.getAuthHeaders?.()})),C(this,Ne,i),C(this,ue,s),C(this,M,t);}getProvider(t){return D(t)}getAddress({accountIndex:t,xpubXP:r,walletType:n,network:o}){return Or({accountIndex:t,xpubXP:r,walletType:n,network:o})}getBalances({addresses:t,network:r,storage:n,currency:o}){let s=new Ie({storage:n,proxyApiUrl:y(this,Ne),fetch:y(this,G)?.fetch});return Kr({addresses:t,currency:o,network:r,glacierService:y(this,me),tokenService:s})}getManifest(){let t=vmModuleTypes.parseManifest(tr);return t.success?t.data:void 0}getNetworkFee(t){return Jr(t)}getTransactionHistory({network:t,address:r,nextPageToken:n,offset:o}){return tn({network:t,address:r,nextPageToken:n,offset:o,glacierService:y(this,me)})}getTokens(t){return Promise.resolve([])}buildDerivationPath(t){return te(t)}async deriveAddress(t){return Lr({...t,approvalController:y(this,M)})}async deriveAddresses(t){return Ur({...t,approvalController:y(this,M)})}async onRpcRequest(t,r){switch(t.method){case vmModuleTypes.RpcMethod.AVALANCHE_SIGN_MESSAGE:return br({request:t,network:r,approvalController:y(this,M)});case vmModuleTypes.RpcMethod.AVALANCHE_SIGN_TRANSACTION:return Mr({request:t,network:r,approvalController:y(this,M),glacierApiUrl:y(this,ue),appInfo:y(this,he),getAuthHeaders:y(this,G)?.getAuthHeaders});case vmModuleTypes.RpcMethod.AVALANCHE_SEND_TRANSACTION:return Sr({request:t,network:r,approvalController:y(this,M),glacierApiUrl:y(this,ue),appInfo:y(this,he),getAuthHeaders:y(this,G)?.getAuthHeaders});default:return {error:rpcErrors.rpcErrors.methodNotSupported(`Method ${t.method} not supported`)}}}static getHashedBlockchainId({blockchainId:t,isTestnet:r}){return rn({blockchainId:t,isTestnet:r})}};me=new WeakMap,Ne=new WeakMap,ue=new WeakMap,M=new WeakMap,he=new WeakMap,G=new WeakMap,a(jt,"AvalancheModule");var nn=jt;var ip=a(e=>"balancePerType"in e&&"unlockedUnstaked"in e.balancePerType,"isTokenWithBalancePVM"),cp=a(e=>"balancePerType"in e&&"unlocked"in e.balancePerType,"isTokenWithBalanceAVM");
22
+ `),"vertical")),r.push({title:A===0?"Validators":void 0,items:v});}),a&&r.push({items:[f("Fee Amount",a,9,t)]}),r},"convertSubnetToL1DetailSection");var Lt=n((e,t,r=[])=>{let a=[],{txFee:s,amount:o,chain:c,destination:l,type:i}=e;return a.push({items:[x("Source Chain",`Avalanche ${_[c]}`),x("Target Chain",`Avalanche ${_[l]}`)]}),a.push({items:[x("Transaction Type",i?(i[0]||"").toUpperCase()+i.slice(1):""),f("Amount",o,9,t),...r.map(d=>V("To",d))]}),s&&a.push({items:[f("Fee Amount",s,9,t)]}),a},"exportDetailSection");var Ot=n((e,t,r=[])=>{let a=[],{txFee:s,amount:o,chain:c,source:l,type:i}=e;return a.push({items:[x("Source Chain",`Avalanche ${_[l]}`),x("Destination Chain",`Avalanche ${_[c]}`)]}),a.push({items:[x("Transaction Type",i?(i[0]||"").toUpperCase()+i.slice(1):""),f("Amount",o,9,t),...r.map(d=>V("To",d))]}),s&&a.push({items:[f("Fee Amount",s,9,t)]}),a},"importDetailSection");var _t=n((e,t)=>{let r=[],{txFee:a,nodeID:s,subnetID:o}=e,c=[D("Node ID",s),D("Subnet ID",o)];return r.push({title:"Staking Details",items:c}),a&&r.push({items:[f("Fee Amount",a,9,t)]}),r},"removeSubnetValidatorDetailSection");var Ft=n((e,t)=>{let r=[],{txFee:a,chain:s,memo:o}=e;return r.push({items:[x("Active chain",`Avalanche ${_[s]}`)]}),s!==avalanchejs.PVM&&o&&r.push({title:"Memo",items:[o]}),a&&r.push({items:[f("Fee Amount",a,9,t)]}),r},"chainDetailSection");var Ht=n((e,t)=>{let r=[],{txFee:a,threshold:s,controlKeys:o}=e;return r.push({title:"L1 Details",items:[ur(o.length>1?"Owners":"Owner",o),x("Signature Threshold",`${s}/${o.length}`,"horizontal")]}),a&&r.push({items:[f("Fee Amount",a,9,t)]}),r},"subnetDetailSection");var va=n(e=>{try{let t=JSON.parse(e);return JSON.stringify(t,null,2)}catch(t){return console.error("Failed to format genesis data:",t),e}},"formatGenesisData"),Xt=n((e,t)=>{let r=[],{txFee:a,chainID:s,chainName:o,vmID:c,genesisData:l}=e,i=[x("Blockchain name",o,"vertical"),x("Blockchain ID",s,"vertical"),x("Virtual Machine ID",c,"vertical"),At("Genesis Data",va(l))];return r.push({title:"Blockchain Details",items:i}),a&&r.push({items:[f("Fee Amount",a,9,t)]}),r},"blockChainDetailSection");var Gt=n((e,t)=>{let r=[],{txFee:a,validationId:s}=e,o=[D("Validation ID",s)];return r.push({title:"L1 Details",items:o}),a&&r.push({items:[f("Fee Amount",a,9,t)]}),r},"disableL1ValidatorDetailSection");var Wt=n((e,t)=>{let r=[],{txFee:a,balance:s,validationId:o}=e,c=[D("Validation ID",o),f("Increase by amount",s,9,t)];return r.push({title:"L1 Details",items:c}),a&&r.push({items:[f("Fee Amount",a,9,t)]}),r},"increaseL1ValidatorBalanceDetailSection");var qt=n((e,t)=>{let r=[],{txFee:a,balance:s}=e,o=[f("Initial balance",s,9,t)];return r.push({title:"L1 Details",items:o}),a&&r.push({items:[f("Fee Amount",a,9,t)]}),r},"registerL1ValidatorDetailSection");var jt=n((e,t)=>{let r=[],{txFee:a}=e;return a&&r.push({items:[f("Fee Amount",a,9,t)]}),r},"setL1ValidatorWeightDetailSection");var Da=60*60*24,Fr=1e4,$t=n(({tx:e,symbol:t,network:r,signerAccount:a})=>{let s=[],{txFee:o,nodeID:c,stake:l,delegationFee:i,autoCompoundRewardShares:d,period:m}=e,u={items:[V("Account",a),me("Network",{name:r.chainName,logoUri:r.logoUri})]};s.push(u);let p=[D("Node",c),f("Stake Amount",l,9,t),x("Delegation fee",`${i/Fr} %`),x("Cycle duration",`${Number(m)/Da} days`),x("Compound rewards percentage",`${d/Fr} %`)];return s.push({title:"Staking Details",items:p}),o&&s.push({items:[f("Fee Amount",o,9,t)]}),s},"addAutoRenewedValidatorDetailSection");var Sa=60*60*24,Ia=1e4,Kt=n((e,t)=>{let r=[],{txFee:a,txId:s,autoCompoundRewardShares:o,period:c}=e,l=[D("Validator Tx ID",s),x("Cycle duration",`${Number(c)/Sa} days`),x("Compound rewards percentage",`${o/Ia} %`)];return r.push({title:"Staking Details",items:l}),a&&r.push({items:[f("Fee Amount",a,9,t)]}),r},"setAutoRenewedValidatorConfigDetailSection");var ka=n((e,t,r)=>{if(Er(e))return Ft(e,t);if(Pt(e))return Lt(e,t,r?.recipients);if(bt(e))return Ot(e,t,r?.recipients);if(Br(e))return Ht(e,t);if(we(e)){if(!r)throw new Error("context (network, signerAccount) is required for AddPermissionlessDelegator");return Et({tx:e,symbol:t,network:r.network,signerAccount:r.signerAccount})}else if(Re(e)){if(!r)throw new Error("context (network, signerAccount) is required for AddPermissionlessValidator");return Mt({tx:e,symbol:t,network:r.network,signerAccount:r.signerAccount})}else {if(Mr(e))return Xt(e,t);if(Ct(e))return Bt(e,t);if(wt(e))return _t(e,t);if(Cr(e))return Ut(e,t);if(wr(e))return Gt(e,t);if(Rr(e))return Wt(e,t);if(Vr(e))return qt(e,t);if(Nr(e))return jt(e,t);if(Rt(e)){if(!r)throw new Error("context (network, signerAccount) is required for AddAutoRenewedValidator");return $t({tx:e,symbol:t,network:r.network,signerAccount:r.signerAccount})}else if(Vt(e))return Kt(e,t)}},"_getDetailSectionsByType"),Ye=n((e,t,r)=>{let a=ka(e,t,r);if(a===void 0)return;let s=r?.spendDetails?Lr(e,r.spendDetails,t,r.avaxAssetId):void 0,o=_r(e,t),c=[...Ur(e,t,r?.avaxAssetId),...o?[o]:[]],l=[...a,...s?[s]:[]];return c.length===0?l:[...l,{items:[vt("Transfer details",c)]}]},"getTransactionDetailSections");var ba="The inputs of this transaction are greater than the outputs. Approving it will burn the difference, which cannot be recovered.",Hr=n(e=>e.isValidAvaxBurnedAmount?void 0:{type:vmModuleTypes.AlertType.WARNING,details:{title:"Caution!",description:ba}},"getExcessiveBurnAlert");var he=n(e=>e.flatMap(t=>{if(!t)return [];try{return [t.startsWith("0x")?avalanchejs.utils.hexToBuffer(t):avalanchejs.utils.parse(t)[2]]}catch{return []}}),"getSignerAddresses");var Gr="This transaction transfers funds outside of your account.",Ra=n(e=>he([e?Nt.testnet:Nt.mainnet]).map(avalanchejs.utils.bufferToHex),"_getCoreEscrowAddresses"),Va=n((e,t,r)=>t===vmModuleTypes.TxType.AddPermissionlessDelegator&&Ra(r).includes(e),"_isAllowed"),qr=n((e,t,r)=>e.type===vmModuleTypes.TxType.Base||t.unknownAddresses.filter(s=>!Va(s,e.type,r)).length===0?void 0:{type:vmModuleTypes.AlertType.WARNING,details:{title:"Caution!",description:Gr,body:[Gr]}},"getSuspiciousOutputAlert");var Qe=n((e,t,r)=>{let a=[Hr(e),qr(e,t,r)].filter(c=>c!==void 0),[s]=a;if(!s)return;let o=a.flatMap(c=>c.details.body??[c.details.description]);return {...s,details:{...s.details,description:o.join(" "),body:o}}},"getTransactionAlert");var Jt=n(e=>(e?.addrs??[]).map(t=>avalanchejs.utils.bufferToHex(t.toBytes())),"_getAddresses"),Na=n(e=>avalanchejs.utils.isTransferOut(e)||avalanchejs.utils.isNftTransferOut(e)?Jt(e.outputOwners):avalanchejs.utils.isStakeableLockOut(e)||avalanchejs.utils.isNftMintOut(e)||avalanchejs.utils.isSecpMintOut(e)?Jt(e.getOutputOwners()):[],"_getOwners"),Ze=n((e,t,r)=>{e[t]=(e[t]??0n)+r;},"_add"),et=n(({tx:e,inputUtxos:t,signerAddresses:r})=>{let a=new Set(r.map(avalanchejs.utils.bufferToHex)),s={};for(let i of t)if(Jt(i.getOutputOwners()).some(m=>a.has(m))){let m=i.output;Ze(s,i.getAssetId(),m.amount());}if(avalanchejs.evmSerial.isExportTx(e))for(let i of e.ins)a.has(avalanchejs.utils.bufferToHex(i.address.toBytes()))&&Ze(s,i.assetId.toString(),i.amount.value());if(avalanchejs.evmSerial.isImportTx(e))for(let i of e.Outs)a.has(avalanchejs.utils.bufferToHex(i.address.toBytes()))&&Ze(s,i.assetId.toString(),0n-i.amount.value());let{baseTx:o}=e,c=Array.isArray(o?.outputs)?o.outputs:[],l=new Set;for(let i of c){let d=Na(i.output);d.forEach(m=>{a.size>0&&!a.has(m)&&l.add(m);}),d.some(m=>a.has(m))&&Ze(s,i.getAssetId(),0n-i.amount());}return {spentAmounts:Object.fromEntries(Object.entries(s).filter(([,i])=>i>0n)),unknownAddresses:[...l]}},"getTransactionSpendDetails");var Kr="Error while parsing exported outputs",Jr="Only AVAX can be exported",zr=n((e,t)=>e.some(r=>r.getAssetId()!==t),"_hasNonAvaxOutput"),rt=n(({tx:e,txDetails:t,avaxAssetId:r})=>{if(t.type===vmModuleTypes.TxType.Export){if(t.destination===vmModuleTypes.NetworkVMType.EVM)return !avalanchejs.avmSerial.isExportTx(e)&&!avalanchejs.pvmSerial.isExportTx(e)?rpcErrors.rpcErrors.invalidParams(Kr):zr(e.outs,r)?rpcErrors.rpcErrors.invalidParams(Jr):void 0;if(t.chain===vmModuleTypes.NetworkVMType.EVM)return avalanchejs.evmSerial.isExportTx(e)?zr(e.exportedOutputs,r)?rpcErrors.rpcErrors.invalidParams(Jr):void 0:rpcErrors.rpcErrors.invalidParams(Kr)}},"getUnsupportedExportError");var Zr=n(e=>e.chainInfo.chainName===glacierSdk.PrimaryNetworkChainName.P_CHAIN,"isPChainTransactions"),en=n(e=>e.chainInfo.chainName===glacierSdk.PrimaryNetworkChainName.X_CHAIN,"isXChainTransactions");function ye(e,t,r="tx"){return `${e}/${r}/${t}`}n(ye,"getExplorerAddressByNetwork");function ae({amount:e,decimals:t}){return e===void 0?new j__default.default(0):new j__default.default(e/10**t)}n(ae,"getTokenValue");var La=zod.z.object({currentAddress:zod.z.string({required_error:"No active account found"}),currentEvmAddress:zod.z.string().optional(),xpubXP:zod.z.string({invalid_type_error:"xpubXP must be a string"}).optional()}),Oa=zod.z.object({account:zod.z.object({xpAddress:zod.z.string({required_error:"XP address is required",invalid_type_error:"XP address must be a string"}),evmAddress:zod.z.string().optional(),xpubXP:zod.z.string({invalid_type_error:"xpubXP must be a string"}).optional(),externalXPAddresses:zod.z.array(zod.z.object({index:zod.z.number(),address:zod.z.string()}))})}),_a=n(e=>({xpAddress:e.currentAddress,evmAddress:e.currentEvmAddress,xpubXP:e.xpubXP,externalXPAddresses:[]}),"getAccountFromLegacyContext"),Fa=n(e=>e.account,"getAccountFromNewContext"),Ha=n(e=>e!=null&&typeof e=="object"&&"account"in e&&e.account!=null&&typeof e.account=="object","hasAccountField"),nt=n(e=>{if(!e)return {success:!1,error:"Missing Avalanche transaction context"};if(Ha(e)){let{success:s,data:o,error:c}=Oa.safeParse(e);return s?{success:!0,data:Fa(o)}:{success:!1,error:c.errors[0]?.message||"Invalid or missing Avalanche transaction context"}}let{success:t,data:r,error:a}=La.safeParse(e);return t?{success:!0,data:_a(r)}:{success:!1,error:a.errors[0]?.message||"Invalid or missing Avalanche transaction context"}},"getAccountFromContext");var rn=n(async({request:e,network:t,approvalController:r,glacierApiUrl:a,appInfo:s,getAuthHeaders:o})=>{let c=vr(e.params);if(!c.success)return {error:rpcErrors.rpcErrors.invalidParams(ne("Transaction params are invalid",c.error))};try{let{transactionHex:l,chainAlias:i,externalIndices:d,internalIndices:m,utxos:u}=c.data,p=coreWalletsSdk.Avalanche.getVmByChainAlias(i),h=avalanchejs.utils.hexToBuffer(l),A=t.isTestnet??!1,v=await I(t),C=nt(e.context);if(!C.success)return {error:rpcErrors.rpcErrors.invalidParams(C.error)};let{xpAddress:U,evmAddress:K,xpubXP:R,externalXPAddresses:ie}=C.data,ce=await Ke({utxoHexes:u,vm:p,getIndexedUtxos:async()=>coreWalletsSdk.Avalanche.getUtxosByTxFromGlacier({transactionHex:l,chainAlias:i,network:A?glacierSdk.Network.FUJI:glacierSdk.Network.MAINNET,url:a,headers:{...te(s),...await o?.()}})}),E,Oe=he([U,K,...ie.map(({address:O})=>O)]);if(i==="C")E=await coreWalletsSdk.Avalanche.createAvalancheEvmUnsignedTx({txBytes:h,vm:p,utxos:ce,fromAddress:U});else {let O=avalanchejs.utils.unpackWithManager(p,h);if(R!==void 0&&typeof R!="string")return {error:rpcErrors.rpcErrors.invalidParams("xpubXP must be a string")};let dt=await kt({indices:d??[],chainAlias:i,isChange:!1,network:t,xpubXP:R,externalXPAddresses:ie}),Un=await kt({indices:m??[],chainAlias:i,isChange:!0,network:t,xpubXP:R,externalXPAddresses:ie}),lr=[...new Set([U,...dt,...Un])].map(Ln=>avalanchejs.utils.parse(Ln)[2]);Oe=[...Oe,...lr],E=await coreWalletsSdk.Avalanche.createAvalancheUnsignedTx({tx:O,utxos:ce,provider:v,fromAddressBytes:lr});}let le=await coreWalletsSdk.Avalanche.parseAvalancheTx(E,v,U),L=ze(le),J=br(le);if(le.type==="unknown"||L===void 0)return {error:rpcErrors.rpcErrors.internal("Unable to parse transaction data. Unsupported tx type")};let Se=v.getContext().avaxAssetID,_e=rt({tx:E.getTx(),txDetails:L,avaxAssetId:Se});if(_e)return {error:_e};let Ie=et({tx:E.getTx(),inputUtxos:E.getInputUtxos(),signerAddresses:Oe}),Fe={type:vmModuleTypes.RpcMethod.AVALANCHE_SEND_TRANSACTION,unsignedTxJson:JSON.stringify(E.toJSON()),data:le,vm:p,externalIndices:d,internalIndices:m},He=Ye(L,t.networkToken.symbol,{network:t,signerAccount:U,recipients:Je(E.getTx(),L,A),avaxAssetId:Se,spendDetails:Ie});if(He===void 0)return {error:rpcErrors.rpcErrors.internal("Unable to parse transaction display data. Unsupported tx type")};let Xe={title:J,network:{chainId:t.chainId,name:t.chainName,logoUri:t.logoUri},details:He,networkFeeSelector:!1,alert:Qe(L,Ie,A)},ke=await r.requestApproval({request:e,displayData:Xe,signingData:Fe});if("error"in ke)return {error:ke.error};let X;try{X=await qa(v,ke,p);}catch(O){return {error:rpcErrors.rpcErrors.internal(ne("Unable to broadcast transaction",O))}}return ja({explorerUrl:t.explorerUrl??"",provider:v,txHash:X,vm:p,onTransactionPending:r.onTransactionPending,onTransactionConfirmed:r.onTransactionConfirmed,onTransactionReverted:r.onTransactionReverted,onTransactionStatusUnknown:r.onTransactionStatusUnknown,request:e}),{result:X}}catch(l){return console.error(l),{error:rpcErrors.rpcErrors.internal(ne("Unable to create transaction",l))}}},"avalancheSendTransaction"),qa=n(async(e,t,r)=>{if("txHash"in t)return t.txHash;let{txID:a}=await e.issueTxHex(t.signedData,r);return a},"getTxHash"),ja=n(async({explorerUrl:e,provider:t,txHash:r,vm:a,onTransactionPending:s,onTransactionConfirmed:o,onTransactionReverted:c,onTransactionStatusUnknown:l,request:i})=>{let m=ye(e,r);try{s({txHash:r,request:i,explorerLink:m}),a===avalanchejs.PVM?(await Y({operation:()=>t.getApiP().getTxStatus({txID:r}),isSuccess:p=>["Committed","Dropped"].includes(p.status),maxRetries:7})).status==="Committed"?o({txHash:r,explorerLink:m,request:i}):c({txHash:r,request:i}):a===avalanchejs.AVM?(await Y({operation:()=>t.getApiX().getTxStatus({txID:r}),isSuccess:p=>["Accepted","Rejected"].includes(p.status),maxRetries:7})).status==="Accepted"?o({txHash:r,explorerLink:m,request:i}):c({txHash:r,request:i}):(await Y({operation:()=>t.getApiC().getAtomicTx({txID:r}),isSuccess:u=>u.blockHeight!==void 0,maxRetries:7}),o({txHash:r,explorerLink:m,request:i}));}catch(u){console.error(u),u instanceof Error&&u.message.startsWith("Max retry exceeded.")?l?.({txHash:r,explorerLink:m,request:i}):c({txHash:r,request:i});}},"waitForTransactionReceipt");var $a=zod.z.union([zod.z.tuple([zod.z.string()]).describe("message to sign"),zod.z.tuple([zod.z.string().describe("message to sign"),zod.z.number().nonnegative().describe("account index")])]),nn=n(e=>$a.safeParse(e),"parseRequestParams");var sn=n(async({request:e,network:t,approvalController:r})=>{let a=nn(e.params);if(!a.success)return console.error("invalid params",a.error),{error:rpcErrors.rpcErrors.invalidParams(ne("Params are invalid",a.error))};let[s,o]=a.data,c=Buffer.from(s,"utf-8").toString("hex"),l={type:vmModuleTypes.RpcMethod.AVALANCHE_SIGN_MESSAGE,data:c,accountIndex:o},i={title:"Sign Message",dAppInfo:{name:e.dappInfo.name,action:`${e.dappInfo.name} is requesting to sign the following message`,logoUri:e.dappInfo.icon},network:{chainId:t.chainId,name:t.chainName,logoUri:t.logoUri},details:[{title:"Message",items:[s]}]},d=await r.requestApproval({request:e,displayData:i,signingData:l});return "error"in d?{error:d.error}:"signedData"in d?{result:d.signedData}:{error:rpcErrors.rpcErrors.internal("No signed data returned")}},"avalancheSignMessage");var Ja=zod.z.object({from:zod.z.string().optional().describe("Avalanche receiving address"),transactionHex:zod.z.string(),chainAlias:zod.z.enum(["X","P","C"]),utxos:zod.z.string().array().optional()}),on=n(e=>Ja.safeParse(e),"parseRequestParams");var pn=n(async({vm:e,txBytes:t,utxos:r,currentAddress:a,currentEvmAddress:s,provider:o})=>{let c,l,i=avalanchejs.utils.unpackWithManager(e,t);if(avalanchejs.evmSerial.isExportTx(i)){let d=i.ins[0]?.address.toHex();if(!s)throw rpcErrors.rpcErrors.invalidRequest("Missing EVM address");if(d?.toLowerCase()!==s.toLowerCase())throw new Error("This account has nothing to sign");return coreWalletsSdk.Avalanche.createAvalancheEvmUnsignedTx({txBytes:t,vm:e,utxos:r,fromAddress:a})}try{let m=avalanchejs.utils.getManagerForVM(e).unpack(t,avalanchejs.avaxSerial.SignedTx);avalanchejs.evmSerial.isImportTx(i)?l=await coreWalletsSdk.Avalanche.createAvalancheEvmUnsignedTx({txBytes:t,vm:e,utxos:r,fromAddress:a}):l=await coreWalletsSdk.Avalanche.createAvalancheUnsignedTx({tx:i,provider:o,credentials:m.getCredentials(),utxos:r}),c=i.getSigIndices().map((u,p)=>new avalanchejs.Credential(coreWalletsSdk.Avalanche.populateCredential(u,{unsignedTx:l,credentialIndex:p})));}catch{c=i.getSigIndices().map(m=>new avalanchejs.Credential(coreWalletsSdk.Avalanche.populateCredential(m)));}return coreWalletsSdk.Avalanche.createAvalancheUnsignedTx({tx:i,provider:o,credentials:c,utxos:r})},"getUnsignedOrPartiallySignedTx");var un=n(async({request:e,network:t,approvalController:r,glacierApiUrl:a,appInfo:s,getAuthHeaders:o})=>{let c=on(e.params);if(!c.success)return console.error("invalid params",c.error),{error:rpcErrors.rpcErrors.invalidParams("Params are invalid")};let{transactionHex:l,chainAlias:i,from:d,utxos:m}=c.data,u=coreWalletsSdk.Avalanche.getVmByChainAlias(i),p=t.isTestnet??!1,h=await I(t),A=nt(e.context);if(!A.success)return {error:rpcErrors.rpcErrors.invalidParams(A.error)};let{xpAddress:v,evmAddress:C,externalXPAddresses:U}=A.data,K=await Ke({utxoHexes:m,vm:u,getIndexedUtxos:async()=>coreWalletsSdk.Avalanche.getUtxosByTxFromGlacier({transactionHex:l,chainAlias:i,network:p?glacierSdk.Network.FUJI:glacierSdk.Network.MAINNET,url:a,headers:{...te(s),...await o?.()}})}),R=await pn({txBytes:avalanchejs.utils.hexToBuffer(l),vm:u,utxos:K,currentAddress:v,currentEvmAddress:C,provider:h}),ie=avalanchejs.utils.addressesFromBytes([avalanchejs.utils.parse(d??v)[2]])[0];if(!ie)return {error:rpcErrors.rpcErrors.invalidRequest("Missing signer address")};let ce=R.getSigIndicesForAddress(ie);if(!ce)return {error:rpcErrors.rpcErrors.invalidRequest("This account has nothing to sign")};let E=R.getSigIndices();if(!ce.some(([O,dt])=>E[O]?.includes(dt)))return {error:rpcErrors.rpcErrors.invalidRequest("This account has nothing to sign")};let le=d??v,L=await coreWalletsSdk.Avalanche.parseAvalancheTx(R,h,d??v),J=ze(L);if(L.type==="unknown"||J===void 0)return {error:rpcErrors.rpcErrors.invalidParams("Unable to parse transaction data. Unsupported tx type")};let Se=h.getContext().avaxAssetID,_e=he([v,C,...U.map(({address:O})=>O)]),Ie=rt({tx:R.getTx(),txDetails:J,avaxAssetId:Se});if(Ie)return {error:Ie};let Fe=et({tx:R.getTx(),inputUtxos:R.getInputUtxos(),signerAddresses:_e}),He={type:vmModuleTypes.RpcMethod.AVALANCHE_SIGN_TRANSACTION,data:L,vm:u,unsignedTxJson:JSON.stringify(R.toJSON()),ownSignatureIndices:ce},Xe=Ye(J,t.networkToken.symbol,{network:t,signerAccount:le,recipients:Je(R.getTx(),J,p),avaxAssetId:Se,spendDetails:Fe});if(Xe===void 0)return {error:rpcErrors.rpcErrors.internal("Unable to parse transaction display data. Unsupported tx type")};let ke={title:"Do you approve this transaction?",dAppInfo:{name:e.dappInfo.name,action:`${e.dappInfo.name} requests you to sign the following transaction`,logoUri:e.dappInfo.icon},network:{chainId:t.chainId,name:t.chainName,logoUri:t.logoUri},details:Xe,alert:Qe(J,Fe,p)},X=await r.requestApproval({request:e,displayData:ke,signingData:He});return "error"in X?{error:X.error}:"signedData"in X?{result:X.signedData}:{error:rpcErrors.rpcErrors.invalidRequest("No signed data returned")}},"avalancheSignTransaction");var oe=n(({accountIndex:e,derivationPathType:t,addressIndex:r=0})=>{if(e<0)throw rpcErrors.rpcErrors.invalidParams("Account index must be a non-negative integer");if(r!==void 0&&r<0)throw rpcErrors.rpcErrors.invalidParams("Address index must be a non-negative integer");switch(t){case"bip44":return {[vmModuleTypes.NetworkVMType.AVM]:`m/44'/9000'/${e}'/0/${r}`,[vmModuleTypes.NetworkVMType.CoreEth]:`m/44'/60'/0'/0/${e}`};case"ledger_live":return {[vmModuleTypes.NetworkVMType.AVM]:`m/44'/9000'/${e}'/0/${r}`,[vmModuleTypes.NetworkVMType.CoreEth]:`m/44'/60'/${e}'/0/0`};default:throw rpcErrors.rpcErrors.invalidParams(`Unsupported derivation path type: ${t}`)}},"buildDerivationPath");var er=n(e=>"derivationPathType"in e&&"accountIndex"in e&&typeof e.accountIndex=="number"&&typeof e.derivationPathType=="string","hasDerivationDetails");var fn=n(async e=>{let{approvalController:t,network:r,secretId:a}=e,s=er(e)?oe(e).AVM:void 0,o=er(e)?oe(e).CoreEth:void 0,c=await I(r),l=await t.requestPublicKey({curve:"secp256k1",secretId:a,derivationPath:s}).catch(()=>null),i=await t.requestPublicKey({curve:"secp256k1",secretId:a,derivationPath:o}).catch(()=>null),d=i?{[vmModuleTypes.NetworkVMType.CoreEth]:c.getAddress(Buffer.from(i,"hex"),"C")}:{},m=l?{[vmModuleTypes.NetworkVMType.AVM]:c.getAddress(Buffer.from(l,"hex"),"X"),[vmModuleTypes.NetworkVMType.PVM]:c.getAddress(Buffer.from(l,"hex"),"P")}:{};return {...d,...m}},"deriveAddress");var gn=n(async e=>{let{approvalController:t,network:r,secretId:a,accountIndices:s,derivationPathType:o,addressIndex:c}=e;if(s.length===0)return [];await cryptoSdk.init();let l=await Promise.all(s.map(async d=>{let m=oe({accountIndex:d,derivationPathType:o,addressIndex:c}),[u,p]=await Promise.all([t.requestPublicKey({curve:"secp256k1",secretId:a,derivationPath:m.AVM}),t.requestPublicKey({curve:"secp256k1",secretId:a,derivationPath:m.CoreEth})]);return {xp:Uint8Array.from(Buffer.from(u,"hex")),evm:Uint8Array.from(Buffer.from(p,"hex"))}}));return (await cryptoSdk.deriveAddressesForAvalanche(l.map(d=>d.xp),l.map(d=>d.evm),!!r.isTestnet)).map(d=>({[vmModuleTypes.NetworkVMType.AVM]:d.x,[vmModuleTypes.NetworkVMType.PVM]:d.p,[vmModuleTypes.NetworkVMType.CoreEth]:d.coreEth}))},"deriveAddresses");var yn=n(async({accountIndex:e,xpubXP:t,walletType:r,network:a})=>{if(!a)throw rpcErrors.rpcErrors.invalidParams("network is required to get address");if(t===void 0)throw rpcErrors.rpcErrors.invalidParams("xpubXP is required to get address");let s=await I(a),o;switch(r){case vmModuleTypes.WalletType.Mnemonic:case vmModuleTypes.WalletType.Ledger:case vmModuleTypes.WalletType.Keystone:{o=coreWalletsSdk.Avalanche.getAddressPublicKeyFromXpub(t,e);break}case vmModuleTypes.WalletType.LedgerLive:case vmModuleTypes.WalletType.Seedless:{o=Buffer.from(t,"hex");break}default:throw rpcErrors.rpcErrors.invalidParams(`Unsupported wallet type: ${r}`)}return {[vmModuleTypes.NetworkVMType.AVM]:s.getAddress(o,"X"),[vmModuleTypes.NetworkVMType.PVM]:s.getAddress(o,"P")}},"getAddress");var ar=class ar extends Error{constructor(){super(...arguments);z(this,"message","Glacier is unhealthy. Try again later.");}};n(ar,"GlacierUnhealthyError");var st=ar,sr=class sr{constructor({glacierApiUrl:t,headers:r,getAuthHeaders:a}){z(this,"glacierSdk");z(this,"isGlacierHealthy",!0);z(this,"isHealthy",n(()=>this.isGlacierHealthy,"isHealthy"));this.glacierSdk=new glacierSdk.Glacier({BASE:t,HEADERS:a?async()=>({...r,...await a()}):r},Ce);}setGlacierToUnhealthy(){this.isGlacierHealthy=!1,setTimeout(()=>{this.isGlacierHealthy=!0;},5*60*1e3);}async listLatestPrimaryNetworkTransactions(t){try{return this.glacierSdk.primaryNetworkTransactions.listLatestPrimaryNetworkTransactions(t)}catch(r){throw r instanceof st&&this.setGlacierToUnhealthy(),r}}async getChainBalance(t){try{return this.glacierSdk.primaryNetworkBalances.getBalancesByAddresses(t)}catch(r){throw r instanceof st&&this.setGlacierToUnhealthy(),r}}};n(sr,"AvalancheGlacierService");var ot=sr;var or=n(e=>Object.keys(e).includes("unlockedUnstaked"),"isPchainBalance"),An=n(e=>Object.keys(e).includes("locked"),"isXchainBalance"),xn=n((e,t)=>e?.length?e.reduce((r,a)=>a.assetId!==t?r:r+BigInt(a.amount),0n):0n,"sumAvaxFromAssets");function it(e,t){if(or(e)){let a=[...e.unlockedUnstaked||[],...e.unlockedStaked||[],...e.pendingStaked||[],...e.lockedStaked||[],...e.lockedStakeable||[],...e.lockedPlatform||[],...e.atomicMemoryLocked||[],...e.atomicMemoryUnlocked||[]],s=xn(a,t),o=e.restakedRewards?BigInt(e.restakedRewards):0n;return s+o}let r=[...e.unlocked||[],...e.locked||[],...e.atomicMemoryUnlocked||[],...e.atomicMemoryLocked||[]];return xn(r,t)}n(it,"calculateAvaxTotalBalance");var vn=n(({balance:e,networkToken:t,priceInCurrency:r,marketCap:a,vol24:s,change24:o,coingeckoId:c,avaxAssetId:l})=>{let i={},d={unlockedUnstaked:e.unlockedUnstaked,unlockedStaked:e.unlockedStaked,pendingStaked:e.pendingStaked,lockedStaked:e.lockedStaked,lockedStakeable:e.lockedStakeable,lockedPlatform:e.lockedPlatform,atomicMemoryLocked:e.atomicMemoryLocked,atomicMemoryUnlocked:e.atomicMemoryUnlocked};for(let A in d){let v=d[A];if(!v||!v.length){i[A]=0n;continue}v.forEach(C=>{if(C.assetId!==l)return;let K=(i[A]??0n)+BigInt(C.amount);i[A]=K;});}let m=new coreUtilsSdk.TokenUnit(i.unlockedUnstaked?i.unlockedUnstaked:0n,t.decimals,t.symbol),u=r?m.mul(r).toDisplay({fixedDp:2,asNumber:!0}):void 0,p=new coreUtilsSdk.TokenUnit(it(e,l),t.decimals,t.symbol),h=r?p.mul(r).toDisplay({fixedDp:2,asNumber:!0}):void 0;return {...t,type:vmModuleTypes.TokenType.NATIVE,priceInCurrency:r,balance:p.toSubUnit(),balanceInCurrency:h,balanceDisplayValue:p.toDisplay(),balanceCurrencyDisplayValue:h?.toFixed(2),available:m.toSubUnit(),availableInCurrency:u,availableDisplayValue:m.toDisplay(),availableCurrencyDisplayValue:u?.toFixed(2),utxos:e,balancePerType:{lockedStaked:i.lockedStaked,lockedStakeable:i.lockedStakeable,lockedPlatform:i.lockedPlatform,atomicMemoryLocked:i.atomicMemoryLocked,atomicMemoryUnlocked:i.atomicMemoryUnlocked,unlockedUnstaked:i.unlockedUnstaked,unlockedStaked:i.unlockedStaked,pendingStaked:i.pendingStaked,restakedRewards:e.restakedRewards?BigInt(e.restakedRewards):void 0},marketCap:a,vol24:s,change24:o,coingeckoId:c}},"convertPChainBalance");var Sn=n(({balance:e,networkToken:t,priceInCurrency:r,marketCap:a,vol24:s,change24:o,coingeckoId:c,avaxAssetId:l})=>{let i={},d={unlocked:e.unlocked,locked:e.locked,atomicMemoryUnlocked:e.atomicMemoryUnlocked,atomicMemoryLocked:e.atomicMemoryLocked};for(let A in d){let v=d[A];if(!v||!v.length){i[A]=0n;continue}v.forEach(C=>{if(C.assetId!==l)return;let K=(i[A]??0n)+BigInt(C.amount);i[A]=K;});}let m=new coreUtilsSdk.TokenUnit(i.unlocked?i.unlocked:0n,t.decimals,t.symbol),u=r?m.mul(r).toDisplay({fixedDp:2,asNumber:!0}):void 0,p=new coreUtilsSdk.TokenUnit(it(e,l),t.decimals,t.symbol),h=r!==void 0?p.mul(r):void 0;return {...t,coingeckoId:c,type:vmModuleTypes.TokenType.NATIVE,priceInCurrency:r,balance:p.toSubUnit(),balanceInCurrency:h?.toDisplay({fixedDp:2,asNumber:!0}),balanceDisplayValue:p.toDisplay(),balanceCurrencyDisplayValue:h?.toDisplay({fixedDp:2}),available:m.toSubUnit(),availableInCurrency:u,availableDisplayValue:m.toDisplay(),availableCurrencyDisplayValue:u?.toFixed(2),utxos:e,balancePerType:{unlocked:i.unlocked,locked:i.locked,atomicMemoryUnlocked:i.atomicMemoryUnlocked,atomicMemoryLocked:i.atomicMemoryLocked},marketCap:a,vol24:s,change24:o}},"convertXChainBalance");var Pn=n(async({addresses:e,currency:t,network:r,glacierService:a,tokenService:s})=>{let o=await I(r);if(!a.isHealthy())return Promise.reject("Glacier is unhealthy. Try again later.");let l=t.toLowerCase(),i=e[0]??"",d=r.networkToken,m=r.pricingProviders?.coingecko.nativeTokenId,u=r.vmName===vmModuleTypes.NetworkVMType.PVM?glacierSdk.BlockchainId.P_CHAIN:glacierSdk.BlockchainId.X_CHAIN,p=r.isDevnet?null:r.isTestnet?glacierSdk.Network.FUJI:glacierSdk.Network.MAINNET;if(!p)return Promise.reject("Glacier does not supported local devnets");let h=await a.getChainBalance({blockchainId:u,network:p,addresses:e.join(",")}).then(C=>C.balances),A=await s.getWatchlistDataForToken({tokenDetails:{symbol:r.networkToken.symbol,isNative:!0,caip2Id:r.caipId??""},currency:l}),v;return or(h)?(v=vn({balance:h,networkToken:d,priceInCurrency:A.priceInCurrency??void 0,marketCap:A.marketCap??void 0,vol24:A.vol24??void 0,change24:A.change24??void 0,coingeckoId:m??"",avaxAssetId:o.getContext().avaxAssetID}),{[i]:{[d.symbol]:v}}):An(h)?(v=Sn({balance:h,networkToken:d,priceInCurrency:A.priceInCurrency??void 0,marketCap:A.marketCap??void 0,vol24:A.vol24??void 0,change24:A.change24??void 0,coingeckoId:m??"",avaxAssetId:o.getContext().avaxAssetID}),{[i]:{[d.symbol]:v}}):Promise.reject("Incorrect type balance was returned from glacier")},"getBalances");async function bn(e){let{vmName:t}=e,r=await I(e);if(t===vmModuleTypes.NetworkVMType.AVM)return {baseFee:BigInt(1e6),low:{maxFeePerGas:BigInt(1e6)},medium:{maxFeePerGas:BigInt(1e6)},high:{maxFeePerGas:BigInt(1e6)},isFixedFee:!0};let{price:a}=await r.getApiP().getFeeState(),s=100/Number(a)/100,o=Math.min(1,Math.max(s,.15)),c=Math.min(1,Math.max(s*2,.3)),l=1+o,i=1+c;return {baseFee:a,low:{maxFeePerGas:a},medium:{maxFeePerGas:a*BigInt(Math.round(100*l))/100n},high:{maxFeePerGas:a*BigInt(Math.round(100*i))/100n},isFixedFee:!1}}n(bn,"getNetworkFee");function wn({tx:e,address:t,networkToken:r,chainId:a,explorerUrl:s,isTestnet:o}){let c=new Set(e.consumedUtxos.flatMap(p=>p.addresses)||[]),l=new Set(e.emittedUtxos.flatMap(p=>p.addresses)||[]),i=cs({tx:e,isTestnet:o,networkToken:r,froms:c}),d=ls({tx:e,isTestnet:o,networkToken:r}),m=t.toLowerCase().startsWith("p-")?t.slice(2):t,u=c.has(m);return {hash:e.txHash,isContractCall:!1,isIncoming:!u,isOutgoing:u,from:[...c.values()].join(","),to:[...l.values()].join(","),isSender:u,timestamp:e.blockTimestamp*1e3,tokens:[{decimal:r.decimals.toString(),name:r.name,symbol:r.symbol,type:vmModuleTypes.TokenType.NATIVE,amount:i.toString()}],gasUsed:d.toString(),explorerLink:ye(s??"",e.txHash,"tx"),txType:e.txType,chainId:a.toString()}}n(wn,"convertPChainTransaction");function cs({tx:e,isTestnet:t,networkToken:r,froms:a}){let s=["ImportTx","ExportTx"].includes(e.txType),o=e.txType==="BaseTx",c=e.emittedUtxos.filter(p=>p.asset.assetId===Me(!!t)&&!p.addresses.some(h=>a.has(h))).reduce((p,h)=>p.add(h.asset.amount),new j__default.default(0)),l=e.value.find(p=>p.assetId===Me(!!t))?.amount,i=c.gt(new j__default.default(0))?c:l?new j__default.default(l):new j__default.default(0)??new j__default.default(0),d=t?coreWalletsSdk.Avalanche.FujiContext.pBlockchainID:coreWalletsSdk.Avalanche.MainnetContext.pBlockchainID,m=e.emittedUtxos.filter(p=>p.asset.assetId===Me(!!t)&&(e.txType==="ImportTx"&&p.consumedOnChainId===d||e.txType==="ExportTx"&&p.consumedOnChainId!==d)).reduce((p,h)=>p.add(h.amount),new j__default.default(0)),u=o?i:s?m:e.amountStaked.length===0?Cn(e.value,!!t):Cn(e.amountStaked,!!t);return ae({amount:u?.toNumber(),decimals:r.decimals})}n(cs,"getAmount");function ls({tx:e,isTestnet:t,networkToken:r}){let a=e.amountBurned?.filter(s=>s.assetId===Me(!!t)).reduce((s,o)=>s.add(o.amount),new j__default.default(0));return ae({amount:a?.toNumber(),decimals:r.decimals})}n(ls,"getBurnedAmount");function Cn(e,t){return e.filter(r=>r.assetId===Me(t)).reduce((r,a)=>r.add(a.amount),new j__default.default(0))}n(Cn,"aggregateValue");function Me(e){return e?coreWalletsSdk.Avalanche.FujiContext.avaxAssetID:coreWalletsSdk.Avalanche.MainnetContext.avaxAssetID}n(Me,"getAvaxAssetId");function Rn({tx:e,address:t,networkToken:r,chainId:a,explorerUrl:s,isTestnet:o}){let c=new Set(e.consumedUtxos.flatMap(A=>A.addresses)||[]),l=new Set(e.emittedUtxos.flatMap(A=>A.addresses)||[]),i=t.toLowerCase().startsWith("x-")?t.slice(2):t,d=["ImportTx","ExportTx"].includes(e.txType),{amount:m,isSender:u}=ps({tx:e,isTestnet:o,networkToken:r,chainAddress:i,isImportExport:d}),p=ms({isTestnet:o,tx:e,networkToken:r}),h=d?m.toString():u?m.minus(p).toString():m.toString();return {hash:e.txHash,isContractCall:!1,isIncoming:!u,isOutgoing:u,from:[...c.values()].join(","),to:[...l.values()].join(","),isSender:u,timestamp:e.timestamp*1e3,tokens:[{decimal:r.decimals.toString(),name:r.name,symbol:r.symbol,type:vmModuleTypes.TokenType.NATIVE,amount:h}],gasUsed:p.toString(),explorerLink:ye(s??"",e.txHash,"tx"),txType:e.txType,chainId:a.toString()}}n(Rn,"convertXChainTransaction");function ps({tx:e,isTestnet:t,networkToken:r,chainAddress:a,isImportExport:s}){if(s){let d=t?coreWalletsSdk.Avalanche.FujiContext.xBlockchainID:coreWalletsSdk.Avalanche.MainnetContext.xBlockchainID,m=e.emittedUtxos.filter(u=>u.asset.assetId===Ue(!!t)&&(e.txType==="ImportTx"&&u.consumedOnChainId===d||e.txType==="ExportTx"&&u.consumedOnChainId!==d)).reduce((u,p)=>u.add(p.asset.amount),new j__default.default(0));return {amount:ae({amount:m.toNumber(),decimals:r.decimals}),isSender:!0}}let o=e.consumedUtxos.filter(d=>d.asset.assetId===Ue(!!t)&&d.addresses.includes(a)).reduce((d,m)=>d.add(m.asset.amount),new j__default.default(0)),c=e.emittedUtxos.filter(d=>d.asset.assetId===Ue(!!t)&&d.addresses.includes(a)).reduce((d,m)=>d.add(m.asset.amount),new j__default.default(0)),l=o.gte(c),i=l?o.minus(c):c.minus(o);return {amount:ae({amount:i.toNumber(),decimals:r.decimals}),isSender:l}}n(ps,"getAmount");function ms({isTestnet:e,tx:t,networkToken:r}){let a=t.amountUnlocked.filter(c=>c.assetId===Ue(!!e)).reduce((c,l)=>c.add(l.amount),new j__default.default(0)),s=t.amountCreated.filter(c=>c.assetId===Ue(!!e)).reduce((c,l)=>c.add(l.amount),new j__default.default(0)),o=a.minus(s);return ae({amount:o.toNumber(),decimals:r.decimals})}n(ms,"getBurnedAmount");function Ue(e){return e?coreWalletsSdk.Avalanche.FujiContext.avaxAssetID:coreWalletsSdk.Avalanche.MainnetContext.avaxAssetID}n(Ue,"getAvaxAssetId");var En=n(async({address:e,nextPageToken:t,offset:r,network:a,glacierService:s})=>{let{isTestnet:o,networkToken:c,explorerUrl:l,chainId:i}=a;if(!s.isHealthy())return {transactions:[],nextPageToken:""};let m=a.isTestnet?glacierSdk.Network.FUJI:glacierSdk.Network.MAINNET,u=await s.listLatestPrimaryNetworkTransactions({addresses:e,blockchainId:fs(e),network:m,pageSize:r,pageToken:t,sortOrder:glacierSdk.SortOrder.DESC}),p=[];return Zr(u)&&(p=u.transactions.map(h=>wn({tx:h,isTestnet:o,address:e,networkToken:c,explorerUrl:l,chainId:i}))),en(u)&&(p=u.transactions.map(h=>Rn({tx:h,isTestnet:o,address:e,networkToken:c,explorerUrl:l,chainId:i}))),{transactions:p,nextPageToken:u.nextPageToken}},"getTransactionHistory"),fs=n(e=>e.split(",")[0]?.toLowerCase().startsWith("p-")?glacierSdk.BlockchainId.P_CHAIN:glacierSdk.BlockchainId.X_CHAIN,"getBlockchainIdByAddress");function Mn({blockchainId:e,isTestnet:t}){let r=t?"fuji"+e:e,a=gs__default.default.createHash("sha256").update(r).digest("base64");return "avax:"+hs(a).substring(0,32)}n(Mn,"hashBlockchainId");var hs=n(e=>e.replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,""),"convertBase64ToBase64Url");var Te,Le,ve,H,De,$,cr=class cr{constructor({approvalController:t,environment:r,appInfo:a,runtime:s}){S(this,Te,void 0);S(this,Le,void 0);S(this,ve,void 0);S(this,H,void 0);S(this,De,void 0);S(this,$,void 0);let{glacierApiUrl:o,proxyApiUrl:c}=Tr(r);b(this,De,a),b(this,$,s),b(this,Te,new ot({glacierApiUrl:o,headers:te(a),getAuthHeaders:async()=>y(this,$)?.getAuthHeaders?.()})),b(this,Le,c),b(this,ve,o),b(this,H,t);}getProvider(t){return I(t)}getAddress({accountIndex:t,xpubXP:r,walletType:a,network:s}){return yn({accountIndex:t,xpubXP:r,walletType:a,network:s})}getBalances({addresses:t,network:r,storage:a,currency:s}){let o=new be({storage:a,proxyApiUrl:y(this,Le),fetch:y(this,$)?.fetch});return Pn({addresses:t,currency:s,network:r,glacierService:y(this,Te),tokenService:o})}getManifest(){let t=vmModuleTypes.parseManifest(xr);return t.success?t.data:void 0}getNetworkFee(t){return bn(t)}getTransactionHistory({network:t,address:r,nextPageToken:a,offset:s}){return En({network:t,address:r,nextPageToken:a,offset:s,glacierService:y(this,Te)})}getTokens(t){return Promise.resolve([])}buildDerivationPath(t){return oe(t)}async deriveAddress(t){return fn({...t,approvalController:y(this,H)})}async deriveAddresses(t){return gn({...t,approvalController:y(this,H)})}async onRpcRequest(t,r){switch(t.method){case vmModuleTypes.RpcMethod.AVALANCHE_SIGN_MESSAGE:return sn({request:t,network:r,approvalController:y(this,H)});case vmModuleTypes.RpcMethod.AVALANCHE_SIGN_TRANSACTION:return un({request:t,network:r,approvalController:y(this,H),glacierApiUrl:y(this,ve),appInfo:y(this,De),getAuthHeaders:y(this,$)?.getAuthHeaders});case vmModuleTypes.RpcMethod.AVALANCHE_SEND_TRANSACTION:return rn({request:t,network:r,approvalController:y(this,H),glacierApiUrl:y(this,ve),appInfo:y(this,De),getAuthHeaders:y(this,$)?.getAuthHeaders});default:return {error:rpcErrors.rpcErrors.methodNotSupported(`Method ${t.method} not supported`)}}}static getHashedBlockchainId({blockchainId:t,isTestnet:r}){return Mn({blockchainId:t,isTestnet:r})}};Te=new WeakMap,Le=new WeakMap,ve=new WeakMap,H=new WeakMap,De=new WeakMap,$=new WeakMap,n(cr,"AvalancheModule");var Bn=cr;var tu=n(e=>"balancePerType"in e&&"unlockedUnstaked"in e.balancePerType,"isTokenWithBalancePVM"),ru=n(e=>"balancePerType"in e&&"unlocked"in e.balancePerType,"isTokenWithBalanceAVM");
23
23
 
24
- exports.AvalancheModule = nn;
25
- exports.isAddAutoRenewedValidatorTx = ft;
26
- exports.isAddPermissionlessDelegatorTx = dt;
27
- exports.isAddPermissionlessValidatorTx = pt;
28
- exports.isAddSubnetValidatorTx = ht;
29
- exports.isBaseTx = Vn;
30
- exports.isBlockchainDetails = yr;
31
- exports.isChainDetails = fr;
32
- exports.isConvertSubnetToL1Tx = pr;
33
- exports.isCreateChainTx = En;
34
- exports.isCreateSubnetTx = Bn;
35
- exports.isDisableL1ValidatorTx = mr;
36
- exports.isExportImportTxDetails = xs;
37
- exports.isExportTx = mt;
38
- exports.isImportTx = ut;
39
- exports.isIncreaseL1ValidatorBalanceTx = ur;
40
- exports.isRegisterL1ValidatorTx = hr;
41
- exports.isRemoveSubnetValidatorTx = gt;
42
- exports.isSetAutoRenewedValidatorConfigTx = yt;
43
- exports.isSetL1ValidatorWeightTx = gr;
44
- exports.isStakingDetails = ys;
45
- exports.isSubnetDetails = xr;
46
- exports.isTokenWithBalanceAVM = cp;
47
- exports.isTokenWithBalancePVM = ip;
24
+ exports.AvalancheModule = Bn;
25
+ exports.isAddAutoRenewedValidatorTx = Rt;
26
+ exports.isAddPermissionlessDelegatorTx = we;
27
+ exports.isAddPermissionlessValidatorTx = Re;
28
+ exports.isAddSubnetValidatorTx = Ct;
29
+ exports.isBaseTx = ca;
30
+ exports.isBlockchainDetails = Mr;
31
+ exports.isChainDetails = Er;
32
+ exports.isConvertSubnetToL1Tx = Cr;
33
+ exports.isCreateChainTx = la;
34
+ exports.isCreateSubnetTx = da;
35
+ exports.isDisableL1ValidatorTx = wr;
36
+ exports.isExportImportTxDetails = fi;
37
+ exports.isExportTx = Pt;
38
+ exports.isImportTx = bt;
39
+ exports.isIncreaseL1ValidatorBalanceTx = Rr;
40
+ exports.isRegisterL1ValidatorTx = Vr;
41
+ exports.isRemoveSubnetValidatorTx = wt;
42
+ exports.isSetAutoRenewedValidatorConfigTx = Vt;
43
+ exports.isSetL1ValidatorWeightTx = Nr;
44
+ exports.isStakingDetails = ui;
45
+ exports.isSubnetDetails = Br;
46
+ exports.isTokenWithBalanceAVM = ru;
47
+ exports.isTokenWithBalancePVM = tu;
48
48
  //# sourceMappingURL=out.js.map
49
49
  //# sourceMappingURL=index.cjs.map