UNPKG

@sega-so/sega-sdk

Version:

An SDK for building applications on top of SEGA.

2 lines 12.6 kB
var ne=Object.defineProperty,re=Object.defineProperties;var ie=Object.getOwnPropertyDescriptors;var G=Object.getOwnPropertySymbols;var oe=Object.prototype.hasOwnProperty,se=Object.prototype.propertyIsEnumerable;var j=(n,e,t)=>e in n?ne(n,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):n[e]=t,T=(n,e)=>{for(var t in e||(e={}))oe.call(e,t)&&j(n,t,e[t]);if(G)for(var t of G(e))se.call(e,t)&&j(n,t,e[t]);return n},b=(n,e)=>re(n,ie(e));import Ce from"big.js";import f from"bn.js";import p from"bn.js";import $t from"decimal.js";import{PublicKey as ae}from"@solana/web3.js";import{TOKEN_PROGRAM_ID as H}from"@solana/spl-token";var z={chainId:101,address:ae.default.toBase58(),programId:H.toBase58(),decimals:9,symbol:"SOL",name:"solana",logoURI:"https://img-v1.raydium.io/icon/So11111111111111111111111111111111111111112.png",tags:[],priority:2,type:"sega",extensions:{coingeckoId:"solana"}},h={chainId:101,address:"So11111111111111111111111111111111111111112",programId:H.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"}};import{PublicKey as W}from"@solana/web3.js";import{PublicKey as i,SystemProgram as Y,SYSVAR_RENT_PUBKEY as ce}from"@solana/web3.js";import{TOKEN_PROGRAM_ID as ue}from"@solana/spl-token";function O({pubkey:n,isSigner:e=!1,isWritable:t=!0}){return{pubkey:n,isWritable:t,isSigner:e}}var Oe=[O({pubkey:ue,isWritable:!1}),O({pubkey:Y.programId,isWritable:!1}),O({pubkey:ce,isWritable:!1})];function J({publicKey:n,transformSol:e}){let t=Z(n.toString());if(t instanceof i)return e&&t.equals(x)?V:t;if(e&&t.toString()===x.toBase58())return V;if(typeof t=="string"){if(t===i.default.toBase58())return i.default;try{return new i(t)}catch(r){throw new Error("invalid public key")}}throw new Error("invalid public key")}function Z(n){try{return new i(n)}catch(e){return n}}var Ve=new i("MemoSq4gqABAXKb96qnH8TysNcWxMyWCqXgDLGmfcHr"),We=new i("MemoSq4gqABAXKb96qnH8TysNcWxMyWCqXgDLGmfcHr"),Ke=new i("SysvarRent111111111111111111111111111111111"),ve=new i("SysvarC1ock11111111111111111111111111111111"),le=new i("metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),_e=new i("Sysvar1nstructions1111111111111111111111111"),qe=Y.programId,Ue=new i("4k3Dyjzvzp8eMZWUXbBCjEvwSkkk59S5iCNLY3QrkX6R"),Ge=new i("Ea5SjE2Y6yvCeW5dYTn7PYMuW5ikXkvbGdcmSnXeaLjS"),je=new i("SRMuApVNdxXokk5GT7XD5cUUgXMBCoAz2LHeuAoKWRt"),He=new i("EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v"),ze=new i("Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB"),Ye=new i("mSoLzYCxHdYgdzU16g5QSh3i5K3z3KZK7ytfqcJm7So"),Je=new i("7dHbWXmci3dT8UFYWYZweBLXgycu7Y3iL6trKn1Y7ARj"),Ze=new i("USDH1SM1ojwWUga67PGrgFWUHibbjqMvuMaDkRJTgkX"),Xe=new i("NRVwhjBQiUPYtfDT5zRBVJajzFQHaBUNtC7SNVvqRFa"),$e=new i("ANAxByE6G2WjFp7A4NqtWYXb3mgruyzZYg3spfxe6Lbo"),Qe=new i("7vfCXTUXx5WJV5JADk17DUJ4ksgau7utNKj4b963voxs"),V=new i("So11111111111111111111111111111111111111112"),x=i.default;var C=class C{constructor({mint:e,decimals:t,symbol:r,name:c,skipMint:u=!1,isToken2022:g=!1}){if(e===x.toBase58()||e instanceof W&&x.equals(e)){this.decimals=h.decimals,this.symbol=h.symbol,this.name=h.name,this.mint=new W(h.address),this.isToken2022=!1;return}this.decimals=t,this.symbol=r||e.toString().substring(0,6),this.name=c||e.toString().substring(0,6),this.mint=u?W.default:J({publicKey:e}),this.isToken2022=g}equals(e){return this===e?!0:this.mint.equals(e.mint)}};C.WSOL=new C(b(T({},h),{mint:h.address}));var m=C;var I=class I{constructor({decimals:e,symbol:t="UNKNOWN",name:r="UNKNOWN"}){this.decimals=e,this.symbol=t,this.name=r}equals(e){return this===e}};I.SOL=new I(z);var K=I;function ut(n,e){return n instanceof m&&e instanceof m?n.equals(e):n instanceof m||e instanceof m?!1:n===e}import R from"big.js";import he from"bn.js";import Te from"decimal.js-light";import{get as X,set as me}from"lodash";var v=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 t=e.map(r=>typeof r=="object"?JSON.stringify(r):r).join(", ");throw new Error(t)}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}},$={},pe={};function a(n){let e=X($,n);if(!e){let t=X(pe,n);e=new v({name:n,logLevel:t}),me($,n,e)}return e}import w from"bn.js";var Q=9007199254740991;function o(n){let e=a("Sega_parseBigNumberish");if(n instanceof w)return n;if(typeof n=="string"){if(n.match(/^-?[0-9]+$/))return new w(n);e.logWithError(`invalid BigNumberish string: ${n}`)}return typeof n=="number"?(n%1&&e.logWithError(`BigNumberish number underflow: ${n}`),(n>=Q||n<=-Q)&&e.logWithError(`BigNumberish number overflow: ${n}`),new w(String(n))):typeof n=="bigint"?new w(n.toString()):(e.error(`invalid BigNumberish value: ${n}`),new w(0))}import de from"toformat";var fe=de,P=fe;var N=a("module/fraction"),_=P(R),S=P(Te),be={0:S.ROUND_DOWN,1:S.ROUND_HALF_UP,2:S.ROUND_UP},ye={0:R.roundDown,1:R.roundHalfUp,2:R.roundUp},s=class n{constructor(e,t=new he(1)){this.numerator=o(e),this.denominator=o(t)}get quotient(){return this.numerator.div(this.denominator)}invert(){return new n(this.denominator,this.numerator)}add(e){let t=e instanceof n?e:new n(o(e));return this.denominator.eq(t.denominator)?new n(this.numerator.add(t.numerator),this.denominator):new n(this.numerator.mul(t.denominator).add(t.numerator.mul(this.denominator)),this.denominator.mul(t.denominator))}sub(e){let t=e instanceof n?e:new n(o(e));return this.denominator.eq(t.denominator)?new n(this.numerator.sub(t.numerator),this.denominator):new n(this.numerator.mul(t.denominator).sub(t.numerator.mul(this.denominator)),this.denominator.mul(t.denominator))}mul(e){let t=e instanceof n?e:new n(o(e));return new n(this.numerator.mul(t.numerator),this.denominator.mul(t.denominator))}div(e){let t=e instanceof n?e:new n(o(e));return new n(this.numerator.mul(t.denominator),this.denominator.mul(t.numerator))}toSignificant(e,t={groupSeparator:""},r=1){Number.isInteger(e)||N.logWithError(`${e} is not an integer.`),e<=0&&N.logWithError(`${e} is not positive.`),S.set({precision:e+1,rounding:be[r]});let c=new S(this.numerator.toString()).div(this.denominator.toString()).toSignificantDigits(e);return c.toFormat(c.decimalPlaces(),t)}toFixed(e,t={groupSeparator:""},r=1){return Number.isInteger(e)||N.logWithError(`${e} is not an integer.`),e<0&&N.logWithError(`${e} is negative.`),_.DP=e,_.RM=ye[r]||1,new _(this.numerator.toString()).div(this.denominator.toString()).toFormat(e,t)}isZero(){return this.numerator.isZero()}};import xe from"bn.js";var ee=new s(new xe(100)),k=class extends s{toSignificant(e=5,t,r){return this.mul(ee).toSignificant(e,t,r)}toFixed(e=2,t,r){return this.mul(ee).toFixed(e,t,r)}};var we=a("Sega_price"),A=class n extends s{constructor(e){let{baseToken:t,quoteToken:r,numerator:c,denominator:u}=e;super(c,u),this.baseToken=t,this.quoteToken=r,this.scalar=new s(q(t.decimals),q(r.decimals))}get raw(){return new s(this.numerator,this.denominator)}get adjusted(){return super.mul(this.scalar)}invert(){return new n({baseToken:this.quoteToken,quoteToken:this.baseToken,denominator:this.numerator,numerator:this.denominator})}mul(e){this.quoteToken!==e.baseToken&&we.logWithError("mul token not equals");let t=super.mul(e);return new n({baseToken:this.baseToken,quoteToken:e.quoteToken,denominator:t.denominator,numerator:t.numerator})}toSignificant(e=this.quoteToken.decimals,t,r){return this.adjusted.toSignificant(e,t,r)}toFixed(e=this.quoteToken.decimals,t,r){return this.adjusted.toFixed(e,t,r)}};import{PublicKey as vt}from"@solana/web3.js";import qt from"bn.js";var Pe=new p(0),un=new p(1),ln=new p(2),mn=new p(3),pn=new p(5),M=new p(10),dn=new p(100),fn=new p(1e3),gn=new p(1e4);function q(n){return M.pow(o(n))}import{PublicKey as Sn}from"@solana/web3.js";import{MINT_SIZE as Cn,TOKEN_PROGRAM_ID as In,getTransferFeeConfig as Nn,unpackMint as Rn}from"@solana/spl-token";var Dn=a("Sega_accountInfo_util");import{PublicKey as sr}from"@solana/web3.js";import{TOKEN_PROGRAM_ID as cr}from"@solana/spl-token";import{ComputeBudgetProgram as _n,Keypair as Gn,PublicKey as jn,Transaction as zn,TransactionMessage as Jn,VersionedTransaction as Zn}from"@solana/web3.js";import{TOKEN_PROGRAM_ID as er}from"@solana/spl-token";var tr=a("Sega_txUtil");import{PublicKey as d}from"@solana/web3.js";var dr=new d("SegazTQwbYWknDZkJ6j2Kgvm5gw3MrHGKtWstZdoNKZ"),fr=new d("Ajk8d9bERSaFdeoT1d8JUVfaDayrYLnAdgeB47TFMUaG"),gr=new d("2HbjxVVKJ7Ct72Rcd8WK4VTqmwTXL5aAggkH1CHGFGmh"),ke=new d("auetiVUVJkRxvNPLYEvVnz8UJSqQ1VgoA83PcicHVD1"),Ae=new d("GzqQwxPSmUZnTyCfX9YWqi32MJg43ujP786ZoacL559Y"),Be=new d("GzqQwxPSmUZnTyCfX9YWqi32MJg43ujP786ZoacL559Y");var hr={SERUM_MARKET:d.default,UTIL1216:d.default,CREATE_CPMM_POOL_PROGRAM:ke,CREATE_CPMM_POOL_AUTH:Ae,CREATE_CPMM_POOL_FEE_ACC:Be};import yr from"bn.js";import{PublicKey as Ar,AddressLookupTableAccount as Br}from"@solana/web3.js";import{PublicKey as Ur,sendAndConfirmTransaction as Gr,SystemProgram as zr,Transaction as Yr,TransactionMessage as Zr,VersionedTransaction as Xr}from"@solana/web3.js";import Qr from"axios";import{Connection as ai}from"@solana/web3.js";var Ie=a("Sega_amount"),F=P(Ce);function te(n,e){let t="0",r="0";if(n.includes(".")){let c=n.split(".");c.length===2?([t,r]=c,r=r.padEnd(e,"0")):Ie.logWithError(`invalid number string, num: ${n}`)}else t=n;return[t,r.slice(0,e)||r]}var B=class n extends s{constructor(e,t,r=!0,c){let u=new f(0),g=M.pow(new f(e.decimals));if(r)u=o(t);else{let l=new f(0),y=new f(0);if(typeof t=="string"||typeof t=="number"||typeof t=="bigint"){let[L,E]=te(t.toString(),e.decimals);l=o(L),y=o(E)}l=l.mul(g),u=l.add(y)}super(u,g),this.logger=a(c||"TokenAmount"),this.token=e}get raw(){return this.numerator}isZero(){return this.raw.isZero()}gt(e){return this.token.equals(e.token)||this.logger.logWithError("gt token not equals"),this.raw.gt(e.raw)}lt(e){return this.token.equals(e.token)||this.logger.logWithError("lt token not equals"),this.raw.lt(e.raw)}add(e){return this.token.equals(e.token)||this.logger.logWithError("add token not equals"),new n(this.token,this.raw.add(e.raw))}subtract(e){return this.token.equals(e.token)||this.logger.logWithError("sub token not equals"),new n(this.token,this.raw.sub(e.raw))}toSignificant(e=this.token.decimals,t,r=0){return super.toSignificant(e,t,r)}toFixed(e=this.token.decimals,t,r=0){return e>this.token.decimals&&this.logger.logWithError("decimals overflow"),super.toFixed(e,t,r)}toExact(e={groupSeparator:""}){return F.DP=this.token.decimals,new F(this.numerator.toString()).div(this.denominator.toString()).toFormat(e)}},U=class n extends s{constructor(e,t,r=!0,c){let u=new f(0),g=M.pow(new f(e.decimals));if(r)u=o(t);else{let l=new f(0),y=new f(0);if(typeof t=="string"||typeof t=="number"||typeof t=="bigint"){let[L,E]=te(t.toString(),e.decimals);l=o(L),y=o(E)}l=l.mul(g),u=l.add(y)}super(u,g),this.logger=a(c||"TokenAmount"),this.currency=e}get raw(){return this.numerator}isZero(){return this.raw.isZero()}gt(e){return this.currency.equals(e.currency)||this.logger.logWithError("gt currency not equals"),this.raw.gt(e.raw)}lt(e){return this.currency.equals(e.currency)||this.logger.logWithError("lt currency not equals"),this.raw.lt(e.raw)}add(e){return this.currency.equals(e.currency)||this.logger.logWithError("add currency not equals"),new n(this.currency,this.raw.add(e.raw))}sub(e){return this.currency.equals(e.currency)||this.logger.logWithError("sub currency not equals"),new n(this.currency,this.raw.sub(e.raw))}toSignificant(e=this.currency.decimals,t,r=0){return super.toSignificant(e,t,r)}toFixed(e=this.currency.decimals,t,r=0){return e>this.currency.decimals&&this.logger.logWithError("decimals overflow"),super.toFixed(e,t,r)}toExact(e={groupSeparator:""}){return F.DP=this.currency.decimals,new F(this.numerator.toString()).div(this.denominator.toString()).toFormat(e)}};export{K as Currency,U as CurrencyAmount,s as Fraction,k as Percent,A as Price,m as Token,B as TokenAmount,ee as _100_PERCENT,ut as currencyEquals,te as splitNumber}; //# sourceMappingURL=index.mjs.map