@sega-so/sega-sdk
Version:
An SDK for building applications on top of SEGA.
2 lines • 11.8 kB
JavaScript
"use strict";var Se=Object.create;var C=Object.defineProperty,ke=Object.defineProperties,Ae=Object.getOwnPropertyDescriptor,Be=Object.getOwnPropertyDescriptors,Ce=Object.getOwnPropertyNames,X=Object.getOwnPropertySymbols,Ie=Object.getPrototypeOf,Q=Object.prototype.hasOwnProperty,Ne=Object.prototype.propertyIsEnumerable;var $=(t,e,n)=>e in t?C(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,f=(t,e)=>{for(var n in e||(e={}))Q.call(e,n)&&$(t,n,e[n]);if(X)for(var n of X(e))Ne.call(e,n)&&$(t,n,e[n]);return t},y=(t,e)=>ke(t,Be(e));var Re=(t,e)=>{for(var n in e)C(t,n,{get:e[n],enumerable:!0})},ee=(t,e,n,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of Ce(e))!Q.call(t,o)&&o!==n&&C(t,o,{get:()=>e[o],enumerable:!(r=Ae(e,o))||r.enumerable});return t};var c=(t,e,n)=>(n=t!=null?Se(Ie(t)):{},ee(e||!t||!t.__esModule?C(n,"default",{value:t,enumerable:!0}):n,t)),De=t=>ee(C({},"__esModule",{value:!0}),t);var g=(t,e,n)=>new Promise((r,o)=>{var u=s=>{try{p(n.next(s))}catch(a){o(a)}},m=s=>{try{p(n.throw(s))}catch(a){o(a)}},p=s=>s.done?r(s.value):Promise.resolve(s.value).then(u,m);p((n=n.apply(t,e)).next())});var nt={};Re(nt,{ACCOUNT_TYPE_SIZE:()=>et,AccountType:()=>be,fetchMultipleMintInfos:()=>tt,getMultipleAccountsInfo:()=>Y,getMultipleAccountsInfoWithCustomFlags:()=>Te});module.exports=De(nt);var Z=require("@solana/web3.js");var d=c(require("bn.js")),Ue=c(require("decimal.js"));var se=c(require("big.js")),Ve=c(require("bn.js"));var I=require("lodash");var _=class{constructor(e){this.logLevel=e.logLevel!==void 0?e.logLevel:0,this.name=e.name}set level(e){this.logLevel=e}get time(){return Date.now().toString()}get moduleName(){return this.name}isLogLevel(e){return e<=this.logLevel}error(...e){return this.isLogLevel(0)?(console.error(this.time,this.name,"sdk logger error",...e),this):this}logWithError(...e){let n=e.map(r=>typeof r=="object"?JSON.stringify(r):r).join(", ");throw new Error(n)}warning(...e){return this.isLogLevel(1)?(console.warn(this.time,this.name,"sdk logger warning",...e),this):this}info(...e){return this.isLogLevel(2)?(console.info(this.time,this.name,"sdk logger info",...e),this):this}debug(...e){return this.isLogLevel(3)?(console.debug(this.time,this.name,"sdk logger debug",...e),this):this}},te={},Me={};function l(t){let e=(0,I.get)(te,t);if(!e){let n=(0,I.get)(Me,t);e=new _({name:t,logLevel:n}),(0,I.set)(te,t,e)}return e}var ne=c(require("toformat")),Fe=ne.default,N=Fe;var R=c(require("big.js")),ie=c(require("bn.js")),oe=c(require("decimal.js-light"));var S=c(require("bn.js"));var re=9007199254740991;function h(t){let e=l("Sega_parseBigNumberish");if(t instanceof S.default)return t;if(typeof t=="string"){if(t.match(/^-?[0-9]+$/))return new S.default(t);e.logWithError(`invalid BigNumberish string: ${t}`)}return typeof t=="number"?(t%1&&e.logWithError(`BigNumberish number underflow: ${t}`),(t>=re||t<=-re)&&e.logWithError(`BigNumberish number overflow: ${t}`),new S.default(String(t))):typeof t=="bigint"?new S.default(t.toString()):(e.error(`invalid BigNumberish value: ${t}`),new S.default(0))}var L=l("module/fraction"),q=N(R.default),D=N(oe.default),Ee={0:D.ROUND_DOWN,1:D.ROUND_HALF_UP,2:D.ROUND_UP},Oe={0:R.default.roundDown,1:R.default.roundHalfUp,2:R.default.roundUp},T=class t{constructor(e,n=new ie.default(1)){this.numerator=h(e),this.denominator=h(n)}get quotient(){return this.numerator.div(this.denominator)}invert(){return new t(this.denominator,this.numerator)}add(e){let n=e instanceof t?e:new t(h(e));return this.denominator.eq(n.denominator)?new t(this.numerator.add(n.numerator),this.denominator):new t(this.numerator.mul(n.denominator).add(n.numerator.mul(this.denominator)),this.denominator.mul(n.denominator))}sub(e){let n=e instanceof t?e:new t(h(e));return this.denominator.eq(n.denominator)?new t(this.numerator.sub(n.numerator),this.denominator):new t(this.numerator.mul(n.denominator).sub(n.numerator.mul(this.denominator)),this.denominator.mul(n.denominator))}mul(e){let n=e instanceof t?e:new t(h(e));return new t(this.numerator.mul(n.numerator),this.denominator.mul(n.denominator))}div(e){let n=e instanceof t?e:new t(h(e));return new t(this.numerator.mul(n.denominator),this.denominator.mul(n.numerator))}toSignificant(e,n={groupSeparator:""},r=1){Number.isInteger(e)||L.logWithError(`${e} is not an integer.`),e<=0&&L.logWithError(`${e} is not positive.`),D.set({precision:e+1,rounding:Ee[r]});let o=new D(this.numerator.toString()).div(this.denominator.toString()).toSignificantDigits(e);return o.toFormat(o.decimalPlaces(),n)}toFixed(e,n={groupSeparator:""},r=1){return Number.isInteger(e)||L.logWithError(`${e} is not an integer.`),e<0&&L.logWithError(`${e} is negative.`),q.DP=e,q.RM=Oe[r]||1,new q(this.numerator.toString()).div(this.denominator.toString()).toFormat(e,n)}isZero(){return this.numerator.isZero()}};var wt=l("Sega_amount"),Pt=N(se.default);var ae=require("@solana/web3.js"),U=require("@solana/spl-token"),ce={chainId:101,address:ae.PublicKey.default.toBase58(),programId:U.TOKEN_PROGRAM_ID.toBase58(),decimals:9,symbol:"SOL",name:"solana",logoURI:"https://img-v1.raydium.io/icon/So11111111111111111111111111111111111111112.png",tags:[],priority:2,type:"sega",extensions:{coingeckoId:"solana"}},P={chainId:101,address:"So11111111111111111111111111111111111111112",programId:U.TOKEN_PROGRAM_ID.toBase58(),decimals:9,symbol:"WSOL",name:"Wrapped SOL",logoURI:"https://img-v1.raydium.io/icon/So11111111111111111111111111111111111111112.png",tags:[],priority:2,type:"sega",extensions:{coingeckoId:"solana"}};var O=require("@solana/web3.js");var i=require("@solana/web3.js"),ue=require("@solana/spl-token");function G({pubkey:t,isSigner:e=!1,isWritable:n=!0}){return{pubkey:t,isWritable:n,isSigner:e}}var Bt=[G({pubkey:ue.TOKEN_PROGRAM_ID,isWritable:!1}),G({pubkey:i.SystemProgram.programId,isWritable:!1}),G({pubkey:i.SYSVAR_RENT_PUBKEY,isWritable:!1})];function j({publicKey:t,transformSol:e}){let n=le(t.toString());if(n instanceof i.PublicKey)return e&&n.equals(M)?E:n;if(e&&n.toString()===M.toBase58())return E;if(typeof n=="string"){if(n===i.PublicKey.default.toBase58())return i.PublicKey.default;try{return new i.PublicKey(n)}catch(r){throw new Error("invalid public key")}}throw new Error("invalid public key")}function le(t){try{return new i.PublicKey(t)}catch(e){return t}}var Ct=new i.PublicKey("MemoSq4gqABAXKb96qnH8TysNcWxMyWCqXgDLGmfcHr"),It=new i.PublicKey("MemoSq4gqABAXKb96qnH8TysNcWxMyWCqXgDLGmfcHr"),Nt=new i.PublicKey("SysvarRent111111111111111111111111111111111"),Rt=new i.PublicKey("SysvarC1ock11111111111111111111111111111111"),Ke=new i.PublicKey("metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),Dt=new i.PublicKey("Sysvar1nstructions1111111111111111111111111"),Mt=i.SystemProgram.programId,Ft=new i.PublicKey("4k3Dyjzvzp8eMZWUXbBCjEvwSkkk59S5iCNLY3QrkX6R"),Lt=new i.PublicKey("Ea5SjE2Y6yvCeW5dYTn7PYMuW5ikXkvbGdcmSnXeaLjS"),Et=new i.PublicKey("SRMuApVNdxXokk5GT7XD5cUUgXMBCoAz2LHeuAoKWRt"),Ot=new i.PublicKey("EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v"),Vt=new i.PublicKey("Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB"),Wt=new i.PublicKey("mSoLzYCxHdYgdzU16g5QSh3i5K3z3KZK7ytfqcJm7So"),Kt=new i.PublicKey("7dHbWXmci3dT8UFYWYZweBLXgycu7Y3iL6trKn1Y7ARj"),vt=new i.PublicKey("USDH1SM1ojwWUga67PGrgFWUHibbjqMvuMaDkRJTgkX"),_t=new i.PublicKey("NRVwhjBQiUPYtfDT5zRBVJajzFQHaBUNtC7SNVvqRFa"),qt=new i.PublicKey("ANAxByE6G2WjFp7A4NqtWYXb3mgruyzZYg3spfxe6Lbo"),Ut=new i.PublicKey("7vfCXTUXx5WJV5JADk17DUJ4ksgau7utNKj4b963voxs"),E=new i.PublicKey("So11111111111111111111111111111111111111112"),M=i.PublicKey.default;function me(t){return j({publicKey:t,transformSol:!0})}var V=class V{constructor({mint:e,decimals:n,symbol:r,name:o,skipMint:u=!1,isToken2022:m=!1}){if(e===M.toBase58()||e instanceof O.PublicKey&&M.equals(e)){this.decimals=P.decimals,this.symbol=P.symbol,this.name=P.name,this.mint=new O.PublicKey(P.address),this.isToken2022=!1;return}this.decimals=n,this.symbol=r||e.toString().substring(0,6),this.name=o||e.toString().substring(0,6),this.mint=u?O.PublicKey.default:j({publicKey:e}),this.isToken2022=m}equals(e){return this===e?!0:this.mint.equals(e.mint)}};V.WSOL=new V(y(f({},P),{mint:P.address}));var F=V;var W=class W{constructor({decimals:e,symbol:n="UNKNOWN",name:r="UNKNOWN"}){this.decimals=e,this.symbol=n,this.name=r}equals(e){return this===e}};W.SOL=new W(ce);var H=W;var pe=c(require("bn.js"));var en=new T(new pe.default(100));var an=l("Sega_price");var _e=require("@solana/web3.js"),qe=c(require("bn.js"));var ve=new d.default(0),vn=new d.default(1),_n=new d.default(2),qn=new d.default(3),Un=new d.default(5),We=new d.default(10),Gn=new d.default(100),jn=new d.default(1e3),Hn=new d.default(1e4);function z(t,e=1,n=[]){let r=[...t];if(e<=0)return n;for(;r.length;)n.push(r.splice(0,e));return n}var He=require("@solana/web3.js"),ze=require("@solana/spl-token");var k=require("@solana/web3.js");var je=require("@solana/spl-token");var sr=l("Sega_txUtil");var b=require("@solana/web3.js"),dr=new b.PublicKey("SegazTQwbYWknDZkJ6j2Kgvm5gw3MrHGKtWstZdoNKZ"),fr=new b.PublicKey("Ajk8d9bERSaFdeoT1d8JUVfaDayrYLnAdgeB47TFMUaG"),gr=new b.PublicKey("2HbjxVVKJ7Ct72Rcd8WK4VTqmwTXL5aAggkH1CHGFGmh"),Ye=new b.PublicKey("auetiVUVJkRxvNPLYEvVnz8UJSqQ1VgoA83PcicHVD1"),Je=new b.PublicKey("GzqQwxPSmUZnTyCfX9YWqi32MJg43ujP786ZoacL559Y"),Ze=new b.PublicKey("GzqQwxPSmUZnTyCfX9YWqi32MJg43ujP786ZoacL559Y");var hr={SERUM_MARKET:b.PublicKey.default,UTIL1216:b.PublicKey.default,CREATE_CPMM_POOL_PROGRAM:Ye,CREATE_CPMM_POOL_AUTH:Je,CREATE_CPMM_POOL_FEE_ACC:Ze};var Xe=c(require("bn.js"));var he=require("@solana/web3.js");var A=require("@solana/web3.js"),$e=c(require("axios"));var Qe=require("@solana/web3.js");var x=require("@solana/spl-token");var J=l("Sega_accountInfo_util");function Y(t,e,n){return g(this,null,function*(){let{batchRequest:r,commitment:o="confirmed",chunkCount:u=100}=f({batchRequest:!1},n),m=z(e,u),p=new Array(m.length).fill([]);if(r){let s=m.map(w=>({methodName:"getMultipleAccounts",args:t._buildArgs([w.map(B=>B.toBase58())],o,"base64")})),a=z(s,10);p=(yield(yield Promise.all(a.map(w=>g(this,null,function*(){return yield t._rpcBatchRequest(w)})))).flat()).map(w=>(w.error&&J.logWithError(`failed to get info for multiple accounts, RPC_ERROR, ${w.error.message}`),w.result.value.map(v=>{if(v){let{data:B,executable:ye,lamports:xe,owner:we,rentEpoch:Pe}=v;return B.length!==2&&B[1]!=="base64"&&J.logWithError("info must be base64 encoded, RPC_ERROR"),{data:Buffer.from(B[0],"base64"),executable:ye,lamports:xe,owner:new Z.PublicKey(we),rentEpoch:Pe}}return null})))}else try{p=yield Promise.all(m.map(s=>t.getMultipleAccountsInfo(s,o)))}catch(s){s instanceof Error&&J.logWithError(`failed to get info for multiple accounts, RPC_ERROR, ${s.message}`)}return p.flat()})}function Te(t,e,n){return g(this,null,function*(){let r=yield Y(t,e.map(o=>o.pubkey),n);return e.map((o,u)=>y(f({},o),{accountInfo:r[u]}))})}var be=(r=>(r[r.Uninitialized=0]="Uninitialized",r[r.Mint=1]="Mint",r[r.Account=2]="Account",r))(be||{}),et=1;function tt(r){return g(this,arguments,function*({connection:t,mints:e,config:n}){var m,p,s;if(e.length===0)return{};let o=yield Te(t,e.map(a=>({pubkey:me(a)})),n),u={};for(let a of o){if(!a.accountInfo||a.accountInfo.data.length<x.MINT_SIZE){console.log("invalid mint account",a.pubkey.toBase58());continue}let K=(0,x.unpackMint)(a.pubkey,a.accountInfo,(m=a.accountInfo)==null?void 0:m.owner);u[a.pubkey.toString()]=y(f({},K),{programId:((p=a.accountInfo)==null?void 0:p.owner)||x.TOKEN_PROGRAM_ID,feeConfig:(s=(0,x.getTransferFeeConfig)(K))!=null?s:void 0})}return u[Z.PublicKey.default.toBase58()]=u[E.toBase58()],u})}0&&(module.exports={ACCOUNT_TYPE_SIZE,AccountType,fetchMultipleMintInfos,getMultipleAccountsInfo,getMultipleAccountsInfoWithCustomFlags});
//# sourceMappingURL=accountInfo.js.map