@solana/web3.js 2.0.0-experimental.e0b865d → 2.0.0-experimental.e4483d3
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/LICENSE +1 -1
- package/README.md +1155 -43
- package/dist/index.browser.cjs +447 -2
- package/dist/index.browser.cjs.map +1 -1
- package/dist/index.browser.js +431 -3
- package/dist/index.browser.js.map +1 -1
- package/dist/index.development.js +2003 -809
- package/dist/index.development.js.map +1 -1
- package/dist/index.native.js +431 -3
- package/dist/index.native.js.map +1 -1
- package/dist/index.node.cjs +447 -4
- package/dist/index.node.cjs.map +1 -1
- package/dist/index.node.js +431 -3
- package/dist/index.node.js.map +1 -1
- package/dist/index.production.min.js +80 -36
- package/dist/types/airdrop-confirmer.d.ts +19 -0
- package/dist/types/airdrop-confirmer.d.ts.map +1 -0
- package/dist/types/airdrop.d.ts +21 -0
- package/dist/types/airdrop.d.ts.map +1 -0
- package/dist/types/cached-abortable-iterable.d.ts.map +1 -0
- package/dist/types/index.d.ts +7 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/rpc-default-config.d.ts.map +1 -0
- package/dist/types/rpc-integer-overflow-error.d.ts.map +1 -0
- package/dist/types/rpc-request-coalescer.d.ts +1 -1
- package/dist/types/rpc-request-coalescer.d.ts.map +1 -0
- package/dist/types/rpc-request-deduplication.d.ts.map +1 -0
- package/dist/types/rpc-subscription-coalescer.d.ts +1 -1
- package/dist/types/rpc-subscription-coalescer.d.ts.map +1 -0
- package/dist/types/rpc-transport.d.ts +1 -2
- package/dist/types/rpc-transport.d.ts.map +1 -0
- package/dist/types/rpc-websocket-autopinger.d.ts +1 -1
- package/dist/types/rpc-websocket-autopinger.d.ts.map +1 -0
- package/dist/types/rpc-websocket-connection-sharding.d.ts +1 -1
- package/dist/types/rpc-websocket-connection-sharding.d.ts.map +1 -0
- package/dist/types/rpc-websocket-transport.d.ts +1 -2
- package/dist/types/rpc-websocket-transport.d.ts.map +1 -0
- package/dist/types/rpc.d.ts +1 -2
- package/dist/types/rpc.d.ts.map +1 -0
- package/dist/types/send-transaction.d.ts +38 -0
- package/dist/types/send-transaction.d.ts.map +1 -0
- package/dist/types/transaction-confirmation-strategy-blockheight.d.ts +9 -0
- package/dist/types/transaction-confirmation-strategy-blockheight.d.ts.map +1 -0
- package/dist/types/transaction-confirmation-strategy-nonce.d.ts +14 -0
- package/dist/types/transaction-confirmation-strategy-nonce.d.ts.map +1 -0
- package/dist/types/transaction-confirmation-strategy-racer.d.ts +14 -0
- package/dist/types/transaction-confirmation-strategy-racer.d.ts.map +1 -0
- package/dist/types/transaction-confirmation-strategy-recent-signature.d.ts +12 -0
- package/dist/types/transaction-confirmation-strategy-recent-signature.d.ts.map +1 -0
- package/dist/types/transaction-confirmation-strategy-timeout.d.ts +8 -0
- package/dist/types/transaction-confirmation-strategy-timeout.d.ts.map +1 -0
- package/dist/types/transaction-confirmation.d.ts +32 -0
- package/dist/types/transaction-confirmation.d.ts.map +1 -0
- package/package.json +19 -17
|
@@ -2,46 +2,90 @@ this.globalThis = this.globalThis || {};
|
|
|
2
2
|
this.globalThis.solanaWeb3 = (function (exports) {
|
|
3
3
|
'use strict';
|
|
4
4
|
|
|
5
|
-
var
|
|
5
|
+
var Bt=Object.create;var Ae=Object.defineProperty;var Pt=Object.getOwnPropertyDescriptor;var _t=Object.getOwnPropertyNames;var Ot=Object.getPrototypeOf,Lt=Object.prototype.hasOwnProperty;var Ft=(e,n,t)=>n in e?Ae(e,n,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[n]=t;var Ut=(e,n)=>()=>(e&&(n=e(e=0)),n);var $t=(e,n)=>()=>(n||e((n={exports:{}}).exports,n),n.exports);var Wt=(e,n,t,r)=>{if(n&&typeof n=="object"||typeof n=="function")for(let o of _t(n))!Lt.call(e,o)&&o!==t&&Ae(e,o,{get:()=>n[o],enumerable:!(r=Pt(n,o))||r.enumerable});return e};var nn=(e,n,t)=>(t=e!=null?Bt(Ot(e)):{},Wt(n||!e||!e.__esModule?Ae(t,"default",{value:e,enumerable:!0}):t,e));var D=(e,n,t)=>(Ft(e,typeof n!="symbol"?n+"":n,t),t);var l=Ut(()=>{});var Xe=$t((Ba,yt)=>{l();var No=Object.prototype.toString,ko=Object.keys||function(e){var n=[];for(var t in e)n.push(t);return n};function ie(e,n){var t,r,o,i,a,s,c;if(e===!0)return "true";if(e===!1)return "false";switch(typeof e){case"object":if(e===null)return null;if(e.toJSON&&typeof e.toJSON=="function")return ie(e.toJSON(),n);if(c=No.call(e),c==="[object Array]"){for(o="[",r=e.length-1,t=0;t<r;t++)o+=ie(e[t],!0)+",";return r>-1&&(o+=ie(e[t],!0)),o+"]"}else if(c==="[object Object]"){for(i=ko(e).sort(),r=i.length,o="",t=0;t<r;)a=i[t],s=ie(e[a],!1),s!==void 0&&(o&&(o+=","),o+=JSON.stringify(a)+":"+s),t++;return "{"+o+"}"}else return JSON.stringify(e);case"function":case"undefined":return n?null:void 0;case"string":return JSON.stringify(e);default:return isFinite(e)?e:null}}yt.exports=function(e){var n=ie(e,!1);if(n!==void 0)return ""+n};});l();l();l();function H(e,n,t=0){if(n.length-t<=0)throw new Error(`Codec [${e}] cannot decode empty byte arrays.`)}function O(e,n,t,r=0){let o=t.length-r;if(o<n)throw new Error(`Codec [${e}] expected ${n} bytes, got ${o}.`)}var j=e=>{let n=e.filter(i=>i.length);if(n.length===0)return e.length?e[0]:new Uint8Array;if(n.length===1)return n[0];let t=n.reduce((i,a)=>i+a.length,0),r=new Uint8Array(t),o=0;return n.forEach(i=>{r.set(i,o),o+=i.length;}),r},Mt=(e,n)=>{if(e.length>=n)return e;let t=new Uint8Array(n).fill(0);return t.set(e),t},Te=(e,n)=>Mt(e.length<=n?e:e.slice(0,n),n);function N(e,n,t){if(e.fixedSize!==n.fixedSize)throw new Error(`Encoder and decoder must have the same fixed size, got [${e.fixedSize}] and [${n.fixedSize}].`);if(e.maxSize!==n.maxSize)throw new Error(`Encoder and decoder must have the same max size, got [${e.maxSize}] and [${n.maxSize}].`);if(t===void 0&&e.description!==n.description)throw new Error(`Encoder and decoder must have the same description, got [${e.description}] and [${n.description}]. Pass a custom description as a third argument if you want to override the description and bypass this error.`);return {decode:n.decode,description:t!=null?t:e.description,encode:e.encode,fixedSize:e.fixedSize,maxSize:e.maxSize}}function tn(e,n,t){return {description:t!=null?t:`fixed(${n}, ${e.description})`,fixedSize:n,maxSize:n}}function ae(e,n,t){return {...tn(e,n,t),encode:r=>Te(e.encode(r),n)}}function se(e,n,t){return {...tn(e,n,t),decode:(r,o=0)=>{O("fixCodec",n,r,o),(o>0||r.length>n)&&(r=r.slice(o,o+n)),e.fixedSize!==null&&(r=Te(r,e.fixedSize));let[i]=e.decode(r,0);return [i,o+n]}}}function G(e,n){return {description:e.description,encode:t=>e.encode(n(t)),fixedSize:e.fixedSize,maxSize:e.maxSize}}function J(e,n){return {decode:(t,r=0)=>{let[o,i]=e.decode(t,r);return [n(o,t,r),i]},description:e.description,fixedSize:e.fixedSize,maxSize:e.maxSize}}l();l();function rn(e,n,t,r){if(r<n||r>t)throw new Error(`Codec [${e}] expected number to be in the range [${n}, ${t}], got ${r}.`)}function on(e){var r;let n,t=e.name;return e.size>1&&(n=!("endian"in e.config)||e.config.endian===0,t+=n?"(le)":"(be)"),{description:(r=e.config.description)!=null?r:t,fixedSize:e.size,littleEndian:n,maxSize:e.size}}function an(e){let n=on(e);return {description:n.description,encode(t){e.range&&rn(e.name,e.range[0],e.range[1],t);let r=new ArrayBuffer(e.size);return e.set(new DataView(r),t,n.littleEndian),new Uint8Array(r)},fixedSize:n.fixedSize,maxSize:n.maxSize}}function sn(e){let n=on(e);return {decode(t,r=0){H(n.description,t,r),O(n.description,e.size,t,r);let o=new DataView(Ht(t,r,e.size));return [e.get(o,n.littleEndian),r+e.size]},description:n.description,fixedSize:n.fixedSize,maxSize:n.maxSize}}function Ht(e,n,t){let r=e.byteOffset+(n!=null?n:0),o=t!=null?t:e.byteLength;return e.buffer.slice(r,r+o)}var R=(e={})=>{var n;return {description:(n=e.description)!=null?n:"shortU16",encode:t=>{rn("shortU16",0,65535,t);let r=[0];for(let o=0;;o+=1){let i=t>>o*7;if(i===0)break;let a=127&i;r[o]=a,o>0&&(r[o-1]|=128);}return new Uint8Array(r)},fixedSize:null,maxSize:3}},v=(e={})=>{var n;return {decode:(t,r=0)=>{let o=0,i=0;for(;++i;){let a=i-1,s=t[r+a],c=127&s;if(o|=c<<a*7,!(s&128))break}return [o,r+i]},description:(n=e.description)!=null?n:"shortU16",fixedSize:null,maxSize:3}};var ce=(e={})=>an({config:e,name:"u32",range:[0,+"0xffffffff"],set:(n,t,r)=>n.setUint32(0,t,r),size:4}),de=(e={})=>sn({config:e,get:(n,t)=>n.getUint32(0,t),name:"u32",size:4});var L=(e={})=>an({config:e,name:"u8",range:[0,+"0xff"],set:(n,t)=>n.setUint8(0,t),size:1}),F=(e={})=>sn({config:e,get:n=>n.getUint8(0),name:"u8",size:1});function jt(e,n,t=n){if(!n.match(new RegExp(`^[${e}]*$`)))throw new Error(`Expected a string of base ${e.length}, got [${t}].`)}var Gt=e=>{let n=e.length,t=BigInt(n);return {description:`base${n}`,encode(r){if(jt(e,r),r==="")return new Uint8Array;let o=[...r],i=o.findIndex(p=>p!==e[0]);i=i===-1?o.length:i;let a=Array(i).fill(0);if(i===o.length)return Uint8Array.from(a);let s=o.slice(i),c=0n,u=1n;for(let p=s.length-1;p>=0;p-=1)c+=u*BigInt(e.indexOf(s[p])),u*=t;let f=[];for(;c>0n;)f.unshift(Number(c%256n)),c/=256n;return Uint8Array.from(a.concat(f))},fixedSize:null,maxSize:null}},Kt=e=>{let n=e.length,t=BigInt(n);return {decode(r,o=0){let i=o===0?r:r.slice(o);if(i.length===0)return ["",0];let a=i.findIndex(f=>f!==0);a=a===-1?i.length:a;let s=e[0].repeat(a);if(a===i.length)return [s,r.length];let c=i.slice(a).reduce((f,p)=>f*256n+BigInt(p),0n),u=[];for(;c>0n;)u.unshift(e[Number(c%t)]),c/=t;return [s+u.join(""),r.length]},description:`base${n}`,fixedSize:null,maxSize:null}};var cn="123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz",k=()=>Gt(cn),U=()=>Kt(cn);var dn=()=>({description:"base64",encode(e){try{let n=atob(e).split("").map(t=>t.charCodeAt(0));return new Uint8Array(n)}catch{throw new Error(`Expected a string of base 64, got [${e}].`)}},fixedSize:null,maxSize:null}),un=()=>({decode(e,n=0){let t=e.slice(n);return [btoa(String.fromCharCode(...t)),e.length]},description:"base64",fixedSize:null,maxSize:null});var Vt=e=>e.replace(/\u0000/g,"");var qt=globalThis.TextDecoder,Yt=globalThis.TextEncoder,Jt=()=>{let e;return {description:"utf8",encode:n=>new Uint8Array((e||(e=new Yt)).encode(n)),fixedSize:null,maxSize:null}},Xt=()=>{let e;return {decode(n,t=0){let r=(e||(e=new qt)).decode(n.slice(t));return [Vt(r),n.length]},description:"utf8",fixedSize:null,maxSize:null}};var ue=(e={})=>{var o,i,a;let n=(o=e.size)!=null?o:ce(),t=(i=e.encoding)!=null?i:Jt(),r=(a=e.description)!=null?a:`string(${t.description}; ${ln(n)})`;return n==="variable"?{...t,description:r}:typeof n=="number"?ae(t,n,r):{description:r,encode:s=>{let c=t.encode(s),u=n.encode(c.length);return j([u,c])},fixedSize:null,maxSize:null}},le=(e={})=>{var o,i,a;let n=(o=e.size)!=null?o:de(),t=(i=e.encoding)!=null?i:Xt(),r=(a=e.description)!=null?a:`string(${t.description}; ${ln(n)})`;return n==="variable"?{...t,description:r}:typeof n=="number"?se(t,n,r):{decode:(s,c=0)=>{H("string",s,c);let[u,f]=n.decode(s,c),p=Number(u);c=f;let m=s.slice(c,c+p);O("string",p,m);let[y,g]=t.decode(m);return c+=g,[y,c]},description:r,fixedSize:null,maxSize:null}};function ln(e){return typeof e=="object"?e.description:`${e}`}l();function X(){if(!globalThis.isSecureContext)throw new Error("Cryptographic operations are only allowed in secure browser contexts. Read more here: https://developer.mozilla.org/en-US/docs/Web/Security/Secure_Contexts")}var $;async function Zt(e){return $===void 0&&($=new Promise(n=>{e.generateKey("Ed25519",!1,["sign","verify"]).catch(()=>{n($=!1);}).then(()=>{n($=!0);});})),typeof $=="boolean"?$:await $}async function fn(){var e;if(X(),typeof globalThis.crypto>"u"||typeof((e=globalThis.crypto.subtle)==null?void 0:e.digest)!="function")throw new Error("No digest implementation could be found")}async function pn(){var e;if(X(),typeof globalThis.crypto>"u"||typeof((e=globalThis.crypto.subtle)==null?void 0:e.generateKey)!="function")throw new Error("No key generation implementation could be found");if(!await Zt(globalThis.crypto.subtle))throw new Error(`This runtime does not support the generation of Ed25519 key pairs.
|
|
6
6
|
|
|
7
7
|
Install and import \`@solana/webcrypto-ed25519-polyfill\` before generating keys in environments that do not support Ed25519.
|
|
8
8
|
|
|
9
|
-
For a list of runtimes that currently support Ed25519 operations, visit https://github.com/WICG/webcrypto-secure-curves/issues/20`)}async function Ue(){if(V(),typeof globalThis.crypto>"u"||typeof globalThis.crypto.subtle?.exportKey!="function")throw new Error("No key export implementation could be found")}async function Me(){if(V(),typeof globalThis.crypto>"u"||typeof globalThis.crypto.subtle?.sign!="function")throw new Error("No signing implementation could be found")}async function Fe(){if(V(),typeof globalThis.crypto>"u"||typeof globalThis.crypto.subtle?.verify!="function")throw new Error("No signature verification implementation could be found")}function jo(e){return !(e.length<32||e.length>44||B.serialize(e).byteLength!==32)}function Dt(e){try{if(e.length<32||e.length>44)throw new Error("Expected input string to decode to a byte array of length 32.");let r=B.serialize(e).byteLength;if(r!==32)throw new Error(`Expected input string to decode to a byte array of length 32. Actual length: ${r}`)}catch(t){throw new Error(`\`${e}\` is not a base-58 encoded address`,{cause:t})}}function Ho(e){return Dt(e),e}function M(e){return G({description:e?.description??(""),encoding:B,size:32})}function le(){return new Intl.Collator("en",{caseFirst:"lower",ignorePunctuation:!1,localeMatcher:"best fit",numeric:!1,sensitivity:"variant",usage:"sort"}).compare}var $t=37095705934669439343138083508754565189542113879843219016388785533085940283555n,I=57896044618658097711785492504343953926634992332820282019728792003956564819949n,Ke=19681161376707505956807079304988542015446066515923890162744021073123829784752n;function T(e){let t=e%I;return t>=0n?t:I+t}function C(e,t){let r=e;for(;t-- >0n;)r*=r,r%=I;return r}function Wt(e){let r=e*e%I*e%I,n=C(r,2n)*r%I,o=C(n,1n)*e%I,s=C(o,5n)*o%I,i=C(s,10n)*s%I,a=C(i,20n)*i%I,u=C(a,40n)*a%I,l=C(u,80n)*u%I,p=C(l,80n)*u%I,f=C(p,10n)*s%I;return C(f,2n)*e%I}function Ut(e,t){let r=T(t*t*t),n=T(r*r*t),o=Wt(e*n),s=T(e*r*o),i=T(t*s*s),a=s,u=T(s*Ke),l=i===e,p=i===T(-e),f=i===T(-e*Ke);return l&&(s=a),(p||f)&&(s=u),(T(s)&1n)===1n&&(s=T(-s)),!l&&!p?null:s}function Mt(e,t){let r=T(e*e),n=T(r-1n),o=T($t*r+1n),s=Ut(n,o);if(s===null)return !1;let i=(t&128)!==0;return !(s===0n&&i)}function Ft(e){let t=e.toString(16);return t.length===1?`0${t}`:t}function Kt(e){let r=`0x${e.reduce((n,o,s)=>`${Ft(s===31?o&-129:o)}${n}`,"")}`;return BigInt(r)}async function jt(e){if(e.byteLength!==32)return !1;let t=Kt(e);return Mt(t,e[31])}var He=32,je=16,ue=[80,114,111,103,114,97,109,68,101,114,105,118,101,100,65,100,100,114,101,115,115],Ge=class extends Error{};async function Ht({programAddress:e,seeds:t}){if(await $e(),t.length>je)throw new Error(`A maximum of ${je} seeds may be supplied when creating an address`);let r,n=t.reduce((u,l,p)=>{let f=typeof l=="string"?(r||(r=new TextEncoder)).encode(l):l;if(f.byteLength>He)throw new Error(`The seed at index ${p} exceeds the maximum length of 32 bytes`);return u.push(...f),u},[]),o=M(),s=o.serialize(e),i=await crypto.subtle.digest("SHA-256",new Uint8Array([...n,...s,...ue])),a=new Uint8Array(i);if(await jt(a))throw new Ge("Invalid seeds; point must fall off the Ed25519 curve");return o.deserialize(a)[0]}async function Go({programAddress:e,seeds:t}){let r=255;for(;r>0;)try{return {bumpSeed:r,pda:await Ht({programAddress:e,seeds:[...t,new Uint8Array([r])]})}}catch(n){if(n instanceof Ge)r--;else throw n}throw new Error("Unable to find a viable program address bump seed")}async function Vo({baseAddress:e,programAddress:t,seed:r}){let{serialize:n,deserialize:o}=M(),s=typeof r=="string"?new TextEncoder().encode(r):r;if(s.byteLength>He)throw new Error("The seed exceeds the maximum length of 32 bytes");let i=n(t);if(i.length>=ue.length&&i.slice(-ue.length).every((l,p)=>l===ue[p]))throw new Error("programAddress cannot end with the PDA marker");let a=await crypto.subtle.digest("SHA-256",new Uint8Array([...n(e),...s,...i])),u=new Uint8Array(a);return o(u)[0]}async function Ve(e){if(await Ue(),e.type!=="public"||e.algorithm.name!=="Ed25519")throw new Error("The `CryptoKey` must be an `Ed25519` public key");let t=await crypto.subtle.exportKey("raw",e),[r]=M().deserialize(new Uint8Array(t));return r}c();var Gt=(e=>(e[e.WRITABLE_SIGNER=3]="WRITABLE_SIGNER",e[e.READONLY_SIGNER=2]="READONLY_SIGNER",e[e.WRITABLE=1]="WRITABLE",e[e.READONLY=0]="READONLY",e))(Gt||{}),qe=2,Se=1;function Xo(e){return e&~qe}function Zo(e){return e&~Se}function Qo(e){return e>=2}function es(e){return (e&Se)!==0}function ts(e,t){return e|t}function rs(e){return e|qe}function ns(e){return e|Se}c();async function as(){return await We(),await crypto.subtle.generateKey("Ed25519",!1,["sign","verify"])}async function Ye(e,t){await Me();let r=await crypto.subtle.sign("Ed25519",e,t);return new Uint8Array(r)}async function cs(e,t,r){return await Fe(),await crypto.subtle.verify("Ed25519",e,t,r)}c();function J(e){if("signatures"in e){let{signatures:t,...r}=e;return r}else return e}function ms(e){try{if(e.length<32||e.length>44)throw new Error("Expected input string to decode to a byte array of length 32.");let r=B.serialize(e).byteLength;if(r!==32)throw new Error(`Expected input string to decode to a byte array of length 32. Actual length: ${r}`)}catch(t){throw new Error(`\`${e}\` is not a blockhash`,{cause:t})}}function gs(e,t){if("lifetimeConstraint"in t&&t.lifetimeConstraint.blockhash===e.blockhash&&t.lifetimeConstraint.lastValidBlockHeight===e.lastValidBlockHeight)return t;let r={...J(t),lifetimeConstraint:e};return Object.freeze(r),r}function bs({version:e}){let t={instructions:[],version:e};return Object.freeze(t),t}var _=(e=>(e[e.WRITABLE_SIGNER=3]="WRITABLE_SIGNER",e[e.READONLY_SIGNER=2]="READONLY_SIGNER",e[e.WRITABLE=1]="WRITABLE",e[e.READONLY=0]="READONLY",e))(_||{}),Vt=1;function q(e){return e>=2}function Y(e){return (e&Vt)!==0}function Je(e,t){return e|t}var Qe="SysvarRecentB1ockHashes11111111111111111111",et="11111111111111111111111111111111";function hs(e){if(!tt(e))throw new Error("Transaction is not a durable nonce transaction")}function qt(e,t){return {accounts:[{address:e,role:_.WRITABLE},{address:Qe,role:_.READONLY},{address:t,role:_.READONLY_SIGNER}],data:new Uint8Array([4,0,0,0]),programAddress:et}}function Yt(e){return e.programAddress===et&&e.data!=null&&Jt(e.data)&&e.accounts?.length===3&&e.accounts[0].address!=null&&e.accounts[0].role===_.WRITABLE&&e.accounts[1].address===Qe&&e.accounts[1].role===_.READONLY&&e.accounts[2].address!=null&&e.accounts[2].role===_.READONLY_SIGNER}function Jt(e){return e.byteLength===4&&e[0]===4&&e[1]===0&&e[2]===0&&e[3]===0}function tt(e){return "lifetimeConstraint"in e&&typeof e.lifetimeConstraint.nonce=="string"&&e.instructions[0]!=null&&Yt(e.instructions[0])}function ys({nonce:e,nonceAccountAddress:t,nonceAuthorityAddress:r},n){let o=tt(n);if(o&&n.lifetimeConstraint.nonce===e&&n.instructions[0].accounts[0].address===t&&n.instructions[0].accounts[2].address===r)return n;let s={...J(n),instructions:[qt(t,r),...o?n.instructions.slice(1):n.instructions],lifetimeConstraint:{nonce:e}};return Object.freeze(s),s}function Ss(e,t){if("feePayer"in t&&e===t.feePayer)return t;let r={...J(t),feePayer:e};return Object.freeze(r),r}function ws(e,t){let r={...J(t),instructions:[...t.instructions,e]};return Object.freeze(r),r}function Es(e,t){let r={...J(t),instructions:[e,...t.instructions]};return Object.freeze(r),r}function Xe(e,t,r){e[t]=r(e[t]??{role:_.READONLY});}var S=Symbol("AddressMapTypeProperty");function Xt(e,t){let r={[e]:{[S]:0,role:_.WRITABLE_SIGNER}},n=new Set;for(let o of t){Xe(r,o.programAddress,i=>{if(n.add(o.programAddress),S in i){if(Y(i.role))switch(i[S]){case 0:throw new Error(`This transaction includes an address (\`${o.programAddress}\`) which is both invoked and set as the fee payer. Program addresses may not pay fees.`);default:throw new Error(`This transaction includes an address (\`${o.programAddress}\`) which is both invoked and marked writable. Program addresses may not be writable.`)}if(i[S]===2)return i}return {[S]:2,role:_.READONLY}});let s;if(o.accounts)for(let i of o.accounts)Xe(r,i.address,a=>{let{address:u,...l}=i;if(S in a)switch(a[S]){case 0:return a;case 1:{let p=Je(a.role,l.role);if("lookupTableAddress"in l){if(a.lookupTableAddress!==l.lookupTableAddress&&(s||(s=le()))(l.lookupTableAddress,a.lookupTableAddress)<0)return {[S]:1,...l,role:p}}else if(q(l.role))return {[S]:2,role:p};return a.role!==p?{...a,role:p}:a}case 2:{let p=Je(a.role,l.role);if(n.has(i.address)){if(Y(l.role))throw new Error(`This transaction includes an address (\`${i.address}\`) which is both invoked and marked writable. Program addresses may not be writable.`);return a.role!==p?{...a,role:p}:a}else return "lookupTableAddress"in l&&!q(a.role)?{...l,[S]:1,role:p}:a.role!==p?{...a,role:p}:a}}return "lookupTableAddress"in l?{...l,[S]:1}:{...l,[S]:2}});}return r}function Zt(e){let t;return Object.entries(e).sort(([n,o],[s,i])=>{if(o[S]!==i[S]){if(o[S]===0)return -1;if(i[S]===0)return 1;if(o[S]===2)return -1;if(i[S]===2)return 1}let a=q(o.role);if(a!==q(i.role))return a?-1:1;let u=Y(o.role);return u!==Y(i.role)?u?-1:1:(t||(t=le()),o[S]===1&&i[S]===1&&o.lookupTableAddress!==i.lookupTableAddress?t(o.lookupTableAddress,i.lookupTableAddress):t(n,s))}).map(([n,o])=>({address:n,...o}))}function Qt(e){var t;let r={};for(let n of e){if(!("lookupTableAddress"in n))continue;let o=r[t=n.lookupTableAddress]||(r[t]={readableIndices:[],writableIndices:[]});n.role===_.WRITABLE?o.writableIndices.push(n.addressIndex):o.readableIndices.push(n.addressIndex);}return Object.keys(r).sort(le()).map(n=>({lookupTableAddress:n,...r[n]}))}function er(e){let t=0,r=0,n=0;for(let o of e){if("lookupTableAddress"in o)break;let s=Y(o.role);q(o.role)?(n++,s||r++):s||t++;}return {numReadonlyNonSignerAccounts:t,numReadonlySignerAccounts:r,numSignerAccounts:n}}function tr(e){let t={};for(let[r,n]of e.entries())t[n.address]=r;return t}function rr(e,t){let r=tr(t);return e.map(({accounts:n,data:o,programAddress:s})=>({programAddressIndex:r[s],...n?{accountIndices:n.map(({address:i})=>r[i])}:null,...o?{data:o}:null}))}function nr(e){return "nonce"in e?e.nonce:e.blockhash}function or(e){let t=e.findIndex(n=>"lookupTableAddress"in n);return (t===-1?e:e.slice(0,t)).map(({address:n})=>n)}function rt(e){let t=Xt(e.feePayer,e.instructions),r=Zt(t);return {...e.version!=="legacy"?{addressTableLookups:Qt(r)}:null,header:er(r),instructions:rr(e.instructions,r),lifetimeToken:nr(e.lifetimeConstraint),staticAccounts:or(r),version:e.version}}function sr(){return P([["lookupTableAddress",M(void 0)],["writableIndices",O(N(),{...null,size:z()})],["readableIndices",O(N(),{...void 0,size:z()})]],void 0)}function ir(){return P([["numSignerAccounts",N(void 0)],["numReadonlySignerAccounts",N(void 0)],["numReadonlyNonSignerAccounts",N(void 0)]],void 0)}function ar(){return ee(P([["programAddressIndex",N(void 0)],["accountIndices",O(N({description:""}),{description:"",size:z()})],["data",ce({description:"",size:z()})]]),e=>e.accountIndices!==void 0&&e.data!==void 0?e:{...e,accountIndices:e.accountIndices??[],data:e.data??new Uint8Array(0)},e=>{if(e.accountIndices.length&&e.data.byteLength)return e;let{accountIndices:t,data:r,...n}=e;return {...n,...t.length?{accountIndices:t}:null,...r.byteLength?{data:r}:null}})}function cr(e,t){let r=t+e[0].toUpperCase()+e.slice(1);return new Error(`No ${e} exists for ${t}. Use \`get${r}()\` if you need a ${e}, and \`get${t}Codec()\` if you need to both encode and decode ${t}`)}function nt(e){return ()=>{throw cr("decoder",e)}}var we=128,ur={description:"",fixedSize:null,maxSize:1};function lr(e,t=0){let r=e[t];return r&we?[r^we,t+1]:["legacy",t]}function dr(e){if(e==="legacy")return new Uint8Array;if(e<0||e>127)throw new Error(`Transaction version must be in the range [0, 127]. \`${e}\` given.`);return new Uint8Array([e|we])}function pr(){return {...ur,deserialize:lr,serialize:dr}}var fr={description:"",fixedSize:null,maxSize:null};function mr(e){return e.version==="legacy"?P(Ze()).serialize(e):ee(P([...Ze(),["addressTableLookups",gr()]]),t=>t.version==="legacy"?t:{...t,addressTableLookups:t.addressTableLookups??[]}).serialize(e)}function Ze(){return [["version",pr()],["header",ir()],["staticAccounts",O(M(),{description:"",size:z()})],["lifetimeToken",G({description:"",encoding:B,size:32})],["instructions",O(ar(),{description:"",size:z()})]]}function gr(){return O(sr(),{...null,size:z()})}function ot(){return {...fr,deserialize:nt("CompiledMessage"),serialize:mr}}async function br(e,t){let r=ot().serialize(e);return await Ye(t,r)}async function xs(e,t){let r=rt(t),n="signatures"in t?{...t.signatures}:{},o=await Promise.all(e.map(i=>Promise.all([Ve(i.publicKey),br(r,i.privateKey)])));for(let[i,a]of o)n[i]=a;let s={...t,signatures:n};return Object.freeze(s),s}function hr(e){let t=rt(e),r;if("signatures"in e){r=[];for(let n=0;n<t.header.numSignerAccounts;n++)r[n]=e.signatures[t.staticAccounts[n]]??new Uint8Array(Array(64).fill(0));}else r=Array(t.header.numSignerAccounts).fill(new Uint8Array(Array(64).fill(0)));return {compiledMessage:t,signatures:r}}var yr={description:"",fixedSize:null,maxSize:null};function Sr(e){let t=hr(e);return P([["signatures",O(ce({size:64}),{...null,size:z()})],["compiledMessage",ot()]]).serialize(t)}function wr(){return {...yr,deserialize:nt("CompiledMessage"),serialize:Sr}}function Is(e){let t=wr().serialize(e);return btoa(String.fromCharCode(...t))}c();c();function F(e,...t){return t.reduce((r,n)=>n(r),e)}c();function Ie(e,t,r){if(Array.isArray(e))return e.map((n,o)=>Ie(n,[...t,o],r));if(typeof e=="object"&&e!==null){let n={};for(let o in e)Object.prototype.hasOwnProperty.call(e,o)&&(n[o]=Ie(e[o],[...t,o],r));return n}else return typeof e=="bigint"?(r&&(e>Number.MAX_SAFE_INTEGER||e<-Number.MAX_SAFE_INTEGER)&&r(t,e),Number(e)):e}function it(e,t){return Ie(e,[],t)}var d={},Ee,xe;function Er(){return Ee||(Ee={}),Ee}function xr(){if(!xe){let e=[["data","parsed","info","tokenAmount","decimals"],["data","parsed","info","tokenAmount","uiAmount"],["data","parsed","info","rentExemptReserve","decimals"],["data","parsed","info","rentExemptReserve","uiAmount"],["data","parsed","info","delegatedAmount","decimals"],["data","parsed","info","delegatedAmount","uiAmount"],["data","parsed","info","extensions",d,"state","olderTransferFee","transferFeeBasisPoints"],["data","parsed","info","extensions",d,"state","newerTransferFee","transferFeeBasisPoints"],["data","parsed","info","extensions",d,"state","preUpdateAverageRate"],["data","parsed","info","extensions",d,"state","currentRate"]],t=[...e,["data","parsed","info","lastExtendedSlotStartIndex"],["data","parsed","info","slashPenalty"],["data","parsed","info","warmupCooldownRate"],["data","parsed","info","decimals"],["data","parsed","info","numRequiredSigners"],["data","parsed","info","numValidSigners"],["data","parsed","info","stake","delegation","warmupCooldownRate"],["data","parsed","info","exemptionThreshold"],["data","parsed","info","burnPercent"],["data","parsed","info","commission"],["data","parsed","info","votes",d,"confirmationCount"]];xe={getAccountInfo:t.map(r=>["value",...r]),getBlock:[["blockTime"],["transactions",d,"meta","preTokenBalances",d,"accountIndex"],["transactions",d,"meta","preTokenBalances",d,"uiTokenAmount","decimals"],["transactions",d,"meta","postTokenBalances",d,"accountIndex"],["transactions",d,"meta","postTokenBalances",d,"uiTokenAmount","decimals"],["transactions",d,"meta","rewards",d,"commission"],["transactions",d,"meta","innerInstructions",d,"index"],["transactions",d,"meta","innerInstructions",d,"instructions",d,"programIdIndex"],["transactions",d,"meta","innerInstructions",d,"instructions",d,"accounts",d],["transactions",d,"transaction","message","addressTableLookups",d,"writableIndexes",d],["transactions",d,"transaction","message","addressTableLookups",d,"readonlyIndexes",d],["transactions",d,"transaction","message","instructions",d,"programIdIndex"],["transactions",d,"transaction","message","instructions",d,"accounts",d],["transactions",d,"transaction","message","header","numReadonlySignedAccounts"],["transactions",d,"transaction","message","header","numReadonlyUnsignedAccounts"],["transactions",d,"transaction","message","header","numRequiredSignatures"],["rewards",d,"commission"]],getBlockTime:[[]],getClusterNodes:[[d,"featureSet"],[d,"shredVersion"]],getInflationGovernor:[["initial"],["foundation"],["foundationTerm"],["taper"],["terminal"]],getInflationRate:[["foundation"],["total"],["validator"]],getInflationReward:[[d,"commission"]],getMultipleAccounts:t.map(r=>["value",d,...r]),getProgramAccounts:t.flatMap(r=>[["value",d,"account",...r],[d,"account",...r]]),getRecentPerformanceSamples:[[d,"samplePeriodSecs"]],getTokenAccountBalance:[["value","decimals"],["value","uiAmount"]],getTokenAccountsByDelegate:e.map(r=>["value",d,"account",...r]),getTokenAccountsByOwner:e.map(r=>["value",d,"account",...r]),getTokenLargestAccounts:[["value",d,"decimals"],["value",d,"uiAmount"]],getTokenSupply:[["value","decimals"],["value","uiAmount"]],getTransaction:[["meta","preTokenBalances",d,"accountIndex"],["meta","preTokenBalances",d,"uiTokenAmount","decimals"],["meta","postTokenBalances",d,"accountIndex"],["meta","postTokenBalances",d,"uiTokenAmount","decimals"],["meta","rewards",d,"commission"],["meta","innerInstructions",d,"index"],["meta","innerInstructions",d,"instructions",d,"programIdIndex"],["meta","innerInstructions",d,"instructions",d,"accounts",d],["transaction","message","addressTableLookups",d,"writableIndexes",d],["transaction","message","addressTableLookups",d,"readonlyIndexes",d],["transaction","message","instructions",d,"programIdIndex"],["transaction","message","instructions",d,"accounts",d],["transaction","message","header","numReadonlySignedAccounts"],["transaction","message","header","numReadonlyUnsignedAccounts"],["transaction","message","header","numRequiredSignatures"]],getVersion:[["feature-set"]],getVoteAccounts:[["current",d,"commission"],["delinquent",d,"commission"]],simulateTransaction:t.map(r=>["value","accounts",d,...r])};}return xe}function st(e,t){return e.filter(r=>r[0]===d&&typeof t=="number"||r[0]===t).map(r=>r.slice(1))}function de(e,t){if(Array.isArray(e))return e.map((r,n)=>{let o=st(t,n);return de(r,o)});if(typeof e=="object"&&e!==null){let r={};for(let[n,o]of Object.entries(e)){let s=st(t,n);r[n]=de(o,s);}return r}else return typeof e=="number"&&t.length===0&&Number.isInteger(e)?BigInt(e):e}function Ir(e,t){let r=t?xr()[t]:void 0;return de(e,r??[])}function Ar(e,t){let r=t?Er()[t]:void 0;return de(e,r??[])}function at(e){return new Proxy({},{defineProperty(){return !1},deleteProperty(){return !1},get(...t){let[r,n]=t,o=n.toString();return function(...s){let i=e?.onIntegerOverflow,a=it(s,i?(u,l)=>i(o,u,l):void 0);return {methodName:o,params:a,responseProcessor:u=>Ir(u,o)}}}})}function Ae(e){return new Proxy({},{defineProperty(){return !1},deleteProperty(){return !1},get(...t){let[r,n]=t,o=n.toString();return function(...s){let i=e?.onIntegerOverflow;return {params:it(s,i?(u,l)=>i(o,u,l):void 0),responseProcessor:u=>Ar(u,o),subscribeMethodName:o.replace(/Notifications$/,"Subscribe"),unsubscribeMethodName:o.replace(/Notifications$/,"Unsubscribe")}}}})}function ct(e){return Ae(e)}c();var lt=class extends Error{constructor(e){super(`JSON-RPC 2.0 error (${e.code}): ${e.message}`),Error.captureStackTrace(this,this.constructor),this.code=e.code,this.data=e.data;}get name(){return "SolanaJsonRpcError"}},Te=0;function Tr(){let e=Te;return Te=(Te+1)%Number.MAX_SAFE_INTEGER,e}function _e(e,t){return {id:Tr(),jsonrpc:"2.0",method:e,params:t}}function Rr(e,t){return {async send(r){let{methodName:n,params:o,responseProcessor:s}=t,i=_e(n,o),a=await e.transport({payload:i,signal:r?.abortSignal});if("error"in a)throw new lt(a.error);return s?s(a.result):a.result}}}function _r(e){return new Proxy(e.api,{defineProperty(){return !1},deleteProperty(){return !1},get(t,r,n){return function(...o){let s=r.toString(),i=Reflect.get(t,s,n),a=i?i(...o):{methodName:s,params:o};return Rr(e,a)}}})}function dt(e){return _r(e)}function zr(e,t){(async()=>{try{for await(let r of e);}catch{}finally{t();}})();}function Cr(e,{params:t,subscribeMethodName:r,unsubscribeMethodName:n,responseProcessor:o}){return {async subscribe({abortSignal:s}){s.throwIfAborted();let i;function a(){if(i!==void 0){let g=_e(n,[i]);p.send_DO_NOT_USE_OR_YOU_WILL_BE_FIRED(g).finally(()=>{u.abort();});}else u.abort();}s.addEventListener("abort",a);let u=new AbortController,l=_e(r,t),p=await e.transport({payload:l,signal:u.signal});function f(){s.removeEventListener("abort",a);}zr(p,f);for await(let g of p)if("id"in g&&g.id===l.id){if("error"in g)throw new lt(g.error);i=g.result;break}if(i==null)throw new Error("Failed to obtain a subscription id from the server");return {async*[Symbol.asyncIterator](){for await(let g of p){if(!("params"in g)||g.params.subscription!==i)continue;let E=g.params.result;yield o?o(E):E;}}}}}}function vr(e){return new Proxy(e.api,{defineProperty(){return !1},deleteProperty(){return !1},get(t,r,n){return function(...o){let s=r.toString(),i=Reflect.get(t,s,n);if(r.toString().endsWith("Notifications")===!1&&!i)throw new Error("Either the notification name must end in 'Notifications' or the API must supply a subscription creator function to map between the notification name and the subscribe/unsubscribe method names.");let a=i?i(...o):{params:o,subscribeMethodName:s.replace(/Notifications$/,"Subscribe"),unsubscribeMethodName:s.replace(/Notifications$/,"Unsubscribe")};return Cr(e,a)}}})}function ze(e){return vr(e)}var kr=globalThis.fetch,Nr=class extends Error{constructor(e){super(`HTTP error (${e.statusCode}): ${e.message}`),Error.captureStackTrace(this,this.constructor),this.statusCode=e.statusCode;}get name(){return "SolanaHttpError"}};function Pr(e){let t={};for(let r in e)t[r.toLowerCase()]=e[r];return t}function pt({httpAgentNodeOnly:e,headers:t,url:r}){let n=void 0;let o=t&&Pr(t);return async function({payload:i,signal:a}){let u=JSON.stringify(i),l={agent:n,body:u,headers:{...o,accept:"application/json","content-length":u.length.toString(),"content-type":"application/json; charset=utf-8"},method:"POST",signal:a},p=await kr(r,l);if(!p.ok)throw new Nr({message:p.statusText,statusCode:p.status});return await p.json()}}var X=globalThis.WebSocket,ut=Symbol(void 0);async function Dr({sendBufferHighWatermark:e,signal:t,url:r}){return new Promise((n,o)=>{t.addEventListener("abort",a,{once:!0});let s=new Map;function i(h){let y=[...s.values()].filter(x=>x.__hasPolled).map(({onError:x})=>x);s.clear(),y.forEach(x=>{try{x(h);}catch{}});}function a(){i(ut),b.readyState!==X.CLOSED&&b.readyState!==X.CLOSING&&b.close(1e3);}function u(h){f?.onCancel(),t.removeEventListener("abort",a),b.removeEventListener("close",u),b.removeEventListener("error",l),b.removeEventListener("open",g),b.removeEventListener("message",E),i(h);}function l(h){p||o(new Error("WebSocket failed to connect",{cause:h}));}let p=!1,f;function g(){p=!0,n({async send(h){let y=JSON.stringify(h);if(!f&&b.readyState===X.OPEN&&b.bufferedAmount>e){let x,L=new Promise((K,xt)=>{let ke=setInterval(()=>{(b.readyState!==X.OPEN||!(b.bufferedAmount>e))&&(clearInterval(ke),f=void 0,K());},16);x=()=>{f=void 0,clearInterval(ke),xt(new Error("WebSocket was closed before payload could be sent"));};});f={onCancel:x,promise:L};}f&&await f.promise,b.send(y);},async*[Symbol.asyncIterator](){let h=Symbol();s.set(h,{__hasPolled:!1,queuedMessages:[]});try{for(;;){let y=s.get(h);if(!y)throw new Error("Invariant: WebSocket message iterator is missing state storage");if(y.__hasPolled)throw new Error("Invariant: WebSocket message iterator state is corrupt; iterated without first resolving existing message promise");let x=y.queuedMessages;if(x.length)y.queuedMessages=[],yield*x;else try{yield await new Promise((L,K)=>{s.set(h,{__hasPolled:!0,onError:K,onMessage:L});});}catch(L){if(L===ut)return;throw new Error("WebSocket connection closed",{cause:L})}}}finally{s.delete(h);}}});}function E({data:h}){let y=JSON.parse(h);s.forEach((x,L)=>{if(x.__hasPolled){let{onMessage:K}=x;s.set(L,{__hasPolled:!1,queuedMessages:[]}),K(y);}else x.queuedMessages.push(y);});}let b=new X(r);b.addEventListener("close",u),b.addEventListener("error",l),b.addEventListener("open",g),b.addEventListener("message",E);})}function ft({sendBufferHighWatermark:e,url:t}){if(/^wss?:/i.test(t)===!1){let r=t.match(/^([^:]+):/);throw new DOMException(r?`Failed to construct 'WebSocket': The URL's scheme must be either 'ws' or 'wss'. '${r[1]}:' is not allowed.`:`Failed to construct 'WebSocket': The URL '${t}' is invalid.`)}return async function({payload:n,signal:o}){o?.throwIfAborted();let s=await Dr({sendBufferHighWatermark:e,signal:o,url:t});return o?.throwIfAborted(),await s.send(n),{[Symbol.asyncIterator]:s[Symbol.asyncIterator].bind(s),send_DO_NOT_USE_OR_YOU_WILL_BE_FIRED:s.send.bind(s)}}}var bt=Ne(Ce(),1);c();c();var pe=class extends Error{constructor(r,n,o){let s=(typeof n[0]=="number"?n[0]:parseInt(n[0],10))+1,i="",a=s%10,u=s%100;a==1&&u!=11?i=s+"st":a==2&&u!=12?i=s+"nd":a==3&&u!=13?i=s+"rd":i=s+"th";let l=n.length>1?n.slice(1).map(p=>typeof p=="number"?`[${p}]`:p).join("."):null;super(`The ${i} argument to the \`${r}\` RPC method${l?` at path \`${l}\``:""} was \`${o}\`. This number is unsafe for use with the Solana JSON-RPC because it exceeds \`Number.MAX_SAFE_INTEGER\`.`);this.keyPath=n,this.methodName=r,this.value=o;}get name(){return "SolanaJsonRpcIntegerOverflowError"}};var fe={onIntegerOverflow(e,t,r){throw new pe(e,t,r)}};c();c();function Ur(e,t){(async()=>{try{for await(let r of e);}catch{}finally{t();}})();}function me({getAbortSignalFromInputArgs:e,getCacheEntryMissingError:t,getCacheKeyFromInputArgs:r,onCacheHit:n,onCreateIterable:o}){let s=new Map;function i(a){let u=s.get(a);if(!u)throw t(a);return u}return async(...a)=>{let u=r(...a),l=e(...a);if(u===void 0)return await o(l,...a);let p=()=>{s.delete(u),l.removeEventListener("abort",f);},f=()=>{let g=i(u);g.purgeScheduled!==!0&&(g.purgeScheduled=!0,globalThis.queueMicrotask(()=>{g.purgeScheduled=!1,g.referenceCount===0&&(g.abortController.abort(),p());})),g.referenceCount--;};l.addEventListener("abort",f);try{let g=s.get(u);if(g){g.referenceCount++;let E=g.iterable,b="then"in E?await E:E;return await n(b,...a),b}else {let E=new AbortController,b=o(E.signal,...a),h={abortController:E,iterable:b,purgeScheduled:!1,referenceCount:1};s.set(u,h);let y=await b;return Ur(y,p),h.iterable=y,y}}catch(g){throw p(),g}}}var ve=Symbol(void 0);function Mr(e,t){(async()=>{try{for await(let r of e);}catch{}finally{t();}})();}function gt({getDeduplicationKey:e,rpcSubscriptions:t}){let r=new Map;return new Proxy(t,{defineProperty(){return !1},deleteProperty(){return !1},get(n,o,s){let i=Reflect.get(n,o,s);return typeof i!="function"?i:function(...a){let u=e(o,a);if(u===void 0)return i(...a);if(r.has(u))return r.get(u);let l=me({getAbortSignalFromInputArgs:({abortSignal:f})=>f,getCacheEntryMissingError(f){return new Error(`Found no cache entry for subscription with deduplication key \`${f?.toString()}\``)},getCacheKeyFromInputArgs:()=>u,async onCacheHit(f,g){},async onCreateIterable(f,g){let b=await i(...a).subscribe({...g,abortSignal:f});return Mr(b,()=>{r.delete(u);}),b}}),p={async subscribe(...f){let g=await l(...f),{abortSignal:E}=f[0],b;return {...g,async*[Symbol.asyncIterator](){b||(b=E.aborted?Promise.reject(ve):new Promise((h,y)=>{E.addEventListener("abort",()=>{y(ve);});}));try{let h=g[Symbol.asyncIterator]();for(;;){let y=await Promise.race([h.next(),b]);if(y.done)return;yield y.value;}}catch(h){if(h===ve)return;throw r.delete(u),h}}}}};return r.set(u,p),p}}})}function ei(e){return dt({...e,api:at(fe)})}function ti(e){return F(ze({...e,api:Ae(fe)}),t=>gt({getDeduplicationKey:(...r)=>(0, bt.default)(r),rpcSubscriptions:t}))}function ri(e){return ze({...e,api:ct(fe)})}c();c();function ht(e,t){let r;return async function(o){let{payload:s,signal:i}=o,a=t(s);if(a===void 0)return await e(o);if(r||(Promise.resolve().then(()=>{r=void 0;}),r={}),r[a]==null){let l=new AbortController;r[a]={abortController:l,numConsumers:0,responsePromise:e({...o,signal:l.signal})};}let u=r[a];if(u.numConsumers++,i){let l=u.responsePromise;return await new Promise((p,f)=>{let g=E=>{i.removeEventListener("abort",g),u.numConsumers-=1,u.numConsumers===0&&u.abortController.abort();let b=new DOMException(E.target.reason,"AbortError");f(b);};i.addEventListener("abort",g),l.then(p).finally(()=>{i.removeEventListener("abort",g);});})}else return await u.responsePromise}}c();var yt=Ne(Ce(),1);function Fr(e){return e==null||typeof e!="object"||Array.isArray(e)?!1:"jsonrpc"in e&&e.jsonrpc==="2.0"&&"method"in e&&typeof e.method=="string"&&"params"in e}function St(e){return Fr(e)?(0, yt.default)([e.method,e.params]):void 0}function Kr(e){let t={};for(let r in e)t[r.toLowerCase()]=e[r];return t}function fi(e){return F(pt({...e,headers:{...e.headers?Kr(e.headers):void 0,"solana-client":"js/2.0.0-development"}}),t=>ht(t,St))}c();c();var jr={jsonrpc:"2.0",method:"ping"};function wt({intervalMs:e,transport:t}){let r=new Map;return async(...n)=>{let o=await t(...n),s;function i(){o.send_DO_NOT_USE_OR_YOU_WILL_BE_FIRED(jr);}function a(){clearInterval(s),s=setInterval(i,e);}if(r.has(o)===!1){r.set(o,{[Symbol.asyncIterator]:o[Symbol.asyncIterator].bind(o),send_DO_NOT_USE_OR_YOU_WILL_BE_FIRED:(...p)=>(a(),o.send_DO_NOT_USE_OR_YOU_WILL_BE_FIRED(...p))}),(async()=>{try{for await(let p of o)a();}catch{}finally{r.delete(o),clearInterval(s),u&&globalThis.window.removeEventListener("offline",u),l&&globalThis.window.removeEventListener("online",l);}})(),globalThis.navigator.onLine&&a();let u,l;u=()=>{clearInterval(s);},l=()=>{i(),a();},globalThis.window.addEventListener("offline",u),globalThis.window.addEventListener("online",l);}return r.get(o)}}c();var Hr=Symbol(void 0);function Et({getShard:e,transport:t}){return me({getAbortSignalFromInputArgs:({signal:r})=>r,getCacheEntryMissingError(r){return new Error(`Found no cache entry for connection with shard key \`${r?.toString()}\``)},getCacheKeyFromInputArgs:({payload:r})=>e?e(r):Hr,onCacheHit:(r,{payload:n})=>r.send_DO_NOT_USE_OR_YOU_WILL_BE_FIRED(n),onCreateIterable:(r,n)=>t({...n,signal:r})})}function Ti(e){let{getShard:t,intervalMs:r,...n}=e;return F(ft({...n,sendBufferHighWatermark:e.sendBufferHighWatermark??131072}),o=>wt({intervalMs:r??5e3,transport:o}),o=>Et({getShard:t,transport:o}))}
|
|
9
|
+
For a list of runtimes that currently support Ed25519 operations, visit https://github.com/WICG/webcrypto-secure-curves/issues/20`)}async function mn(){var e;if(X(),typeof globalThis.crypto>"u"||typeof((e=globalThis.crypto.subtle)==null?void 0:e.exportKey)!="function")throw new Error("No key export implementation could be found")}async function gn(){var e;if(X(),typeof globalThis.crypto>"u"||typeof((e=globalThis.crypto.subtle)==null?void 0:e.sign)!="function")throw new Error("No signing implementation could be found")}async function bn(){var e;if(X(),typeof globalThis.crypto>"u"||typeof((e=globalThis.crypto.subtle)==null?void 0:e.verify)!="function")throw new Error("No signature verification implementation could be found")}var Ee,xe;function Ie(){return Ee||(Ee=k()),Ee}function Qt(){return xe||(xe=U()),xe}function er(e){return !(e.length<32||e.length>44||Ie().encode(e).byteLength!==32)}function Z(e){try{if(e.length<32||e.length>44)throw new Error("Expected input string to decode to a byte array of length 32.");let r=Ie().encode(e).byteLength;if(r!==32)throw new Error(`Expected input string to decode to a byte array of length 32. Actual length: ${r}`)}catch(n){throw new Error(`\`${e}\` is not a base-58 encoded address`,{cause:n})}}function nr(e){return Z(e),e}function pe(e){var n;return G(ue({description:(n=e==null?void 0:e.description)!=null?n:"Address",encoding:Ie(),size:32}),t=>nr(t))}function Q(e){var n;return le({description:(n=e==null?void 0:e.description)!=null?n:"Address",encoding:Qt(),size:32})}function yn(e){return N(pe(e),Q(e))}function me(){return new Intl.Collator("en",{caseFirst:"lower",ignorePunctuation:!1,localeMatcher:"best fit",numeric:!1,sensitivity:"variant",usage:"sort"}).compare}var tr=37095705934669439343138083508754565189542113879843219016388785533085940283555n,E=57896044618658097711785492504343953926634992332820282019728792003956564819949n,hn=19681161376707505956807079304988542015446066515923890162744021073123829784752n;function I(e){let n=e%E;return n>=0n?n:E+n}function C(e,n){let t=e;for(;n-- >0n;)t*=t,t%=E;return t}function rr(e){let t=e*e%E*e%E,r=C(t,2n)*t%E,o=C(r,1n)*e%E,i=C(o,5n)*o%E,a=C(i,10n)*i%E,s=C(a,20n)*a%E,c=C(s,40n)*s%E,u=C(c,80n)*c%E,f=C(u,80n)*c%E,p=C(f,10n)*i%E;return C(p,2n)*e%E}function or(e,n){let t=I(n*n*n),r=I(t*t*n),o=rr(e*r),i=I(e*t*o),a=I(n*i*i),s=i,c=I(i*hn),u=a===e,f=a===I(-e),p=a===I(-e*hn);return u&&(i=s),(f||p)&&(i=c),(I(i)&1n)===1n&&(i=I(-i)),!u&&!f?null:i}function ir(e,n){let t=I(e*e),r=I(t-1n),o=I(tr*t+1n),i=or(r,o);if(i===null)return !1;let a=(n&128)!==0;return !(i===0n&&a)}function ar(e){let n=e.toString(16);return n.length===1?`0${n}`:n}function sr(e){let t=`0x${e.reduce((r,o,i)=>`${ar(i===31?o&-129:o)}${r}`,"")}`;return BigInt(t)}async function cr(e){if(e.byteLength!==32)return !1;let n=sr(e);return ir(n,e[31])}function ai(e){return Array.isArray(e)&&e.length===2&&typeof e[0]=="string"&&typeof e[1]=="number"&&e[1]>=0&&e[1]<=255&&er(e[0])}function si(e){if(!(Array.isArray(e)&&e.length===2&&typeof e[0]=="string"&&typeof e[1]=="number"))throw new Error("Expected given program derived address to have the following format: [Address, ProgramDerivedAddressBump].");if(e[1]<0||e[1]>255)throw new Error(`Expected program derived address bump to be in the range [0, 255], got: ${e[1]}.`);Z(e[0]);}var wn=32,Sn=16,fe=[80,114,111,103,114,97,109,68,101,114,105,118,101,100,65,100,100,114,101,115,115],An=class extends Error{};async function dr({programAddress:e,seeds:n}){if(await fn(),n.length>Sn)throw new Error(`A maximum of ${Sn} seeds may be supplied when creating an address`);let t,r=n.reduce((c,u,f)=>{let p=typeof u=="string"?(t||(t=new TextEncoder)).encode(u):u;if(p.byteLength>wn)throw new Error(`The seed at index ${f} exceeds the maximum length of 32 bytes`);return c.push(...p),c},[]),o=yn(),i=o.encode(e),a=await crypto.subtle.digest("SHA-256",new Uint8Array([...r,...i,...fe])),s=new Uint8Array(a);if(await cr(s))throw new An("Invalid seeds; point must fall off the Ed25519 curve");return o.decode(s)[0]}async function ci({programAddress:e,seeds:n}){let t=255;for(;t>0;)try{return [await dr({programAddress:e,seeds:[...n,new Uint8Array([t])]}),t]}catch(r){if(r instanceof An)t--;else throw r}throw new Error("Unable to find a viable program address bump seed")}async function di({baseAddress:e,programAddress:n,seed:t}){let{encode:r,decode:o}=yn(),i=typeof t=="string"?new TextEncoder().encode(t):t;if(i.byteLength>wn)throw new Error("The seed exceeds the maximum length of 32 bytes");let a=r(n);if(a.length>=fe.length&&a.slice(-fe.length).every((u,f)=>u===fe[f]))throw new Error("programAddress cannot end with the PDA marker");let s=await crypto.subtle.digest("SHA-256",new Uint8Array([...r(e),...i,...a])),c=new Uint8Array(s);return o(c)[0]}async function Tn(e){if(await mn(),e.type!=="public"||e.algorithm.name!=="Ed25519")throw new Error("The `CryptoKey` must be an `Ed25519` public key");let n=await crypto.subtle.exportKey("raw",e),[t]=Q().decode(new Uint8Array(n));return t}l();var ur=(e=>(e[e.WRITABLE_SIGNER=3]="WRITABLE_SIGNER",e[e.READONLY_SIGNER=2]="READONLY_SIGNER",e[e.WRITABLE=1]="WRITABLE",e[e.READONLY=0]="READONLY",e))(ur||{}),En=2,Ce=1;function pi(e){return e&~En}function mi(e){return e&~Ce}function gi(e){return e>=2}function bi(e){return (e&Ce)!==0}function hi(e,n){return e|n}function Si(e){return e|En}function yi(e){return e|Ce}l();async function xi(){return await pn(),await crypto.subtle.generateKey("Ed25519",!1,["sign","verify"])}var K;function lr(e){K||(K=k());try{if(e.length<64||e.length>88)throw new Error("Expected input string to decode to a byte array of length 64.");let t=K.encode(e).byteLength;if(t!==64)throw new Error(`Expected input string to decode to a byte array of length 64. Actual length: ${t}`)}catch(n){throw new Error(`\`${e}\` is not a signature`,{cause:n})}}function Ii(e){return K||(K=k()),!(e.length<64||e.length>88||K.encode(e).byteLength!==64)}async function xn(e,n){await gn();let t=await crypto.subtle.sign("Ed25519",e,n);return new Uint8Array(t)}function Ci(e){return lr(e),e}async function Ri(e,n,t){return await bn(),await crypto.subtle.verify("Ed25519",e,n,t)}l();function In(e){switch(e){case"finalized":return 2;case"confirmed":return 1;case"processed":return 0;default:return (n=>{throw new Error(`Unrecognized commitment \`${e}\`.`)})()}}function ge(e,n){return e===n?0:In(e)<In(n)?-1:1}var Cn=18446744073709551615n;function Di(e){return e>=0&&e<=Cn}function fr(e){if(e<0)throw new Error("Input for 64-bit unsigned integer cannot be negative");if(e>Cn)throw new Error("Input number is too large to be represented as a 64-bit unsigned integer")}function Ni(e){return fr(e),e}function ki(e){try{return BigInt(e),!0}catch{return !1}}function pr(e){try{BigInt(e);}catch(n){throw new Error(`\`${e}\` cannot be parsed as a BigInt`,{cause:n})}}function Bi(e){return pr(e),e}function Pi(e){return !Number.isNaN(Number(e))}function mr(e){if(Number.isNaN(Number(e)))throw new Error(`\`${e}\` cannot be parsed as a Number`)}function _i(e){return mr(e),e}function Oi(e){return !(e>864e13||e<-864e13)}function gr(e){try{if(e>864e13||e<-864e13)throw new Error("Expected input number to be in the range [-8.64e15, 8.64e15]")}catch(n){throw new Error(`\`${e}\` is not a timestamp`,{cause:n})}}function Li(e){return gr(e),e}l();l();function be(e){return e.reduce((n,t)=>n===null||t===null?null:n+t,0)}function br(e,n,t,r){if(typeof e=="number")return [e,r];if(typeof e=="object")return e.decode(t,r);if(e==="remainder"){let o=be(n);if(o===null)throw new Error('Codecs of "remainder" size must have fixed-size items.');let i=t.slice(r).length;if(i%o!==0)throw new Error(`The remainder of the byte array (${i} bytes) cannot be split into chunks of ${o} bytes. Codecs of "remainder" size must have a remainder that is a multiple of its item size. In other words, ${i} modulo ${o} should be equal to zero.`);return [i/o,r]}throw new Error(`Unrecognized array-like codec size: ${JSON.stringify(e)}`)}function hr(e){return typeof e=="object"?e.description:`${e}`}function Rn(e,n){if(typeof e!="number")return null;if(e===0)return 0;let t=be(n);return t===null?null:t*e}function Sr(e,n){return typeof e=="object"?e.encode(n):new Uint8Array}function yr(e,n,t){if(n!==t)throw new Error(`Expected [${e}] to have ${n} items, got ${t}.`)}function vn(e,n,t){if(n==="remainder"&&e.fixedSize===null)throw new Error('Codecs of "remainder" size must have fixed-size items.');return {description:t!=null?t:`array(${e.description}; ${hr(n)})`,fixedSize:Rn(n,[e.fixedSize]),maxSize:Rn(n,[e.maxSize])}}function B(e,n={}){var r;let t=(r=n.size)!=null?r:ce();return {...vn(e,t,n.description),encode:o=>(typeof t=="number"&&yr("array",t,o.length),j([Sr(t,o.length),...o.map(i=>e.encode(i))]))}}function P(e,n={}){var r;let t=(r=n.size)!=null?r:de();return {...vn(e,t,n.description),decode:(o,i=0)=>{if(typeof t=="object"&&o.slice(i).length===0)return [[],i];let[a,s]=br(t,[e.fixedSize],o,i);i=s;let c=[];for(let u=0;u<a;u+=1){let[f,p]=e.decode(o,i);c.push(f),i=p;}return [c,i]}}}function Re(e={}){var i,a;let n=(i=e.size)!=null?i:"variable",t=typeof n=="object"?n.description:`${n}`,r=(a=e.description)!=null?a:`bytes(${t})`,o={description:r,encode:s=>s,fixedSize:null,maxSize:null};return n==="variable"?o:typeof n=="number"?ae(o,n,r):{...o,encode:s=>{let c=o.encode(s),u=n.encode(c.length);return j([u,c])}}}function ve(e={}){var i,a;let n=(i=e.size)!=null?i:"variable",t=typeof n=="object"?n.description:`${n}`,r=(a=e.description)!=null?a:`bytes(${t})`,o={decode:(s,c=0)=>{let u=s.slice(c);return [u,c+u.length]},description:r,fixedSize:null,maxSize:null};return n==="variable"?o:typeof n=="number"?se(o,n,r):{...o,decode:(s,c=0)=>{H("bytes",s,c);let[u,f]=n.decode(s,c),p=Number(u);c=f;let m=s.slice(c,c+p);O("bytes",p,m);let[y,g]=o.decode(m);return c+=g,[y,c]}}}function zn(e,n){let t=e.map(([r,o])=>`${String(r)}: ${o.description}`).join(", ");return {description:n!=null?n:`struct(${t})`,fixedSize:be(e.map(([,r])=>r.fixedSize)),maxSize:be(e.map(([,r])=>r.maxSize))}}function W(e,n={}){return {...zn(e,n.description),encode:t=>{let r=e.map(([o,i])=>i.encode(t[o]));return j(r)}}}function V(e,n={}){return {...zn(e,n.description),decode:(t,r=0)=>{let o={};return e.forEach(([i,a])=>{let[s,c]=a.decode(t,r);r=c,o[i]=s;}),[o,r]}}}l();function _(e,...n){return n.reduce((t,r)=>r(t),e)}function ne(e){if("signatures"in e){let{signatures:n,...t}=e;return t}else return e}var ze;function ea(e){ze||(ze=k());try{if(e.length<32||e.length>44)throw new Error("Expected input string to decode to a byte array of length 32.");let t=ze.encode(e).byteLength;if(t!==32)throw new Error(`Expected input string to decode to a byte array of length 32. Actual length: ${t}`)}catch(n){throw new Error(`\`${e}\` is not a blockhash`,{cause:n})}}function wr(e,n){if("lifetimeConstraint"in n&&n.lifetimeConstraint.blockhash===e.blockhash&&n.lifetimeConstraint.lastValidBlockHeight===e.lastValidBlockHeight)return n;let t={...ne(n),lifetimeConstraint:e};return Object.freeze(t),t}function Ar({version:e}){let n={instructions:[],version:e};return Object.freeze(n),n}var x=(e=>(e[e.WRITABLE_SIGNER=3]="WRITABLE_SIGNER",e[e.READONLY_SIGNER=2]="READONLY_SIGNER",e[e.WRITABLE=1]="WRITABLE",e[e.READONLY=0]="READONLY",e))(x||{}),Tr=1;function M(e){return e>=2}function ee(e){return (e&Tr)!==0}function Dn(e,n){return e|n}var Bn="SysvarRecentB1ockHashes11111111111111111111",Pn="11111111111111111111111111111111";function na(e){if(!_n(e))throw new Error("Transaction is not a durable nonce transaction")}function Nn(e,n){return {accounts:[{address:e,role:x.WRITABLE},{address:Bn,role:x.READONLY},{address:n,role:x.READONLY_SIGNER}],data:new Uint8Array([4,0,0,0]),programAddress:Pn}}function $e(e){var n;return e.programAddress===Pn&&e.data!=null&&Er(e.data)&&((n=e.accounts)==null?void 0:n.length)===3&&e.accounts[0].address!=null&&e.accounts[0].role===x.WRITABLE&&e.accounts[1].address===Bn&&e.accounts[1].role===x.READONLY&&e.accounts[2].address!=null&&M(e.accounts[2].role)}function Er(e){return e.byteLength===4&&e[0]===4&&e[1]===0&&e[2]===0&&e[3]===0}function _n(e){return "lifetimeConstraint"in e&&typeof e.lifetimeConstraint.nonce=="string"&&e.instructions[0]!=null&&$e(e.instructions[0])}function xr(e,n,t){return e.accounts[0].address===n&&e.accounts[2].address===t}function Ir({nonce:e,nonceAccountAddress:n,nonceAuthorityAddress:t},r){let o,i=r.instructions[0];if(i&&$e(i))if(xr(i,n,t)){if(_n(r)&&r.lifetimeConstraint.nonce===e)return r;o=[i,...r.instructions.slice(1)];}else o=[Nn(n,t),...r.instructions.slice(1)];else o=[Nn(n,t),...r.instructions];let a={...ne(r),instructions:o,lifetimeConstraint:{nonce:e}};return Object.freeze(a),a}function Cr(e,n){if("feePayer"in n&&e===n.feePayer)return n;let t={...ne(n),feePayer:e};return Object.freeze(t),t}function Rr(e,n){let t={...ne(n),instructions:[...n.instructions,e]};return Object.freeze(t),t}function ta(e,n){let t={...ne(n),instructions:[e,...n.instructions]};return Object.freeze(t),t}function kn(e,n,t){var r;e[n]=t((r=e[n])!=null?r:{role:x.READONLY});}var w=Symbol("AddressMapTypeProperty");function vr(e,n){let t={[e]:{[w]:0,role:x.WRITABLE_SIGNER}},r=new Set;for(let o of n){kn(t,o.programAddress,a=>{if(r.add(o.programAddress),w in a){if(ee(a.role))switch(a[w]){case 0:throw new Error(`This transaction includes an address (\`${o.programAddress}\`) which is both invoked and set as the fee payer. Program addresses may not pay fees.`);default:throw new Error(`This transaction includes an address (\`${o.programAddress}\`) which is both invoked and marked writable. Program addresses may not be writable.`)}if(a[w]===2)return a}return {[w]:2,role:x.READONLY}});let i;if(o.accounts)for(let a of o.accounts)kn(t,a.address,s=>{let{address:c,...u}=a;if(w in s)switch(s[w]){case 0:return s;case 1:{let f=Dn(s.role,u.role);if("lookupTableAddress"in u){if(s.lookupTableAddress!==u.lookupTableAddress&&(i||(i=me()))(u.lookupTableAddress,s.lookupTableAddress)<0)return {[w]:1,...u,role:f}}else if(M(u.role))return {[w]:2,role:f};return s.role!==f?{...s,role:f}:s}case 2:{let f=Dn(s.role,u.role);if(r.has(a.address)){if(ee(u.role))throw new Error(`This transaction includes an address (\`${a.address}\`) which is both invoked and marked writable. Program addresses may not be writable.`);return s.role!==f?{...s,role:f}:s}else return "lookupTableAddress"in u&&!M(s.role)?{...u,[w]:1,role:f}:s.role!==f?{...s,role:f}:s}}return "lookupTableAddress"in u?{...u,[w]:1}:{...u,[w]:2}});}return t}function zr(e){let n;return Object.entries(e).sort(([r,o],[i,a])=>{if(o[w]!==a[w]){if(o[w]===0)return -1;if(a[w]===0)return 1;if(o[w]===2)return -1;if(a[w]===2)return 1}let s=M(o.role);if(s!==M(a.role))return s?-1:1;let c=ee(o.role);return c!==ee(a.role)?c?-1:1:(n||(n=me()),o[w]===1&&a[w]===1&&o.lookupTableAddress!==a.lookupTableAddress?n(o.lookupTableAddress,a.lookupTableAddress):n(r,i))}).map(([r,o])=>({address:r,...o}))}function Dr(e){var t;let n={};for(let r of e){if(!("lookupTableAddress"in r))continue;let o=n[t=r.lookupTableAddress]||(n[t]={readableIndices:[],writableIndices:[]});r.role===x.WRITABLE?o.writableIndices.push(r.addressIndex):o.readableIndices.push(r.addressIndex);}return Object.keys(n).sort(me()).map(r=>({lookupTableAddress:r,...n[r]}))}function Nr(e){let n=0,t=0,r=0;for(let o of e){if("lookupTableAddress"in o)break;let i=ee(o.role);M(o.role)?(r++,i||t++):i||n++;}return {numReadonlyNonSignerAccounts:n,numReadonlySignerAccounts:t,numSignerAccounts:r}}function kr(e){let n={};for(let[t,r]of e.entries())n[r.address]=t;return n}function Br(e,n){let t=kr(n);return e.map(({accounts:r,data:o,programAddress:i})=>({programAddressIndex:t[i],...r?{accountIndices:r.map(({address:a})=>t[a])}:null,...o?{data:o}:null}))}function Pr(e){return "nonce"in e?e.nonce:e.blockhash}function _r(e){let n=e.findIndex(r=>"lookupTableAddress"in r);return (n===-1?e:e.slice(0,n)).map(({address:r})=>r)}function On(e){let n=vr(e.feePayer,e.instructions),t=zr(n);return {...e.version!=="legacy"?{addressTableLookups:Dr(t)}:null,header:Nr(t),instructions:Br(e.instructions,t),lifetimeToken:Pr(e.lifetimeConstraint),staticAccounts:_r(t),version:e.version}}var Ln="lookupTableAddress",Fn="writableIndices",Un="readableIndices",$n="addressTableLookup",De;function Or(){return De||(De=W([["lookupTableAddress",pe({description:Ln})],["writableIndices",B(L(),{description:Fn,size:R()})],["readableIndices",B(L(),{description:Un,size:R()})]],{description:$n})),De}var Ne;function Lr(){return Ne||(Ne=V([["lookupTableAddress",Q({description:Ln})],["writableIndices",P(F(),{description:Fn,size:v()})],["readableIndices",P(F(),{description:Un,size:v()})]],{description:$n})),Ne}var ke;function Fr(){return ke||(ke=L()),ke}function Be(e){let n=Fr();return {...n,description:e!=null?e:n.description}}var Pe;function Ur(){return Pe||(Pe=F()),Pe}function _e(e){let n=Ur();return {...n,description:e!=null?e:n.description}}var Wn=void 0,Mn=void 0,Hn=void 0,jn=void 0;function $r(){return W([["numSignerAccounts",Be(Wn)],["numReadonlySignerAccounts",Be(Mn)],["numReadonlyNonSignerAccounts",Be(Hn)]],{description:jn})}function Wr(){return V([["numSignerAccounts",_e(Wn)],["numReadonlySignerAccounts",_e(Mn)],["numReadonlyNonSignerAccounts",_e(Hn)]],{description:jn})}var Gn="programAddressIndex",Kn=void 0,Vn="accountIndices",qn="data",Oe;function Mr(){return Oe||(Oe=G(W([["programAddressIndex",L({description:Gn})],["accountIndices",B(L({description:Kn}),{description:Vn,size:R()})],["data",Re({description:qn,size:R()})]]),e=>{var n,t;return e.accountIndices!==void 0&&e.data!==void 0?e:{...e,accountIndices:(n=e.accountIndices)!=null?n:[],data:(t=e.data)!=null?t:new Uint8Array(0)}})),Oe}var Le;function Hr(){return Le||(Le=J(V([["programAddressIndex",F({description:Gn})],["accountIndices",P(F({description:Kn}),{description:Vn,size:v()})],["data",ve({description:qn,size:v()})]]),e=>{if(e.accountIndices.length&&e.data.byteLength)return e;let{accountIndices:n,data:t,...r}=e;return {...r,...n.length?{accountIndices:n}:null,...t.byteLength?{data:t}:null}})),Le}var Ue=128,Yn={description:"",fixedSize:null,maxSize:1};function jr(e,n=0){let t=e[n];return t&Ue?[t^Ue,n+1]:["legacy",n]}function Gr(e){if(e==="legacy")return new Uint8Array;if(e<0||e>127)throw new Error(`Transaction version must be in the range [0, 127]. \`${e}\` given.`);return new Uint8Array([e|Ue])}function Kr(){return {...Yn,decode:jr}}function Vr(){return {...Yn,encode:Gr}}var Jn="staticAccounts",Xn="lifetimeToken",Zn="instructions",Qn="addressTableLookups";function qr(){return W(et())}function Yr(){return G(W([...et(),["addressTableLookups",Xr()]]),e=>{var n;return e.version==="legacy"?e:{...e,addressTableLookups:(n=e.addressTableLookups)!=null?n:[]}})}function et(){return [["version",Vr()],["header",$r()],["staticAccounts",B(pe(),{description:Jn,size:R()})],["lifetimeToken",ue({description:Xn,encoding:k(),size:32})],["instructions",B(Mr(),{description:Zn,size:R()})]]}function Jr(){return [["version",Kr()],["header",Wr()],["staticAccounts",P(Q(),{description:Jn,size:v()})],["lifetimeToken",le({description:Xn,encoding:U(),size:32})],["instructions",P(Hr(),{description:Zn,size:v()})],["addressTableLookups",Zr()]]}function Xr(){return B(Or(),{description:Qn,size:R()})}function Zr(){return P(Lr(),{description:Qn,size:v()})}var nt="message";function We(){return {description:nt,encode:e=>e.version==="legacy"?qr().encode(e):Yr().encode(e),fixedSize:null,maxSize:null}}function tt(){return J(V(Jr(),{description:nt}),({addressTableLookups:e,...n})=>n.version==="legacy"||!(e!=null&&e.length)?n:{...n,addressTableLookups:e})}function ra(){return N(We(),tt())}function Qr(e){var r;let n=On(e),t;if("signatures"in e){t=[];for(let o=0;o<n.header.numSignerAccounts;o++)t[o]=(r=e.signatures[n.staticAccounts[o]])!=null?r:new Uint8Array(Array(64).fill(0));}else t=Array(n.header.numSignerAccounts).fill(new Uint8Array(Array(64).fill(0)));return {compiledMessage:n,signatures:t}}function eo(e){let{header:n}=e,t=n.numSignerAccounts-n.numReadonlySignerAccounts,r=e.staticAccounts.length-n.numSignerAccounts-n.numReadonlyNonSignerAccounts,o=[],i=0;for(let a=0;a<t;a++)o.push({address:e.staticAccounts[i],role:x.WRITABLE_SIGNER}),i++;for(let a=0;a<n.numReadonlySignerAccounts;a++)o.push({address:e.staticAccounts[i],role:x.READONLY_SIGNER}),i++;for(let a=0;a<r;a++)o.push({address:e.staticAccounts[i],role:x.WRITABLE}),i++;for(let a=0;a<n.numReadonlyNonSignerAccounts;a++)o.push({address:e.staticAccounts[i],role:x.READONLY}),i++;return o}function no(e,n){var i,a;let t=(i=n[e.programAddressIndex])==null?void 0:i.address;if(!t)throw new Error(`Could not find program address at index ${e.programAddressIndex}`);let r=(a=e.accountIndices)==null?void 0:a.map(s=>n[s]),{data:o}=e;return {programAddress:t,...r&&r.length?{accounts:r}:{},...o&&o.length?{data:o}:{}}}function to(e,n,t){if(!n||!$e(n))return {blockhash:e,lastValidBlockHeight:t!=null?t:2n**64n-1n};{let r=n.accounts[0].address;Z(r);let o=n.accounts[2].address;return Z(o),{nonce:e,nonceAccountAddress:r,nonceAuthorityAddress:o}}}function ro(e){let{compiledMessage:{staticAccounts:n},signatures:t}=e;return t.reduce((r,o,i)=>{if(o.every(c=>c===0))return r;let s=n[i];return {...r,[s]:o}},{})}function oo(e,n){let{compiledMessage:t}=e;if("addressTableLookups"in t&&t.addressTableLookups.length>0)throw new Error("Cannot convert transaction with addressTableLookups");let r=t.staticAccounts[0];if(!r)throw new Error("No fee payer set in CompiledTransaction");let o=eo(t),i=t.instructions.map(u=>no(u,o)),a=i[0],s=to(t.lifetimeToken,a,n),c=ro(e);return _(Ar({version:t.version}),u=>Cr(r,u),u=>i.reduce((f,p)=>Rr(p,f),u),u=>"blockhash"in s?wr(s,u):Ir(s,u),u=>e.signatures.length?{...u,signatures:c}:u)}var rt="signatures",ot="transaction";function io(){return W([["signatures",B(Re({size:64}),{description:rt,size:R()})],["compiledMessage",We()]],{description:ot})}function ao(){return J(ve({size:64}),e=>e)}function so(){return V([["signatures",P(ao(),{description:rt,size:v()})],["compiledMessage",tt()]],{description:ot})}function it(){return G(io(),Qr)}function co(e){return J(so(),n=>oo(n,e))}function oa(e){return N(it(),co(e))}var Fe;function Me(e){Fe||(Fe=U());let n=e.signatures[e.feePayer];if(!n)throw new Error("Could not determine this transaction's signature. Make sure that the transaction has been signed by its fee payer.");return Fe.decode(n)[0]}async function uo(e,n){let t=On(n),r="signatures"in n?{...n.signatures}:{},o=We().encode(t),i=await Promise.all(e.map(s=>Promise.all([Tn(s.publicKey),xn(s.privateKey,o)])));for(let[s,c]of i)r[s]=c;let a={...n,signatures:r};return Object.freeze(a),a}async function ia(e,n){let t=await uo(e,n);return lo(t),Object.freeze(t),t}function lo(e){let n=e.instructions.flatMap(r=>{var o,i;return (i=(o=r.accounts)==null?void 0:o.filter(a=>M(a.role)))!=null?i:[]}).map(r=>r.address);new Set([e.feePayer,...n]).forEach(r=>{if(!e.signatures[r])throw new Error(`Transaction is missing signature for address \`${r}\``)});}function at(e){let n=it().encode(e);return un().decode(n)[0]}l();l();l();async function te(e,n,t){let{abortSignal:r,commitment:o,getRecentSignatureConfirmationPromise:i}=n;r==null||r.throwIfAborted();let a=new AbortController;if(r){let s=()=>{a.abort();};r.addEventListener("abort",s,{signal:a.signal});}try{let s=t({...n,abortSignal:a.signal});return await Promise.race([i({abortSignal:a.signal,commitment:o,signature:e}),...s])}finally{a.abort();}}l();function re(e,n){return async function({abortSignal:r,commitment:o,signature:i}){let a=new AbortController;function s(){a.abort();}r.addEventListener("abort",s,{signal:a.signal});let c=await n.signatureNotifications(i,{commitment:o}).subscribe({abortSignal:a.signal}),u=(async()=>{for await(let p of c){if(p.value.err)throw new Error(`The transaction with signature \`${i}\` failed.`,{cause:p.value.err});return}})(),f=(async()=>{let{value:p}=await e.getSignatureStatuses([i]).send({abortSignal:a.signal}),m=p[0];m&&m.confirmationStatus&&ge(m.confirmationStatus,o)>=0||await new Promise(()=>{});})();try{return await Promise.race([u,f])}finally{a.abort();}}}l();async function st({abortSignal:e,commitment:n}){return await new Promise((t,r)=>{let o=c=>{clearTimeout(s);let u=new DOMException(c.target.reason,"AbortError");r(u);};e.addEventListener("abort",o);let i=n==="processed"?3e4:6e4,a=performance.now(),s=setTimeout(()=>{let c=performance.now()-a;r(new DOMException(`Timeout elapsed after ${c} ms`,"TimeoutError"));},i);})}function ct({rpc:e,rpcSubscriptions:n}){let t=re(e,n);return async function(o){await fo({...o,getRecentSignatureConfirmationPromise:t,getTimeoutPromise:st});}}async function fo(e){await te(e.signature,e,function({abortSignal:t,commitment:r,getTimeoutPromise:o}){return [o({abortSignal:t,commitment:r})]});}function Ea({rpc:e,rpcSubscriptions:n}){let t=ct({rpc:e,rpcSubscriptions:n});return async function(o){return await po({...o,confirmSignatureOnlyTransaction:t,rpc:e})}}async function po({abortSignal:e,commitment:n,confirmSignatureOnlyTransaction:t,lamports:r,recipientAddress:o,rpc:i}){let a=await i.requestAirdrop(o,r,{commitment:n}).send({abortSignal:e});return await t({abortSignal:e,commitment:n,signature:a}),a}l();l();function Ge(e,n,t){if(Array.isArray(e))return e.map((r,o)=>Ge(r,[...n,o],t));if(typeof e=="object"&&e!==null){let r={};for(let o in e)Object.prototype.hasOwnProperty.call(e,o)&&(r[o]=Ge(e[o],[...n,o],t));return r}else return typeof e=="bigint"?(t&&(e>Number.MAX_SAFE_INTEGER||e<-Number.MAX_SAFE_INTEGER)&&t(n,e),Number(e)):e}function ut(e,n){return Ge(e,[],n)}var d={},Ke=[["data","parsed","info","tokenAmount","decimals"],["data","parsed","info","tokenAmount","uiAmount"],["data","parsed","info","rentExemptReserve","decimals"],["data","parsed","info","rentExemptReserve","uiAmount"],["data","parsed","info","delegatedAmount","decimals"],["data","parsed","info","delegatedAmount","uiAmount"],["data","parsed","info","extensions",d,"state","olderTransferFee","transferFeeBasisPoints"],["data","parsed","info","extensions",d,"state","newerTransferFee","transferFeeBasisPoints"],["data","parsed","info","extensions",d,"state","preUpdateAverageRate"],["data","parsed","info","extensions",d,"state","currentRate"]],q=[...Ke,["data","parsed","info","lastExtendedSlotStartIndex"],["data","parsed","info","slashPenalty"],["data","parsed","info","warmupCooldownRate"],["data","parsed","info","decimals"],["data","parsed","info","numRequiredSigners"],["data","parsed","info","numValidSigners"],["data","parsed","info","stake","delegation","warmupCooldownRate"],["data","parsed","info","exemptionThreshold"],["data","parsed","info","burnPercent"],["data","parsed","info","commission"],["data","parsed","info","votes",d,"confirmationCount"]],He,je;function mo(){return He||(He={accountNotifications:q.map(e=>["value",...e]),blockNotifications:[["value","block","blockTime"],["value","block","transactions",d,"meta","preTokenBalances",d,"accountIndex"],["value","block","transactions",d,"meta","preTokenBalances",d,"uiTokenAmount","decimals"],["value","block","transactions",d,"meta","postTokenBalances",d,"accountIndex"],["value","block","transactions",d,"meta","postTokenBalances",d,"uiTokenAmount","decimals"],["value","block","transactions",d,"meta","rewards",d,"commission"],["value","block","transactions",d,"meta","innerInstructions",d,"index"],["value","block","transactions",d,"meta","innerInstructions",d,"instructions",d,"programIdIndex"],["value","block","transactions",d,"meta","innerInstructions",d,"instructions",d,"accounts",d],["value","block","transactions",d,"transaction","message","addressTableLookups",d,"writableIndexes",d],["value","block","transactions",d,"transaction","message","addressTableLookups",d,"readonlyIndexes",d],["value","block","transactions",d,"transaction","message","instructions",d,"programIdIndex"],["value","block","transactions",d,"transaction","message","instructions",d,"accounts",d],["value","block","transactions",d,"transaction","message","header","numReadonlySignedAccounts"],["value","block","transactions",d,"transaction","message","header","numReadonlyUnsignedAccounts"],["value","block","transactions",d,"transaction","message","header","numRequiredSignatures"],["value","block","rewards",d,"commission"]],programNotifications:q.flatMap(e=>[["value",d,"account",...e],[d,"account",...e]])}),He}function go(){return je||(je={getAccountInfo:q.map(e=>["value",...e]),getBlock:[["blockTime"],["transactions",d,"meta","preTokenBalances",d,"accountIndex"],["transactions",d,"meta","preTokenBalances",d,"uiTokenAmount","decimals"],["transactions",d,"meta","postTokenBalances",d,"accountIndex"],["transactions",d,"meta","postTokenBalances",d,"uiTokenAmount","decimals"],["transactions",d,"meta","rewards",d,"commission"],["transactions",d,"meta","innerInstructions",d,"index"],["transactions",d,"meta","innerInstructions",d,"instructions",d,"programIdIndex"],["transactions",d,"meta","innerInstructions",d,"instructions",d,"accounts",d],["transactions",d,"transaction","message","addressTableLookups",d,"writableIndexes",d],["transactions",d,"transaction","message","addressTableLookups",d,"readonlyIndexes",d],["transactions",d,"transaction","message","instructions",d,"programIdIndex"],["transactions",d,"transaction","message","instructions",d,"accounts",d],["transactions",d,"transaction","message","header","numReadonlySignedAccounts"],["transactions",d,"transaction","message","header","numReadonlyUnsignedAccounts"],["transactions",d,"transaction","message","header","numRequiredSignatures"],["rewards",d,"commission"]],getBlockTime:[[]],getClusterNodes:[[d,"featureSet"],[d,"shredVersion"]],getInflationGovernor:[["initial"],["foundation"],["foundationTerm"],["taper"],["terminal"]],getInflationRate:[["foundation"],["total"],["validator"]],getInflationReward:[[d,"commission"]],getMultipleAccounts:q.map(e=>["value",d,...e]),getProgramAccounts:q.flatMap(e=>[["value",d,"account",...e],[d,"account",...e]]),getRecentPerformanceSamples:[[d,"samplePeriodSecs"]],getTokenAccountBalance:[["value","decimals"],["value","uiAmount"]],getTokenAccountsByDelegate:Ke.map(e=>["value",d,"account",...e]),getTokenAccountsByOwner:Ke.map(e=>["value",d,"account",...e]),getTokenLargestAccounts:[["value",d,"decimals"],["value",d,"uiAmount"]],getTokenSupply:[["value","decimals"],["value","uiAmount"]],getTransaction:[["meta","preTokenBalances",d,"accountIndex"],["meta","preTokenBalances",d,"uiTokenAmount","decimals"],["meta","postTokenBalances",d,"accountIndex"],["meta","postTokenBalances",d,"uiTokenAmount","decimals"],["meta","rewards",d,"commission"],["meta","innerInstructions",d,"index"],["meta","innerInstructions",d,"instructions",d,"programIdIndex"],["meta","innerInstructions",d,"instructions",d,"accounts",d],["transaction","message","addressTableLookups",d,"writableIndexes",d],["transaction","message","addressTableLookups",d,"readonlyIndexes",d],["transaction","message","instructions",d,"programIdIndex"],["transaction","message","instructions",d,"accounts",d],["transaction","message","header","numReadonlySignedAccounts"],["transaction","message","header","numReadonlyUnsignedAccounts"],["transaction","message","header","numRequiredSignatures"]],getVersion:[["feature-set"]],getVoteAccounts:[["current",d,"commission"],["delinquent",d,"commission"]],simulateTransaction:q.map(e=>["value","accounts",d,...e])}),je}function dt(e,n){return e.filter(t=>t[0]===d&&typeof n=="number"||t[0]===n).map(t=>t.slice(1))}function he(e,n){if(Array.isArray(e))return e.map((t,r)=>{let o=dt(n,r);return he(t,o)});if(typeof e=="object"&&e!==null){let t={};for(let[r,o]of Object.entries(e)){let i=dt(n,r);t[r]=he(o,i);}return t}else return typeof e=="number"&&n.length===0&&Number.isInteger(e)?BigInt(e):e}function bo(e,n){let t=n?go()[n]:void 0;return he(e,t!=null?t:[])}function ho(e,n){let t=n?mo()[n]:void 0;return he(e,t!=null?t:[])}function lt(e){return new Proxy({},{defineProperty(){return !1},deleteProperty(){return !1},get(...n){let[t,r]=n,o=r.toString();return function(...i){let a=e==null?void 0:e.onIntegerOverflow,s=ut(i,a?(c,u)=>a(o,c,u):void 0);return {methodName:o,params:s,responseProcessor:c=>bo(c,o)}}}})}function Ve(e){return new Proxy({},{defineProperty(){return !1},deleteProperty(){return !1},get(...n){let[t,r]=n,o=r.toString();return function(...i){let a=e==null?void 0:e.onIntegerOverflow;return {params:ut(i,a?(c,u)=>a(o,c,u):void 0),responseProcessor:c=>ho(c,o),subscribeMethodName:o.replace(/Notifications$/,"Subscribe"),unsubscribeMethodName:o.replace(/Notifications$/,"Unsubscribe")}}}})}function ft(e){return Ve(e)}l();var gt=class extends Error{constructor(n){super(`JSON-RPC 2.0 error (${n.code}): ${n.message}`);D(this,"code");D(this,"data");Error.captureStackTrace(this,this.constructor),this.code=n.code,this.data=n.data;}get name(){return "SolanaJsonRpcError"}},qe=0;function So(){let e=qe;return qe=(qe+1)%Number.MAX_SAFE_INTEGER,e}function Ye(e,n){return {id:So(),jsonrpc:"2.0",method:e,params:n}}function yo(e,n){return {async send(t){let{methodName:r,params:o,responseProcessor:i}=n,a=Ye(r,o),s=await e.transport({payload:a,signal:t==null?void 0:t.abortSignal});if("error"in s)throw new gt(s.error);return i?i(s.result):s.result}}}function wo(e){return new Proxy(e.api,{defineProperty(){return !1},deleteProperty(){return !1},get(n,t,r){return function(...o){let i=t.toString(),a=Reflect.get(n,i,r),s=a?a(...o):{methodName:i,params:o};return yo(e,s)}}})}function bt(e){return wo(e)}function Ao(e,n){(async()=>{try{for await(let t of e);}catch{}finally{n();}})();}function To(e,{params:n,subscribeMethodName:t,unsubscribeMethodName:r,responseProcessor:o}){return {async subscribe({abortSignal:i}){i.throwIfAborted();let a;function s(){if(a!==void 0){let m=Ye(r,[a]);f.send_DO_NOT_USE_OR_YOU_WILL_BE_FIRED(m).finally(()=>{c.abort();});}else c.abort();}i.addEventListener("abort",s);let c=new AbortController,u=Ye(t,n),f=await e.transport({payload:u,signal:c.signal});function p(){i.removeEventListener("abort",s);}Ao(f,p);for await(let m of f)if("id"in m&&m.id===u.id){if("error"in m)throw new gt(m.error);a=m.result;break}if(a==null)throw new Error("Failed to obtain a subscription id from the server");return {async*[Symbol.asyncIterator](){for await(let m of f){if(!("params"in m)||m.params.subscription!==a)continue;let y=m.params.result;yield o?o(y):y;}}}}}}function Eo(e){return new Proxy(e.api,{defineProperty(){return !1},deleteProperty(){return !1},get(n,t,r){return function(...o){let i=t.toString(),a=Reflect.get(n,i,r);if(t.toString().endsWith("Notifications")===!1&&!a)throw new Error("Either the notification name must end in 'Notifications' or the API must supply a subscription creator function to map between the notification name and the subscribe/unsubscribe method names.");let s=a?a(...o):{params:o,subscribeMethodName:i.replace(/Notifications$/,"Subscribe"),unsubscribeMethodName:i.replace(/Notifications$/,"Unsubscribe")};return To(e,s)}}})}function Je(e){return Eo(e)}var xo=globalThis.fetch,Io=class extends Error{constructor(n){super(`HTTP error (${n.statusCode}): ${n.message}`);D(this,"statusCode");Error.captureStackTrace(this,this.constructor),this.statusCode=n.statusCode;}get name(){return "SolanaHttpError"}};function zo(e){let n={};for(let t in e)n[t.toLowerCase()]=e[t];return n}function ht({headers:e,url:n}){let t=e&&zo(e);return async function({payload:o,signal:i}){let a=JSON.stringify(o),s={body:a,headers:{...t,accept:"application/json","content-length":a.length.toString(),"content-type":"application/json; charset=utf-8"},method:"POST",signal:i},c=await xo(n,s);if(!c.ok)throw new Io({message:c.statusText,statusCode:c.status});return await c.json()}}var oe=globalThis.WebSocket,pt=Symbol(void 0);async function Do({sendBufferHighWatermark:e,signal:n,url:t}){return new Promise((r,o)=>{n.addEventListener("abort",s,{once:!0});let i=new Map;function a(h){let S=[...i.values()].filter(T=>T.__hasPolled).map(({onError:T})=>T);i.clear(),S.forEach(T=>{try{T(h);}catch{}});}function s(){a(pt),g.readyState!==oe.CLOSED&&g.readyState!==oe.CLOSING&&g.close(1e3);}function c(h){p==null||p.onCancel(),n.removeEventListener("abort",s),g.removeEventListener("close",c),g.removeEventListener("error",u),g.removeEventListener("open",m),g.removeEventListener("message",y),a(h);}function u(h){f||o(new Error("WebSocket failed to connect",{cause:h}));}let f=!1,p;function m(){f=!0,r({async send(h){let S=JSON.stringify(h);if(!p&&g.readyState===oe.OPEN&&g.bufferedAmount>e){let T,z=new Promise((Y,kt)=>{let en=setInterval(()=>{(g.readyState!==oe.OPEN||!(g.bufferedAmount>e))&&(clearInterval(en),p=void 0,Y());},16);T=()=>{p=void 0,clearInterval(en),kt(new Error("WebSocket was closed before payload could be sent"));};});p={onCancel:T,promise:z};}p&&await p.promise,g.send(S);},async*[Symbol.asyncIterator](){let h=Symbol();i.set(h,{__hasPolled:!1,queuedMessages:[]});try{for(;;){let S=i.get(h);if(!S)throw new Error("Invariant: WebSocket message iterator is missing state storage");if(S.__hasPolled)throw new Error("Invariant: WebSocket message iterator state is corrupt; iterated without first resolving existing message promise");let T=S.queuedMessages;if(T.length)S.queuedMessages=[],yield*T;else try{yield await new Promise((z,Y)=>{i.set(h,{__hasPolled:!0,onError:Y,onMessage:z});});}catch(z){if(z===pt)return;throw new Error("WebSocket connection closed",{cause:z})}}}finally{i.delete(h);}}});}function y({data:h}){let S=JSON.parse(h);i.forEach((T,z)=>{if(T.__hasPolled){let{onMessage:Y}=T;i.set(z,{__hasPolled:!1,queuedMessages:[]}),Y(S);}else T.queuedMessages.push(S);});}let g=new oe(t);g.addEventListener("close",c),g.addEventListener("error",u),g.addEventListener("open",m),g.addEventListener("message",y);})}function St({sendBufferHighWatermark:e,url:n}){if(/^wss?:/i.test(n)===!1){let t=n.match(/^([^:]+):/);throw new DOMException(t?`Failed to construct 'WebSocket': The URL's scheme must be either 'ws' or 'wss'. '${t[1]}:' is not allowed.`:`Failed to construct 'WebSocket': The URL '${n}' is invalid.`)}return async function({payload:r,signal:o}){o==null||o.throwIfAborted();let i=await Do({sendBufferHighWatermark:e,signal:o,url:n});return o==null||o.throwIfAborted(),await i.send(r),{[Symbol.asyncIterator]:i[Symbol.asyncIterator].bind(i),send_DO_NOT_USE_OR_YOU_WILL_BE_FIRED:i.send.bind(i)}}}var At=nn(Xe(),1);l();l();var Se=class extends Error{constructor(t,r,o){let i=(typeof r[0]=="number"?r[0]:parseInt(r[0],10))+1,a="",s=i%10,c=i%100;s==1&&c!=11?a=i+"st":s==2&&c!=12?a=i+"nd":s==3&&c!=13?a=i+"rd":a=i+"th";let u=r.length>1?r.slice(1).map(f=>typeof f=="number"?`[${f}]`:f).join("."):null;super(`The ${a} argument to the \`${t}\` RPC method${u?` at path \`${u}\``:""} was \`${o}\`. This number is unsafe for use with the Solana JSON-RPC because it exceeds \`Number.MAX_SAFE_INTEGER\`.`);D(this,"methodName");D(this,"keyPath");D(this,"value");this.keyPath=r,this.methodName=t,this.value=o;}get name(){return "SolanaJsonRpcIntegerOverflowError"}};var ye={onIntegerOverflow(e,n,t){throw new Se(e,n,t)}};l();l();function Bo(e,n){(async()=>{try{for await(let t of e);}catch{}finally{n();}})();}function we({getAbortSignalFromInputArgs:e,getCacheEntryMissingError:n,getCacheKeyFromInputArgs:t,onCacheHit:r,onCreateIterable:o}){let i=new Map;function a(s){let c=i.get(s);if(!c)throw n(s);return c}return async(...s)=>{let c=t(...s),u=e(...s);if(c===void 0)return await o(u,...s);let f=()=>{i.delete(c),u.removeEventListener("abort",p);},p=()=>{let m=a(c);m.purgeScheduled!==!0&&(m.purgeScheduled=!0,globalThis.queueMicrotask(()=>{m.purgeScheduled=!1,m.referenceCount===0&&(m.abortController.abort(),f());})),m.referenceCount--;};u.addEventListener("abort",p);try{let m=i.get(c);if(m){m.referenceCount++;let y=m.iterable,g="then"in y?await y:y;return await r(g,...s),g}else {let y=new AbortController,g=o(y.signal,...s),h={abortController:y,iterable:g,purgeScheduled:!1,referenceCount:1};i.set(c,h);let S=await g;return Bo(S,f),h.iterable=S,S}}catch(m){throw f(),m}}}var Ze=Symbol(void 0);function Po(e,n){(async()=>{try{for await(let t of e);}catch{}finally{n();}})();}function wt({getDeduplicationKey:e,rpcSubscriptions:n}){let t=new Map;return new Proxy(n,{defineProperty(){return !1},deleteProperty(){return !1},get(r,o,i){let a=Reflect.get(r,o,i);return typeof a!="function"?a:function(...s){let c=e(o,s);if(c===void 0)return a(...s);if(t.has(c))return t.get(c);let u=we({getAbortSignalFromInputArgs:({abortSignal:p})=>p,getCacheEntryMissingError(p){return new Error(`Found no cache entry for subscription with deduplication key \`${p==null?void 0:p.toString()}\``)},getCacheKeyFromInputArgs:()=>c,async onCacheHit(p,m){},async onCreateIterable(p,m){let g=await a(...s).subscribe({...m,abortSignal:p});return Po(g,()=>{t.delete(c);}),g}}),f={async subscribe(...p){let m=await u(...p),{abortSignal:y}=p[0],g;return {...m,async*[Symbol.asyncIterator](){g||(g=y.aborted?Promise.reject(Ze):new Promise((h,S)=>{y.addEventListener("abort",()=>{S(Ze);});}));try{let h=m[Symbol.asyncIterator]();for(;;){let S=await Promise.race([h.next(),g]);if(S.done)return;yield S.value;}}catch(h){if(h===Ze)return;throw t.delete(c),h}}}}};return t.set(c,f),f}}})}function es(e){return bt({...e,api:lt(ye)})}function ns(e){return _(Je({...e,api:Ve(ye)}),n=>wt({getDeduplicationKey:(...t)=>(0, At.default)(t),rpcSubscriptions:n}))}function ts(e){return Je({...e,api:ft(ye)})}l();l();function Tt(e,n){let t;return async function(o){let{payload:i,signal:a}=o,s=n(i);if(s===void 0)return await e(o);if(t||(Promise.resolve().then(()=>{t=void 0;}),t={}),t[s]==null){let u=new AbortController;t[s]={abortController:u,numConsumers:0,responsePromise:e({...o,signal:u.signal})};}let c=t[s];if(c.numConsumers++,a){let u=c.responsePromise;return await new Promise((f,p)=>{let m=y=>{a.removeEventListener("abort",m),c.numConsumers-=1,c.numConsumers===0&&c.abortController.abort();let g=new DOMException(y.target.reason,"AbortError");p(g);};a.addEventListener("abort",m),u.then(f).finally(()=>{a.removeEventListener("abort",m);});})}else return await c.responsePromise}}l();var Et=nn(Xe(),1);function _o(e){return e==null||typeof e!="object"||Array.isArray(e)?!1:"jsonrpc"in e&&e.jsonrpc==="2.0"&&"method"in e&&typeof e.method=="string"&&"params"in e}function xt(e){return _o(e)?(0, Et.default)([e.method,e.params]):void 0}function Oo(e){let n={};for(let t in e)n[t.toLowerCase()]=e[t];return n}function ps(e){return _(ht({...e,headers:{...e.headers?Oo(e.headers):void 0,"solana-client":"js/2.0.0-development"}}),n=>Tt(n,xt))}l();l();var Lo={jsonrpc:"2.0",method:"ping"};function It({intervalMs:e,transport:n}){let t=new Map;return async(...r)=>{let o=await n(...r),i;function a(){o.send_DO_NOT_USE_OR_YOU_WILL_BE_FIRED(Lo);}function s(){clearInterval(i),i=setInterval(a,e);}if(t.has(o)===!1){t.set(o,{[Symbol.asyncIterator]:o[Symbol.asyncIterator].bind(o),send_DO_NOT_USE_OR_YOU_WILL_BE_FIRED:(...f)=>(s(),o.send_DO_NOT_USE_OR_YOU_WILL_BE_FIRED(...f))}),(async()=>{try{for await(let f of o)s();}catch{}finally{t.delete(o),clearInterval(i),c&&globalThis.window.removeEventListener("offline",c),u&&globalThis.window.removeEventListener("online",u);}})(),globalThis.navigator.onLine&&s();let c,u;c=()=>{clearInterval(i);},u=()=>{a(),s();},globalThis.window.addEventListener("offline",c),globalThis.window.addEventListener("online",u);}return t.get(o)}}l();var Fo=Symbol(void 0);function Ct({getShard:e,transport:n}){return we({getAbortSignalFromInputArgs:({signal:t})=>t,getCacheEntryMissingError(t){return new Error(`Found no cache entry for connection with shard key \`${t==null?void 0:t.toString()}\``)},getCacheKeyFromInputArgs:({payload:t})=>e?e(t):Fo,onCacheHit:(t,{payload:r})=>t.send_DO_NOT_USE_OR_YOU_WILL_BE_FIRED(r),onCreateIterable:(t,r)=>n({...r,signal:t})})}function Is(e){var o;let{getShard:n,intervalMs:t,...r}=e;return _(St({...r,sendBufferHighWatermark:(o=e.sendBufferHighWatermark)!=null?o:131072}),i=>It({intervalMs:t!=null?t:5e3,transport:i}),i=>Ct({getShard:n,transport:i}))}l();l();l();function Rt(e){return async function({abortSignal:t,lastValidBlockHeight:r}){let o=new AbortController;function i(){o.abort();}t.addEventListener("abort",i,{signal:o.signal});let a=await e.slotNotifications().subscribe({abortSignal:o.signal});try{for await(let s of a)if(s.slot>r)throw new Error("The network has progressed past the last block for which this transaction could have committed.")}finally{o.abort();}}}l();var Qe=40;function vt(e,n){return async function({abortSignal:r,commitment:o,currentNonceValue:i,nonceAccountAddress:a}){let s=new AbortController;function c(){s.abort();}r.addEventListener("abort",c,{signal:s.signal});let u=await n.accountNotifications(a,{commitment:o,encoding:"base64"}).subscribe({abortSignal:s.signal}),f=U(),p=dn();function m([h]){let T=p.encode(h).slice(Qe,Qe+32);return f.decode(T)[0]}let y=(async()=>{for await(let h of u){let S=m(h.value.data);if(S!==i)throw new Error(`The nonce \`${i}\` is no longer valid. It has advanced to \`${S}\`.`)}})(),g=(async()=>{let{value:h}=await e.getAccountInfo(a,{commitment:o,dataSlice:{length:32,offset:Qe},encoding:"base58"}).send({abortSignal:s.signal});if(!h)throw new Error(`No nonce account could be found at address \`${a}\`.`);let S=h.data[0];if(S!==i)throw new Error(`The nonce \`${i}\` is no longer valid. It has advanced to \`${S}\`.`);await new Promise(()=>{});})();try{return await Promise.race([y,g])}finally{s.abort();}}}function zt({rpc:e,rpcSubscriptions:n}){let t=vt(e,n),r=re(e,n);return async function(i){await Uo({...i,getNonceInvalidationPromise:t,getRecentSignatureConfirmationPromise:r});}}function Dt({rpc:e,rpcSubscriptions:n}){let t=Rt(n),r=re(e,n);return async function(i){await $o({...i,getBlockHeightExceedencePromise:t,getRecentSignatureConfirmationPromise:r});}}async function Uo(e){await te(Me(e.transaction),e,function({abortSignal:t,commitment:r,getNonceInvalidationPromise:o,transaction:i}){return [o({abortSignal:t,commitment:r,currentNonceValue:i.lifetimeConstraint.nonce,nonceAccountAddress:i.instructions[0].accounts[0].address})]});}async function $o(e){await te(Me(e.transaction),e,function({abortSignal:t,getBlockHeightExceedencePromise:r,transaction:o}){return [r({abortSignal:t,lastValidBlockHeight:o.lifetimeConstraint.lastValidBlockHeight})]});}function Wo(e,n){return !(n!=null&&n.preflightCommitment)&&ge(e,"finalized")<0?{...n,preflightCommitment:e}:n}async function Nt({abortSignal:e,commitment:n,rpc:t,transaction:r,...o}){let i=at(r);return await t.sendTransaction(i,{...Wo(n,o),encoding:"base64"}).send({abortSignal:e})}function Qs({rpc:e,rpcSubscriptions:n}){let t=zt({rpc:e,rpcSubscriptions:n});return async function(o,i){await Mo({...i,confirmDurableNonceTransaction:t,rpc:e,transaction:o});}}function ec({rpc:e,rpcSubscriptions:n}){let t=Dt({rpc:e,rpcSubscriptions:n});return async function(o,i){await Ho({...i,confirmRecentTransaction:t,rpc:e,transaction:o});}}async function Mo({abortSignal:e,commitment:n,confirmDurableNonceTransaction:t,rpc:r,transaction:o,...i}){let a=await Nt({...i,abortSignal:e,commitment:n,rpc:r,transaction:o});return await t({abortSignal:e,commitment:n,transaction:o}),a}async function Ho({abortSignal:e,commitment:n,confirmRecentTransaction:t,rpc:r,transaction:o,...i}){let a=await Nt({...i,abortSignal:e,commitment:n,rpc:r,transaction:o});return await t({abortSignal:e,commitment:n,transaction:o}),a}
|
|
10
10
|
|
|
11
|
-
exports.AccountRole =
|
|
12
|
-
exports.address =
|
|
13
|
-
exports.appendTransactionInstruction =
|
|
14
|
-
exports.
|
|
15
|
-
exports.assertIsBlockhash =
|
|
16
|
-
exports.assertIsDurableNonceTransaction =
|
|
17
|
-
exports.
|
|
18
|
-
exports.
|
|
19
|
-
exports.
|
|
20
|
-
exports.
|
|
21
|
-
exports.
|
|
22
|
-
exports.
|
|
23
|
-
exports.
|
|
24
|
-
exports.
|
|
25
|
-
exports.
|
|
26
|
-
exports.
|
|
27
|
-
exports.
|
|
28
|
-
exports.
|
|
29
|
-
exports.
|
|
30
|
-
exports.
|
|
31
|
-
exports.
|
|
32
|
-
exports.
|
|
33
|
-
exports.
|
|
34
|
-
exports.
|
|
35
|
-
exports.
|
|
36
|
-
exports.
|
|
37
|
-
exports.
|
|
38
|
-
exports.
|
|
39
|
-
exports.
|
|
40
|
-
exports.
|
|
41
|
-
exports.
|
|
42
|
-
exports.
|
|
43
|
-
exports.
|
|
44
|
-
exports.
|
|
11
|
+
exports.AccountRole = ur;
|
|
12
|
+
exports.address = nr;
|
|
13
|
+
exports.appendTransactionInstruction = Rr;
|
|
14
|
+
exports.assertIsAddress = Z;
|
|
15
|
+
exports.assertIsBlockhash = ea;
|
|
16
|
+
exports.assertIsDurableNonceTransaction = na;
|
|
17
|
+
exports.assertIsLamports = fr;
|
|
18
|
+
exports.assertIsProgramDerivedAddress = si;
|
|
19
|
+
exports.assertIsSignature = lr;
|
|
20
|
+
exports.assertIsStringifiedBigInt = pr;
|
|
21
|
+
exports.assertIsStringifiedNumber = mr;
|
|
22
|
+
exports.assertIsUnixTimestamp = gr;
|
|
23
|
+
exports.assertTransactionIsFullySigned = lo;
|
|
24
|
+
exports.commitmentComparator = ge;
|
|
25
|
+
exports.compileMessage = On;
|
|
26
|
+
exports.createAddressWithSeed = di;
|
|
27
|
+
exports.createBlockHeightExceedencePromiseFactory = Rt;
|
|
28
|
+
exports.createDefaultAirdropRequester = Ea;
|
|
29
|
+
exports.createDefaultDurableNonceTransactionConfirmer = zt;
|
|
30
|
+
exports.createDefaultDurableNonceTransactionSender = Qs;
|
|
31
|
+
exports.createDefaultRecentTransactionConfirmer = Dt;
|
|
32
|
+
exports.createDefaultRpcSubscriptionsTransport = Is;
|
|
33
|
+
exports.createDefaultRpcTransport = ps;
|
|
34
|
+
exports.createDefaultTransactionSender = ec;
|
|
35
|
+
exports.createNonceInvalidationPromiseFactory = vt;
|
|
36
|
+
exports.createRecentSignatureConfirmationPromiseFactory = re;
|
|
37
|
+
exports.createSolanaRpc = es;
|
|
38
|
+
exports.createSolanaRpcSubscriptions = ns;
|
|
39
|
+
exports.createSolanaRpcSubscriptions_UNSTABLE = ts;
|
|
40
|
+
exports.createTransaction = Ar;
|
|
41
|
+
exports.downgradeRoleToNonSigner = pi;
|
|
42
|
+
exports.downgradeRoleToReadonly = mi;
|
|
43
|
+
exports.generateKeyPair = xi;
|
|
44
|
+
exports.getAddressCodec = yn;
|
|
45
|
+
exports.getAddressComparator = me;
|
|
46
|
+
exports.getAddressDecoder = Q;
|
|
47
|
+
exports.getAddressEncoder = pe;
|
|
48
|
+
exports.getAddressFromPublicKey = Tn;
|
|
49
|
+
exports.getBase64EncodedWireTransaction = at;
|
|
50
|
+
exports.getCompiledMessageCodec = ra;
|
|
51
|
+
exports.getCompiledMessageDecoder = tt;
|
|
52
|
+
exports.getCompiledMessageEncoder = We;
|
|
53
|
+
exports.getProgramDerivedAddress = ci;
|
|
54
|
+
exports.getSignatureFromTransaction = Me;
|
|
55
|
+
exports.getTransactionCodec = oa;
|
|
56
|
+
exports.getTransactionDecoder = co;
|
|
57
|
+
exports.getTransactionEncoder = it;
|
|
58
|
+
exports.isAddress = er;
|
|
59
|
+
exports.isAdvanceNonceAccountInstruction = $e;
|
|
60
|
+
exports.isLamports = Di;
|
|
61
|
+
exports.isProgramDerivedAddress = ai;
|
|
62
|
+
exports.isSignature = Ii;
|
|
63
|
+
exports.isSignerRole = gi;
|
|
64
|
+
exports.isStringifiedBigInt = ki;
|
|
65
|
+
exports.isStringifiedNumber = Pi;
|
|
66
|
+
exports.isUnixTimestamp = Oi;
|
|
67
|
+
exports.isWritableRole = bi;
|
|
68
|
+
exports.lamports = Ni;
|
|
69
|
+
exports.mergeRoles = hi;
|
|
70
|
+
exports.partiallySignTransaction = uo;
|
|
71
|
+
exports.prependTransactionInstruction = ta;
|
|
72
|
+
exports.requestAndConfirmAirdrop = po;
|
|
73
|
+
exports.sendAndConfirmDurableNonceTransaction = Mo;
|
|
74
|
+
exports.sendAndConfirmTransaction = Ho;
|
|
75
|
+
exports.setTransactionFeePayer = Cr;
|
|
76
|
+
exports.setTransactionLifetimeUsingBlockhash = wr;
|
|
77
|
+
exports.setTransactionLifetimeUsingDurableNonce = Ir;
|
|
78
|
+
exports.signBytes = xn;
|
|
79
|
+
exports.signTransaction = ia;
|
|
80
|
+
exports.signature = Ci;
|
|
81
|
+
exports.stringifiedBigInt = Bi;
|
|
82
|
+
exports.stringifiedNumber = _i;
|
|
83
|
+
exports.unixTimestamp = Li;
|
|
84
|
+
exports.upgradeRoleToSigner = Si;
|
|
85
|
+
exports.upgradeRoleToWritable = yi;
|
|
86
|
+
exports.verifySignature = Ri;
|
|
87
|
+
exports.waitForDurableNonceTransactionConfirmation = Uo;
|
|
88
|
+
exports.waitForRecentTransactionConfirmation = $o;
|
|
45
89
|
|
|
46
90
|
return exports;
|
|
47
91
|
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { Signature } from '@solana/keys';
|
|
2
|
+
import type { GetSignatureStatusesApi, SignatureNotificationsApi } from '@solana/rpc-core';
|
|
3
|
+
import type { Rpc, RpcSubscriptions } from '@solana/rpc-transport';
|
|
4
|
+
import { BaseTransactionConfirmationStrategyConfig } from './transaction-confirmation-strategy-racer';
|
|
5
|
+
import { getTimeoutPromise } from './transaction-confirmation-strategy-timeout';
|
|
6
|
+
interface DefaultSignatureOnlyRecentTransactionConfirmerConfig {
|
|
7
|
+
rpc: Rpc<GetSignatureStatusesApi>;
|
|
8
|
+
rpcSubscriptions: RpcSubscriptions<SignatureNotificationsApi>;
|
|
9
|
+
}
|
|
10
|
+
interface WaitForRecentTransactionWithTimeBasedLifetimeConfirmationConfig extends BaseTransactionConfirmationStrategyConfig {
|
|
11
|
+
getTimeoutPromise: typeof getTimeoutPromise;
|
|
12
|
+
signature: Signature;
|
|
13
|
+
}
|
|
14
|
+
/** @deprecated */
|
|
15
|
+
export declare function createDefaultSignatureOnlyRecentTransactionConfirmer({ rpc, rpcSubscriptions, }: DefaultSignatureOnlyRecentTransactionConfirmerConfig): (config: Omit<Parameters<typeof waitForRecentTransactionConfirmationUntilTimeout>[0], 'getRecentSignatureConfirmationPromise' | 'getTimeoutPromise'>) => Promise<void>;
|
|
16
|
+
/** @deprecated */
|
|
17
|
+
export declare function waitForRecentTransactionConfirmationUntilTimeout(config: WaitForRecentTransactionWithTimeBasedLifetimeConfirmationConfig): Promise<void>;
|
|
18
|
+
export {};
|
|
19
|
+
//# sourceMappingURL=airdrop-confirmer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"airdrop-confirmer.d.ts","sourceRoot":"","sources":["../../src/airdrop-confirmer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,KAAK,EAAE,uBAAuB,EAAE,yBAAyB,EAAE,MAAM,kBAAkB,CAAC;AAC3F,OAAO,KAAK,EAAE,GAAG,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEnE,OAAO,EAAE,yCAAyC,EAAkB,MAAM,2CAA2C,CAAC;AAEtH,OAAO,EAAE,iBAAiB,EAAE,MAAM,6CAA6C,CAAC;AAEhF,UAAU,oDAAoD;IAC1D,GAAG,EAAE,GAAG,CAAC,uBAAuB,CAAC,CAAC;IAClC,gBAAgB,EAAE,gBAAgB,CAAC,yBAAyB,CAAC,CAAC;CACjE;AAED,UAAU,+DACN,SAAQ,yCAAyC;IACjD,iBAAiB,EAAE,OAAO,iBAAiB,CAAC;IAC5C,SAAS,EAAE,SAAS,CAAC;CACxB;AAED,kBAAkB;AAClB,wBAAgB,oDAAoD,CAAC,EACjE,GAAG,EACH,gBAAgB,GACnB,EAAE,oDAAoD,YAMvC,KACJ,WAAW,uDAAuD,CAAC,CAAC,CAAC,CAAC,EACtE,uCAAuC,GAAG,mBAAmB,CAChE,mBAQR;AAED,kBAAkB;AAClB,wBAAsB,gDAAgD,CAClE,MAAM,EAAE,+DAA+D,GACxE,OAAO,CAAC,IAAI,CAAC,CAaf"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { Address } from '@solana/addresses';
|
|
2
|
+
import { Signature } from '@solana/keys';
|
|
3
|
+
import type { GetSignatureStatusesApi, RequestAirdropApi, SignatureNotificationsApi } from '@solana/rpc-core';
|
|
4
|
+
import type { Rpc, RpcSubscriptions } from '@solana/rpc-transport';
|
|
5
|
+
import { Commitment, LamportsUnsafeBeyond2Pow53Minus1 } from '@solana/rpc-types';
|
|
6
|
+
import { createDefaultSignatureOnlyRecentTransactionConfirmer } from './airdrop-confirmer';
|
|
7
|
+
type AirdropRequesterConfig = Readonly<{
|
|
8
|
+
rpc: Rpc<RequestAirdropApi & GetSignatureStatusesApi>;
|
|
9
|
+
rpcSubscriptions: RpcSubscriptions<SignatureNotificationsApi>;
|
|
10
|
+
}>;
|
|
11
|
+
export declare function createDefaultAirdropRequester({ rpc, rpcSubscriptions }: AirdropRequesterConfig): (config: Omit<Parameters<typeof requestAndConfirmAirdrop>[0], 'confirmSignatureOnlyTransaction' | 'rpc'>) => Promise<Signature>;
|
|
12
|
+
export declare function requestAndConfirmAirdrop({ abortSignal, commitment, confirmSignatureOnlyTransaction, lamports, recipientAddress, rpc, }: Readonly<{
|
|
13
|
+
abortSignal?: AbortSignal;
|
|
14
|
+
commitment: Commitment;
|
|
15
|
+
confirmSignatureOnlyTransaction: ReturnType<typeof createDefaultSignatureOnlyRecentTransactionConfirmer>;
|
|
16
|
+
lamports: LamportsUnsafeBeyond2Pow53Minus1;
|
|
17
|
+
recipientAddress: Address;
|
|
18
|
+
rpc: Rpc<RequestAirdropApi>;
|
|
19
|
+
}>): Promise<Signature>;
|
|
20
|
+
export {};
|
|
21
|
+
//# sourceMappingURL=airdrop.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"airdrop.d.ts","sourceRoot":"","sources":["../../src/airdrop.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,KAAK,EAAE,uBAAuB,EAAE,iBAAiB,EAAE,yBAAyB,EAAE,MAAM,kBAAkB,CAAC;AAC9G,OAAO,KAAK,EAAE,GAAG,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACnE,OAAO,EAAE,UAAU,EAAE,gCAAgC,EAAE,MAAM,mBAAmB,CAAC;AAEjF,OAAO,EAAE,oDAAoD,EAAE,MAAM,qBAAqB,CAAC;AAE3F,KAAK,sBAAsB,GAAG,QAAQ,CAAC;IACnC,GAAG,EAAE,GAAG,CAAC,iBAAiB,GAAG,uBAAuB,CAAC,CAAC;IACtD,gBAAgB,EAAE,gBAAgB,CAAC,yBAAyB,CAAC,CAAC;CACjE,CAAC,CAAC;AAEH,wBAAgB,6BAA6B,CAAC,EAAE,GAAG,EAAE,gBAAgB,EAAE,EAAE,sBAAsB,YAM/E,KAAK,WAAW,+BAA+B,CAAC,CAAC,CAAC,CAAC,EAAE,iCAAiC,GAAG,KAAK,CAAC,wBAQ9G;AAED,wBAAsB,wBAAwB,CAAC,EAC3C,WAAW,EACX,UAAU,EACV,+BAA+B,EAC/B,QAAQ,EACR,gBAAgB,EAChB,GAAG,GACN,EAAE,QAAQ,CAAC;IACR,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,UAAU,EAAE,UAAU,CAAC;IACvB,+BAA+B,EAAE,UAAU,CAAC,OAAO,oDAAoD,CAAC,CAAC;IACzG,QAAQ,EAAE,gCAAgC,CAAC;IAC3C,gBAAgB,EAAE,OAAO,CAAC;IAC1B,GAAG,EAAE,GAAG,CAAC,iBAAiB,CAAC,CAAC;CAC/B,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC,CAUtB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cached-abortable-iterable.d.ts","sourceRoot":"","sources":["../../src/cached-abortable-iterable.ts"],"names":[],"mappings":"AAMA,KAAK,QAAQ,GAAG,MAAM,GAAG,MAAM,CAAC;AAChC,KAAK,MAAM,CAAC,MAAM,SAAS,OAAO,EAAE,EAAE,SAAS,SAAS,aAAa,CAAC,OAAO,CAAC,IAAI,QAAQ,CAAC;IACvF,2BAA2B,EAAE,CAAC,GAAG,IAAI,EAAE,MAAM,KAAK,WAAW,CAAC;IAC9D,yBAAyB,EAAE,CAAC,QAAQ,EAAE,QAAQ,KAAK,KAAK,CAAC;IACzD,wBAAwB,EAAE,CAAC,GAAG,IAAI,EAAE,MAAM,KACpC,QAAQ,GAER,SAAS,CAAC;IAChB,UAAU,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACpE,gBAAgB,EAAE,CAAC,WAAW,EAAE,WAAW,EAAE,GAAG,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,SAAS,CAAC,CAAC;CACvF,CAAC,CAAC;AAgBH,wBAAgB,iCAAiC,CAAC,MAAM,SAAS,OAAO,EAAE,EAAE,SAAS,SAAS,aAAa,CAAC,OAAO,CAAC,EAAE,EAClH,2BAA2B,EAC3B,yBAAyB,EACzB,wBAAwB,EACxB,UAAU,EACV,gBAAgB,GACnB,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,CAAC,GAAG,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,SAAS,CAAC,CA+DrE"}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -1,8 +1,15 @@
|
|
|
1
1
|
export * from '@solana/addresses';
|
|
2
2
|
export * from '@solana/instructions';
|
|
3
3
|
export * from '@solana/keys';
|
|
4
|
+
export * from '@solana/rpc-types';
|
|
4
5
|
export * from '@solana/transactions';
|
|
6
|
+
export * from './airdrop';
|
|
5
7
|
export * from './rpc';
|
|
6
8
|
export * from './rpc-transport';
|
|
7
9
|
export * from './rpc-websocket-transport';
|
|
10
|
+
export * from './send-transaction';
|
|
11
|
+
export * from './transaction-confirmation';
|
|
12
|
+
export * from './transaction-confirmation-strategy-blockheight';
|
|
13
|
+
export * from './transaction-confirmation-strategy-nonce';
|
|
14
|
+
export * from './transaction-confirmation-strategy-recent-signature';
|
|
8
15
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,sBAAsB,CAAC;AACrC,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,sBAAsB,CAAC;AACrC,cAAc,WAAW,CAAC;AAC1B,cAAc,OAAO,CAAC;AACtB,cAAc,iBAAiB,CAAC;AAChC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,oBAAoB,CAAC;AACnC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,iDAAiD,CAAC;AAChE,cAAc,2CAA2C,CAAC;AAC1D,cAAc,sDAAsD,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rpc-default-config.d.ts","sourceRoot":"","sources":["../../src/rpc-default-config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAItD,eAAO,MAAM,kBAAkB,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAIhF,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rpc-integer-overflow-error.d.ts","sourceRoot":"","sources":["../../src/rpc-integer-overflow-error.ts"],"names":[],"mappings":"AAAA,qBAAa,iCAAkC,SAAQ,KAAK;IACxD,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,OAAO,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC;IACtC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;gBACX,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM;IA+B3E,IAAI,IAAI,WAEP;CACJ"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { IRpcTransport } from '@solana/rpc-transport
|
|
1
|
+
import type { IRpcTransport } from '@solana/rpc-transport';
|
|
2
2
|
type GetDeduplicationKeyFn = (payload: unknown) => string | undefined;
|
|
3
3
|
export declare function getRpcTransportWithRequestCoalescing(transport: IRpcTransport, getDeduplicationKey: GetDeduplicationKeyFn): IRpcTransport;
|
|
4
4
|
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rpc-request-coalescer.d.ts","sourceRoot":"","sources":["../../src/rpc-request-coalescer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAQ3D,KAAK,qBAAqB,GAAG,CAAC,OAAO,EAAE,OAAO,KAAK,MAAM,GAAG,SAAS,CAAC;AAEtE,wBAAgB,oCAAoC,CAChD,SAAS,EAAE,aAAa,EACxB,mBAAmB,EAAE,qBAAqB,GAC3C,aAAa,CAmDf"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rpc-request-deduplication.d.ts","sourceRoot":"","sources":["../../src/rpc-request-deduplication.ts"],"names":[],"mappings":"AAiBA,wBAAgB,mCAAmC,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAExF"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { RpcSubscriptions } from '@solana/rpc-transport
|
|
1
|
+
import { RpcSubscriptions } from '@solana/rpc-transport';
|
|
2
2
|
type CacheKey = string | undefined;
|
|
3
3
|
type Config<TRpcSubscriptionsMethods> = Readonly<{
|
|
4
4
|
getDeduplicationKey: GetDeduplicationKeyFn;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rpc-subscription-coalescer.d.ts","sourceRoot":"","sources":["../../src/rpc-subscription-coalescer.ts"],"names":[],"mappings":"AAAA,OAAO,EAA0B,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAIjF,KAAK,QAAQ,GAAG,MAAM,GAAG,SAAS,CAAC;AACnC,KAAK,MAAM,CAAC,wBAAwB,IAAI,QAAQ,CAAC;IAC7C,mBAAmB,EAAE,qBAAqB,CAAC;IAC3C,gBAAgB,EAAE,gBAAgB,CAAC,wBAAwB,CAAC,CAAC;CAChE,CAAC,CAAC;AACH,KAAK,qBAAqB,GAAG,CAAC,kBAAkB,EAAE,MAAM,GAAG,MAAM,EAAE,OAAO,EAAE,OAAO,KAAK,QAAQ,CAAC;AAuBjG,wBAAgB,6CAA6C,CAAC,wBAAwB,EAAE,EACpF,mBAAmB,EACnB,gBAAgB,GACnB,EAAE,MAAM,CAAC,wBAAwB,CAAC,GAAG,gBAAgB,CAAC,wBAAwB,CAAC,CAgG/E"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { createHttpTransport } from '@solana/rpc-transport';
|
|
2
|
-
import { IRpcTransport } from '@solana/rpc-transport/dist/types/transports/transport-types';
|
|
1
|
+
import { createHttpTransport, type IRpcTransport } from '@solana/rpc-transport';
|
|
3
2
|
export declare function createDefaultRpcTransport(config: Parameters<typeof createHttpTransport>[0]): IRpcTransport;
|
|
4
3
|
//# sourceMappingURL=rpc-transport.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rpc-transport.d.ts","sourceRoot":"","sources":["../../src/rpc-transport.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,KAAK,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAkBhF,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,UAAU,CAAC,OAAO,mBAAmB,CAAC,CAAC,CAAC,CAAC,GAAG,aAAa,CAc1G"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rpc-websocket-autopinger.d.ts","sourceRoot":"","sources":["../../src/rpc-websocket-autopinger.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAEpE,KAAK,MAAM,GAAG,QAAQ,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,sBAAsB,CAAC;CACrC,CAAC,CAAC;AAOH,wBAAgB,iCAAiC,CAAC,EAAE,UAAU,EAAE,SAAS,EAAE,EAAE,MAAM,GAAG,sBAAsB,CA+D3G"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { IRpcWebSocketTransport } from '@solana/rpc-transport
|
|
1
|
+
import type { IRpcWebSocketTransport } from '@solana/rpc-transport';
|
|
2
2
|
type Config = Readonly<{
|
|
3
3
|
/**
|
|
4
4
|
* You might like to open more subscriptions per connection than your RPC provider allows for.
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rpc-websocket-connection-sharding.d.ts","sourceRoot":"","sources":["../../src/rpc-websocket-connection-sharding.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAIpE,KAAK,MAAM,GAAG,QAAQ,CAAC;IACnB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,MAAM,GAAG,MAAM,CAAC;IACjD,SAAS,EAAE,sBAAsB,CAAC;CACrC,CAAC,CAAC;AAMH,wBAAgB,2CAA2C,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,MAAM,GAAG,sBAAsB,CAenH"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import { createWebSocketTransport } from '@solana/rpc-transport';
|
|
2
|
-
import { IRpcWebSocketTransport } from '@solana/rpc-transport/dist/types/transports/transport-types';
|
|
1
|
+
import { createWebSocketTransport, type IRpcWebSocketTransport } from '@solana/rpc-transport';
|
|
3
2
|
export declare function createDefaultRpcSubscriptionsTransport(config: Omit<Parameters<typeof createWebSocketTransport>[0], 'sendBufferHighWatermark'> & {
|
|
4
3
|
/**
|
|
5
4
|
* You might like to open more subscriptions per connection than your RPC provider allows
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rpc-websocket-transport.d.ts","sourceRoot":"","sources":["../../src/rpc-websocket-transport.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,wBAAwB,EAAE,KAAK,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAK9F,wBAAgB,sCAAsC,CAClD,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,OAAO,wBAAwB,CAAC,CAAC,CAAC,CAAC,EAAE,yBAAyB,CAAC,GAAG;IACtF;;;;OAIG;IACH,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,MAAM,CAAC;IACxC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,uBAAuB,CAAC,EAAE,MAAM,CAAC;CACpC,GACF,sBAAsB,CAqBxB"}
|
package/dist/types/rpc.d.ts
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { SolanaRpcMethods, SolanaRpcSubscriptions, SolanaRpcSubscriptionsUnstable } from '@solana/rpc-core';
|
|
2
|
-
import { createJsonRpc, createJsonSubscriptionRpc } from '@solana/rpc-transport';
|
|
3
|
-
import type { Rpc, RpcSubscriptions } from '@solana/rpc-transport/dist/types/json-rpc-types';
|
|
2
|
+
import { createJsonRpc, createJsonSubscriptionRpc, type Rpc, type RpcSubscriptions } from '@solana/rpc-transport';
|
|
4
3
|
export declare function createSolanaRpc(config: Omit<Parameters<typeof createJsonRpc>[0], 'api'>): Rpc<SolanaRpcMethods>;
|
|
5
4
|
export declare function createSolanaRpcSubscriptions(config: Omit<Parameters<typeof createJsonSubscriptionRpc>[0], 'api'>): RpcSubscriptions<SolanaRpcSubscriptions>;
|
|
6
5
|
export declare function createSolanaRpcSubscriptions_UNSTABLE(config: Omit<Parameters<typeof createJsonSubscriptionRpc>[0], 'api'>): RpcSubscriptions<SolanaRpcSubscriptions & SolanaRpcSubscriptionsUnstable>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rpc.d.ts","sourceRoot":"","sources":["../../src/rpc.ts"],"names":[],"mappings":"AACA,OAAO,EAIH,gBAAgB,EAChB,sBAAsB,EACtB,8BAA8B,EACjC,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,aAAa,EAAE,yBAAyB,EAAE,KAAK,GAAG,EAAE,KAAK,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAQlH,wBAAgB,eAAe,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,OAAO,aAAa,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,GAAG,GAAG,CAAC,gBAAgB,CAAC,CAK/G;AAED,wBAAgB,4BAA4B,CACxC,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,OAAO,yBAAyB,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,GACrE,gBAAgB,CAAC,sBAAsB,CAAC,CAY1C;AAED,wBAAgB,qCAAqC,CACjD,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,OAAO,yBAAyB,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,GACrE,gBAAgB,CAAC,sBAAsB,GAAG,8BAA8B,CAAC,CAK3E"}
|