@solana/web3.js 2.0.0-experimental.9409822 → 2.0.0-experimental.9b5eac4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.browser.cjs +7 -2
- package/dist/index.browser.cjs.map +1 -1
- package/dist/index.browser.js +3 -0
- package/dist/index.browser.js.map +1 -1
- package/dist/index.development.js +481 -145
- package/dist/index.development.js.map +1 -1
- package/dist/index.native.js +1 -0
- package/dist/index.native.js.map +1 -1
- package/dist/index.node.cjs +9 -0
- package/dist/index.node.cjs.map +1 -1
- package/dist/index.node.js +1 -0
- package/dist/index.node.js.map +1 -1
- package/dist/index.production.min.js +20 -4
- package/dist/types/index.d.ts +1 -0
- package/dist/types/index.d.ts.map +1 -1
- package/package.json +17 -16
|
@@ -2,11 +2,27 @@ this.globalThis = this.globalThis || {};
|
|
|
2
2
|
this.globalThis.solanaWeb3 = (function (exports) {
|
|
3
3
|
'use strict';
|
|
4
4
|
|
|
5
|
-
var
|
|
5
|
+
var ne=Object.create;var A=Object.defineProperty;var oe=Object.getOwnPropertyDescriptor;var se=Object.getOwnPropertyNames;var ie=Object.getPrototypeOf,ae=Object.prototype.hasOwnProperty;var ce=(e,r,t)=>r in e?A(e,r,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[r]=t;var ue=(e,r)=>()=>(e&&(r=e(e=0)),r);var le=(e,r)=>()=>(r||e((r={exports:{}}).exports,r),r.exports);var pe=(e,r,t,n)=>{if(r&&typeof r=="object"||typeof r=="function")for(let o of se(r))!ae.call(e,o)&&o!==t&&A(e,o,{get:()=>r[o],enumerable:!(n=oe(r,o))||n.enumerable});return e};var de=(e,r,t)=>(t=e!=null?ne(ie(e)):{},pe(r||!e||!e.__esModule?A(t,"default",{value:e,enumerable:!0}):t,e));var h=(e,r,t)=>(ce(e,typeof r!="symbol"?r+"":r,t),t);var s=ue(()=>{});var Z=le((Pt,Y)=>{s();var $e=Object.prototype.toString,ke=Object.keys||function(e){var r=[];for(var t in e)r.push(t);return r};function E(e,r){var t,n,o,i,a,u,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 E(e.toJSON(),r);if(c=$e.call(e),c==="[object Array]"){for(o="[",n=e.length-1,t=0;t<n;t++)o+=E(e[t],!0)+",";return n>-1&&(o+=E(e[t],!0)),o+"]"}else if(c==="[object Object]"){for(i=ke(e).sort(),n=i.length,o="",t=0;t<n;)a=i[t],u=E(e[a],!1),u!==void 0&&(o&&(o+=","),o+=JSON.stringify(a)+":"+u),t++;return "{"+o+"}"}else return JSON.stringify(e);case"function":case"undefined":return r?null:void 0;case"string":return JSON.stringify(e);default:return isFinite(e)?e:null}}Y.exports=function(e){var r=E(e,!1);if(r!==void 0)return ""+r};});s();s();var fe=(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))(fe||{}),$=2,N=1;function Ue(e){return e&~$}function qe(e){return e&~N}function Ve(e){return e>=2}function We(e){return (e&N)!==0}function Ge(e,r){return e|r}function Je(e){return e|$}function Me(e){return e|N}s();s();s();s();var C=e=>{let r=e.reduce((o,i)=>o+i.length,0),t=new Uint8Array(r),n=0;return e.forEach(o=>{t.set(o,n),n+=o.length;}),t},k=(e,r)=>{if(e.length>=r)return e;let t=new Uint8Array(r).fill(0);return t.set(e),t},b=(e,r)=>k(e.slice(0,r),r);s();var y=class extends Error{constructor(t){super(`Serializer [${t}] cannot deserialize empty buffers.`);h(this,"name","DeserializingEmptyBufferError");}},g=class extends Error{constructor(t,n,o){super(`Serializer [${t}] expected ${n} bytes, got ${o}.`);h(this,"name","NotEnoughBytesError");}};s();function _(e,r,t){return {description:t??`fixed(${r}, ${e.description})`,fixedSize:r,maxSize:r,serialize:n=>b(e.serialize(n),r),deserialize:(n,o=0)=>{if(n=n.slice(o,o+r),n.length<r)throw new g("fixSerializer",r,n.length);e.fixedSize!==null&&(n=b(n,e.fixedSize));let[i]=e.deserialize(n,0);return [i,o+r]}}}s();s();s();var w=class extends Error{constructor(t,n,o){let i=`Expected a string of base ${n}, got [${t}].`;super(i);h(this,"name","InvalidBaseStringError");this.cause=o;}};var K=e=>{let r=e.length,t=BigInt(r);return {description:`base${r}`,fixedSize:null,maxSize:null,serialize(n){if(!n.match(new RegExp(`^[${e}]*$`)))throw new w(n,r);if(n==="")return new Uint8Array;let o=[...n],i=o.findIndex(m=>m!==e[0]);i=i===-1?o.length:i;let a=Array(i).fill(0);if(i===o.length)return Uint8Array.from(a);let u=o.slice(i),c=0n,d=1n;for(let m=u.length-1;m>=0;m-=1)c+=d*BigInt(e.indexOf(u[m])),d*=t;let f=[];for(;c>0n;)f.unshift(Number(c%256n)),c/=256n;return Uint8Array.from(a.concat(f))},deserialize(n,o=0){if(n.length===0)return ["",0];let i=n.slice(o),a=i.findIndex(f=>f!==0);a=a===-1?i.length:a;let u=e[0].repeat(a);if(a===i.length)return [u,n.length];let c=i.slice(a).reduce((f,m)=>f*256n+BigInt(m),0n),d=[];for(;c>0n;)d.unshift(e[Number(c%t)]),c/=t;return [u+d.join(""),n.length]}}};s();var S=K("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz");s();var j=e=>e.replace(/\u0000/g,"");s();var B={description:"utf8",fixedSize:null,maxSize:null,serialize(e){return new TextEncoder().encode(e)},deserialize(e,r=0){let t=new TextDecoder().decode(e.slice(r));return [j(t),e.length]}};s();s();var R;(function(e){e.Little="le",e.Big="be";})(R||(R={}));s();var I=class extends RangeError{constructor(t,n,o,i){super(`Serializer [${t}] expected number to be between ${n} and ${o}, got ${i}.`);h(this,"name","NumberOutOfRangeError");}};s();function F(e){let r,t=e.name;return e.size>1&&(r=!("endian"in e.options)||e.options.endian===R.Little,t+=r?"(le)":"(be)"),{description:e.options.description??t,fixedSize:e.size,maxSize:e.size,serialize(n){e.range&&he(e.name,e.range[0],e.range[1],n);let o=new ArrayBuffer(e.size);return e.set(new DataView(o),n,r),new Uint8Array(o)},deserialize(n,o=0){let i=n.slice(o,o+e.size);ye("i8",i,e.size);let a=ge(i);return [e.get(a,r),o+e.size]}}}var me=e=>e.buffer.slice(e.byteOffset,e.byteLength+e.byteOffset),ge=e=>new DataView(me(e)),he=(e,r,t,n)=>{if(n<r||n>t)throw new I(e,r,t,n)},ye=(e,r,t)=>{if(r.length===0)throw new y(e);if(r.length<t)throw new g(e,t,r.length)};s();var O=(e={})=>F({name:"u32",size:4,range:[0,+"0xffffffff"],set:(r,t,n)=>r.setUint32(0,Number(t),n),get:(r,t)=>r.getUint32(0,t),options:e});s();function H(e){return typeof e=="object"?e.description:`${e}`}s();function v(e={}){let r=e.size??O(),t=e.encoding??B,n=e.description??`string(${t.description}; ${H(r)})`;return r==="variable"?{...t,description:n}:typeof r=="number"?_(t,r,n):{description:n,fixedSize:null,maxSize:null,serialize:o=>{let i=t.serialize(o),a=r.serialize(i.length);return C([a,i])},deserialize:(o,i=0)=>{if(o.slice(i).length===0)throw new y("string");let[a,u]=r.deserialize(o,i),c=Number(a);i=u;let d=o.slice(i,i+c);if(d.length<c)throw new g("string",c,d.length);let[f,m]=t.deserialize(d);return i+=m,[f,i]}}}function ct(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 t=S.serialize(e).byteLength;if(t!==32)throw new Error(`Expected input string to decode to a byte array of length 32. Actual length: ${t}`)}catch(r){throw new Error(`\`${e}\` is not a base-58 encoded address`,{cause:r})}}function Ee(e){return v({description:e?.description??(""),encoding:S,size:32})}function ut(){return new Intl.Collator("en",{caseFirst:"lower",ignorePunctuation:!1,localeMatcher:"best fit",numeric:!1,sensitivity:"variant",usage:"sort"}).compare}function U(){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 x;async function be(e){return x===void 0&&(x=new Promise(r=>{e.generateKey("Ed25519",!1,["sign","verify"]).catch(()=>{r(x=!1);}).then(()=>{r(x=!0);});})),typeof x=="boolean"?x:await x}async function we(){if(U(),typeof globalThis.crypto>"u"||typeof globalThis.crypto.subtle?.generateKey!="function")throw new Error("No key generation implementation could be found");if(!await be(globalThis.crypto.subtle))throw new Error(`This runtime does not support the generation of Ed25519 key pairs.
|
|
6
6
|
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
7
|
+
Install and import \`@solana/webcrypto-ed25519-polyfill\` before generating keys in environments that do not support Ed25519.
|
|
8
|
+
|
|
9
|
+
For a list of runtimes that currently support Ed25519 operations, visit https://github.com/WICG/webcrypto-secure-curves/issues/20`)}async function Se(){if(U(),typeof globalThis.crypto>"u"||typeof globalThis.crypto.subtle?.exportKey!="function")throw new Error("No key export implementation could be found")}async function lt(){return await we(),await crypto.subtle.generateKey("Ed25519",!1,["sign","verify"])}async function pt(e){if(await Se(),e.type!=="public"||e.algorithm.name!=="Ed25519")throw new Error("The `CryptoKey` must be an `Ed25519` public key");let r=await crypto.subtle.exportKey("raw",e),[t]=Ee().deserialize(new Uint8Array(r));return t}s();s();function P(e,r,t){if(Array.isArray(e))return e.map((n,o)=>P(n,[...r,o],t));if(typeof e=="object"&&e!==null){let n={};for(let o in e)Object.prototype.hasOwnProperty.call(e,o)&&(n[o]=P(e[o],[...r,o],t));return n}else return typeof e=="bigint"?(t&&(e>Number.MAX_SAFE_INTEGER||e<-Number.MAX_SAFE_INTEGER)&&t(r,e),Number(e)):e}function Re(e,r){return P(e,[],r)}var l={},Ie={getAccountInfo:[["value","data","parsed","info","lastExtendedSlotStartIndex"],["value","data","parsed","info","slashPenalty"],["value","data","parsed","info","warmupCooldownRate"],["value","data","parsed","info","tokenAmount","decimals"],["value","data","parsed","info","tokenAmount","uiAmount"],["value","data","parsed","info","rentExemptReserve","decimals"],["value","data","parsed","info","delegatedAmount","decimals"],["value","data","parsed","info","extensions",l,"state","olderTransferFee","transferFeeBasisPoints"],["value","data","parsed","info","extensions",l,"state","newerTransferFee","transferFeeBasisPoints"],["value","data","parsed","info","extensions",l,"state","preUpdateAverageRate"],["value","data","parsed","info","extensions",l,"state","currentRate"],["value","data","parsed","info","decimals"],["value","data","parsed","info","numRequiredSigners"],["value","data","parsed","info","numValidSigners"],["value","data","parsed","info","stake","delegation","warmupCooldownRate"],["value","data","parsed","info","exemptionThreshold"],["value","data","parsed","info","burnPercent"],["value","data","parsed","info","commission"],["value","data","parsed","info","votes",l,"confirmationCount"]],getBlockTime:[[]],getInflationReward:[[l,"commission"]],getRecentPerformanceSamples:[[l,"samplePeriodSecs"]],getTokenLargestAccounts:[["value",l,"decimals"],["value",l,"uiAmount"]],getTransaction:[["meta","preTokenBalances",l,"accountIndex"],["meta","preTokenBalances",l,"uiTokenAmount","decimals"],["meta","postTokenBalances",l,"accountIndex"],["meta","postTokenBalances",l,"uiTokenAmount","decimals"],["meta","rewards",l,"commission"],["meta","innerInstructions",l,"index"],["meta","innerInstructions",l,"instructions",l,"programIdIndex"],["meta","innerInstructions",l,"instructions",l,"accounts",l],["transaction","message","addressTableLookups",l,"writableIndexes",l],["transaction","message","addressTableLookups",l,"readonlyIndexes",l],["transaction","message","instructions",l,"programIdIndex"],["transaction","message","instructions",l,"accounts",l],["transaction","message","header","numReadonlySignedAccounts"],["transaction","message","header","numReadonlyUnsignedAccounts"],["transaction","message","header","numRequiredSignatures"]],getVoteAccounts:[["current",l,"commission"],["delinquent",l,"commission"]]};function q(e,r){return e.filter(t=>t[0]===l&&typeof r=="number"||t[0]===r).map(t=>t.slice(1))}function D(e,r){if(Array.isArray(e))return e.map((t,n)=>{let o=q(r,n);return D(t,o)});if(typeof e=="object"&&e!==null){let t={};for(let[n,o]of Object.entries(e)){let i=q(r,n);t[n]=D(o,i);}return t}else return typeof e=="number"&&r.length===0&&Number.isInteger(e)?BigInt(e):e}function Te(e,r){let t=r?Ie[r]:void 0;return D(e,t??[])}function V(e){return new Proxy({},{defineProperty(){return !1},deleteProperty(){return !1},get(...r){let[t,n]=r,o=n.toString();return function(...i){let a=e?.onIntegerOverflow,u=Re(i,a?(c,d)=>a(o,c,d):void 0);return {methodName:o,params:u,responseProcessor:c=>Te(c,o)}}}})}s();var ze=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"}},L=0;function Ae(){let e=L;return L=(L+1)%Number.MAX_SAFE_INTEGER,e}function Ne(e,r){return {id:Ae(),jsonrpc:"2.0",method:e,params:r}}function Ce(e,r){return {async send(t){let{methodName:n,params:o,responseProcessor:i}=r,a=Ne(n,o),u=await e.transport({payload:a,signal:t?.abortSignal});if("error"in u)throw new ze(u.error);return i?i(u.result):u.result}}}function _e(e){return new Proxy(e.api,{defineProperty(){return !1},deleteProperty(){return !1},get(r,t,n){return function(...o){let i=t.toString(),a=Reflect.get(r,i,n),u=a?a(...o):{methodName:i,params:o};return Ce(e,u)}}})}function G(e){return _e(e)}var Be=globalThis.fetch,Oe=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 Le(e){let r={};for(let t in e)r[t.toLowerCase()]=e[t];return r}function J({httpAgentNodeOnly:e,headers:r,url:t}){let n=void 0;let o=r&&Le(r);return async function({payload:a,signal:u}){let c=JSON.stringify(a),d={agent:n,body:c,headers:{...o,accept:"application/json","content-length":c.length.toString(),"content-type":"application/json; charset=utf-8"},method:"POST",signal:u},f=await Be(t,d);if(!f.ok)throw new Oe({message:f.statusText,statusCode:f.status});return await f.json()}}s();s();var T=class extends Error{constructor(t,n,o){let i=(typeof n[0]=="number"?n[0]:parseInt(n[0],10))+1,a="",u=i%10,c=i%100;u==1&&c!=11?a=i+"st":u==2&&c!=12?a=i+"nd":u==3&&c!=13?a=i+"rd":a=i+"th";let d=n.length>1?n.slice(1).map(f=>typeof f=="number"?`[${f}]`:f).join("."):null;super(`The ${a} argument to the \`${t}\` RPC method${d?` at path \`${d}\``:""} 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=t,this.value=o;}get name(){return "SolanaJsonRpcIntegerOverflowError"}};var M={onIntegerOverflow(e,r,t){throw new T(e,r,t)}};function Ct(e){return G({...e,api:V(M)})}s();s();function X(e,r){let t;return async function(o){let{payload:i,signal:a}=o,u=r(i);if(u===void 0)return await e(o);if(t||(Promise.resolve().then(()=>{t=void 0;}),t={}),t[u]==null){let d=new AbortController;t[u]={abortController:d,numConsumers:0,responsePromise:e({...o,signal:d.signal})};}let c=t[u];if(c.numConsumers++,a){let d=c.responsePromise;return await new Promise((f,m)=>{let z=re=>{a.removeEventListener("abort",z),c.numConsumers-=1,c.numConsumers===0&&c.abortController.abort();let te=new DOMException(re.target.reason,"AbortError");m(te);};a.addEventListener("abort",z),d.then(f).finally(()=>{a.removeEventListener("abort",z);});})}else return await c.responsePromise}}s();var Q=de(Z(),1);function ee(e){if(!(e==null||typeof e!="object"||Array.isArray(e))&&"jsonrpc"in e&&e.jsonrpc==="2.0"&&"method"in e&&"params"in e)return (0, Q.default)([e.method,e.params])}function Ke(e){let r={};for(let t in e)r[t.toLowerCase()]=e[t];return r}function Ft(e){return X(J({...e,headers:{...e.headers?Ke(e.headers):void 0,"solana-client":"js/2.0.0-development"}}),ee)}
|
|
10
|
+
|
|
11
|
+
exports.AccountRole = fe;
|
|
12
|
+
exports.assertIsBase58EncodedAddress = ct;
|
|
13
|
+
exports.createDefaultRpcTransport = Ft;
|
|
14
|
+
exports.createSolanaRpc = Ct;
|
|
15
|
+
exports.downgradeRoleToNonSigner = Ue;
|
|
16
|
+
exports.downgradeRoleToReadonly = qe;
|
|
17
|
+
exports.generateKeyPair = lt;
|
|
18
|
+
exports.getBase58EncodedAddressCodec = Ee;
|
|
19
|
+
exports.getBase58EncodedAddressComparator = ut;
|
|
20
|
+
exports.getBase58EncodedAddressFromPublicKey = pt;
|
|
21
|
+
exports.isSignerRole = Ve;
|
|
22
|
+
exports.isWritableRole = We;
|
|
23
|
+
exports.mergeRoles = Ge;
|
|
24
|
+
exports.upgradeRoleToSigner = Je;
|
|
25
|
+
exports.upgradeRoleToWritable = Me;
|
|
10
26
|
|
|
11
27
|
return exports;
|
|
12
28
|
|
package/dist/types/index.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,OAAO,CAAC;AACtB,cAAc,iBAAiB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,cAAc,CAAC;AAC7B,cAAc,OAAO,CAAC;AACtB,cAAc,iBAAiB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@solana/web3.js",
|
|
3
|
-
"version": "2.0.0-experimental.
|
|
3
|
+
"version": "2.0.0-experimental.9b5eac4",
|
|
4
4
|
"description": "Solana Javascript API",
|
|
5
5
|
"exports": {
|
|
6
6
|
"browser": {
|
|
@@ -50,31 +50,32 @@
|
|
|
50
50
|
],
|
|
51
51
|
"dependencies": {
|
|
52
52
|
"fast-stable-stringify": "^1.0.0",
|
|
53
|
-
"@solana/
|
|
54
|
-
"@solana/
|
|
55
|
-
"@solana/rpc-
|
|
53
|
+
"@solana/instructions": "2.0.0-experimental.9b5eac4",
|
|
54
|
+
"@solana/keys": "2.0.0-experimental.9b5eac4",
|
|
55
|
+
"@solana/rpc-core": "2.0.0-experimental.9b5eac4",
|
|
56
|
+
"@solana/rpc-transport": "2.0.0-experimental.9b5eac4"
|
|
56
57
|
},
|
|
57
58
|
"devDependencies": {
|
|
58
|
-
"@solana/eslint-config-solana": "^1.0.
|
|
59
|
+
"@solana/eslint-config-solana": "^1.0.2",
|
|
59
60
|
"@swc/core": "^1.3.18",
|
|
60
|
-
"@swc/jest": "^0.2.
|
|
61
|
-
"@types/jest": "^29.5.
|
|
62
|
-
"@typescript-eslint/eslint-plugin": "^
|
|
63
|
-
"@typescript-eslint/parser": "^
|
|
61
|
+
"@swc/jest": "^0.2.26",
|
|
62
|
+
"@types/jest": "^29.5.2",
|
|
63
|
+
"@typescript-eslint/eslint-plugin": "^6.0.0",
|
|
64
|
+
"@typescript-eslint/parser": "^6.0.0",
|
|
64
65
|
"agadoo": "^3.0.0",
|
|
65
|
-
"eslint": "^8.
|
|
66
|
-
"eslint-plugin-jest": "^27.
|
|
66
|
+
"eslint": "^8.45.0",
|
|
67
|
+
"eslint-plugin-jest": "^27.2.3",
|
|
67
68
|
"eslint-plugin-react-hooks": "^4.6.0",
|
|
68
69
|
"eslint-plugin-sort-keys-fix": "^1.1.2",
|
|
69
|
-
"jest": "^29.
|
|
70
|
-
"jest-environment-jsdom": "^29.
|
|
71
|
-
"jest-runner-eslint": "^2.
|
|
70
|
+
"jest": "^29.6.1",
|
|
71
|
+
"jest-environment-jsdom": "^29.6.0",
|
|
72
|
+
"jest-runner-eslint": "^2.1.0",
|
|
72
73
|
"jest-runner-prettier": "^1.0.0",
|
|
73
74
|
"postcss": "^8.4.12",
|
|
74
|
-
"prettier": "^2.
|
|
75
|
+
"prettier": "^2.8.8",
|
|
75
76
|
"ts-node": "^10.9.1",
|
|
76
77
|
"tsup": "6.7.0",
|
|
77
|
-
"typescript": "^5.
|
|
78
|
+
"typescript": "^5.1.6",
|
|
78
79
|
"version-from-git": "^1.1.1",
|
|
79
80
|
"build-scripts": "0.0.0",
|
|
80
81
|
"test-config": "0.0.0",
|