@sega-so/sega-sdk
Version:
An SDK for building applications on top of SEGA.
2 lines • 14.8 kB
JavaScript
"use strict";var Ee=Object.create;var I=Object.defineProperty,_e=Object.defineProperties,Fe=Object.getOwnPropertyDescriptor,Ke=Object.getOwnPropertyDescriptors,Oe=Object.getOwnPropertyNames,oe=Object.getOwnPropertySymbols,Ve=Object.getPrototypeOf,se=Object.prototype.hasOwnProperty,We=Object.prototype.propertyIsEnumerable;var ie=(t,e,n)=>e in t?I(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,b=(t,e)=>{for(var n in e||(e={}))se.call(e,n)&&ie(t,n,e[n]);if(oe)for(var n of oe(e))We.call(e,n)&&ie(t,n,e[n]);return t},P=(t,e)=>_e(t,Ke(e));var ve=(t,e)=>{for(var n in e)I(t,n,{get:e[n],enumerable:!0})},ae=(t,e,n,o)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of Oe(e))!se.call(t,s)&&s!==n&&I(t,s,{get:()=>e[s],enumerable:!(o=Fe(e,s))||o.enumerable});return t};var a=(t,e,n)=>(n=t!=null?Ee(Ve(t)):{},ae(e||!t||!t.__esModule?I(n,"default",{value:t,enumerable:!0}):n,t)),Ue=t=>ae(I({},"__esModule",{value:!0}),t);var T=(t,e,n)=>new Promise((o,s)=>{var m=d=>{try{A(n.next(d))}catch(f){s(f)}},x=d=>{try{A(n.throw(d))}catch(f){s(f)}},A=d=>d.done?o(d.value):Promise.resolve(d.value).then(m,x);A((n=n.apply(t,e)).next())});var gt={};ve(gt,{closeAccountInstruction:()=>Me,createWSolAccountInstructions:()=>dt,initTokenAccountInstruction:()=>De,makeTransferInstruction:()=>ft});module.exports=Ue(gt);var j=require("@solana/web3.js"),Re=a(require("bn.js"));var Ge=require("@solana/web3.js");var C=require("lodash");var H=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(o=>typeof o=="object"?JSON.stringify(o):o).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}},ue={},qe={};function u(t){let e=(0,C.get)(ue,t);if(!e){let n=(0,C.get)(qe,t);e=new H({name:t,logLevel:n}),(0,C.set)(ue,t,e)}return e}var _=require("@solana/spl-token");var St=u("Sega_accountInfo_util");var p=a(require("bn.js")),tt=a(require("decimal.js"));var de=a(require("big.js")),Je=a(require("bn.js"));var ce=a(require("toformat")),je=ce.default,L=je;var N=a(require("big.js")),me=a(require("bn.js")),pe=a(require("decimal.js-light"));var w=a(require("bn.js"));var le=9007199254740991;function l(t){let e=u("Sega_parseBigNumberish");if(t instanceof w.default)return t;if(typeof t=="string"){if(t.match(/^-?[0-9]+$/))return new w.default(t);e.logWithError(`invalid BigNumberish string: ${t}`)}return typeof t=="number"?(t%1&&e.logWithError(`BigNumberish number underflow: ${t}`),(t>=le||t<=-le)&&e.logWithError(`BigNumberish number overflow: ${t}`),new w.default(String(t))):typeof t=="bigint"?new w.default(t.toString()):(e.error(`invalid BigNumberish value: ${t}`),new w.default(0))}var F=u("module/fraction"),Y=L(N.default),R=L(pe.default),ze={0:R.ROUND_DOWN,1:R.ROUND_HALF_UP,2:R.ROUND_UP},Ye={0:N.default.roundDown,1:N.default.roundHalfUp,2:N.default.roundUp},g=class t{constructor(e,n=new me.default(1)){this.numerator=l(e),this.denominator=l(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(l(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(l(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(l(e));return new t(this.numerator.mul(n.numerator),this.denominator.mul(n.denominator))}div(e){let n=e instanceof t?e:new t(l(e));return new t(this.numerator.mul(n.denominator),this.denominator.mul(n.numerator))}toSignificant(e,n={groupSeparator:""},o=1){Number.isInteger(e)||F.logWithError(`${e} is not an integer.`),e<=0&&F.logWithError(`${e} is not positive.`),R.set({precision:e+1,rounding:ze[o]});let s=new R(this.numerator.toString()).div(this.denominator.toString()).toSignificantDigits(e);return s.toFormat(s.decimalPlaces(),n)}toFixed(e,n={groupSeparator:""},o=1){return Number.isInteger(e)||F.logWithError(`${e} is not an integer.`),e<0&&F.logWithError(`${e} is negative.`),Y.DP=e,Y.RM=Ye[o]||1,new Y(this.numerator.toString()).div(this.denominator.toString()).toFormat(e,n)}isZero(){return this.numerator.isZero()}};var Gt=u("Sega_amount"),jt=L(de.default);var fe=require("@solana/web3.js"),J=require("@solana/spl-token"),ge={chainId:101,address:fe.PublicKey.default.toBase58(),programId:J.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"}},y={chainId:101,address:"So11111111111111111111111111111111111111112",programId:J.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 K=require("@solana/web3.js");var i=require("@solana/web3.js"),ye=require("@solana/spl-token");function Z({pubkey:t,isSigner:e=!1,isWritable:n=!0}){return{pubkey:t,isWritable:n,isSigner:e}}var Jt=[Z({pubkey:ye.TOKEN_PROGRAM_ID,isWritable:!1}),Z({pubkey:i.SystemProgram.programId,isWritable:!1}),Z({pubkey:i.SYSVAR_RENT_PUBKEY,isWritable:!1})];function he({publicKey:t,transformSol:e}){let n=be(t.toString());if(n instanceof i.PublicKey)return e&&n.equals(D)?z:n;if(e&&n.toString()===D.toBase58())return z;if(typeof n=="string"){if(n===i.PublicKey.default.toBase58())return i.PublicKey.default;try{return new i.PublicKey(n)}catch(o){throw new Error("invalid public key")}}throw new Error("invalid public key")}function be(t){try{return new i.PublicKey(t)}catch(e){return t}}var Zt=new i.PublicKey("MemoSq4gqABAXKb96qnH8TysNcWxMyWCqXgDLGmfcHr"),Xt=new i.PublicKey("MemoSq4gqABAXKb96qnH8TysNcWxMyWCqXgDLGmfcHr"),$t=new i.PublicKey("SysvarRent111111111111111111111111111111111"),Qt=new i.PublicKey("SysvarC1ock11111111111111111111111111111111"),Xe=new i.PublicKey("metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),en=new i.PublicKey("Sysvar1nstructions1111111111111111111111111"),tn=i.SystemProgram.programId,nn=new i.PublicKey("4k3Dyjzvzp8eMZWUXbBCjEvwSkkk59S5iCNLY3QrkX6R"),rn=new i.PublicKey("Ea5SjE2Y6yvCeW5dYTn7PYMuW5ikXkvbGdcmSnXeaLjS"),on=new i.PublicKey("SRMuApVNdxXokk5GT7XD5cUUgXMBCoAz2LHeuAoKWRt"),sn=new i.PublicKey("EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v"),an=new i.PublicKey("Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB"),un=new i.PublicKey("mSoLzYCxHdYgdzU16g5QSh3i5K3z3KZK7ytfqcJm7So"),cn=new i.PublicKey("7dHbWXmci3dT8UFYWYZweBLXgycu7Y3iL6trKn1Y7ARj"),ln=new i.PublicKey("USDH1SM1ojwWUga67PGrgFWUHibbjqMvuMaDkRJTgkX"),mn=new i.PublicKey("NRVwhjBQiUPYtfDT5zRBVJajzFQHaBUNtC7SNVvqRFa"),pn=new i.PublicKey("ANAxByE6G2WjFp7A4NqtWYXb3mgruyzZYg3spfxe6Lbo"),dn=new i.PublicKey("7vfCXTUXx5WJV5JADk17DUJ4ksgau7utNKj4b963voxs"),z=new i.PublicKey("So11111111111111111111111111111111111111112"),D=i.PublicKey.default;var O=class O{constructor({mint:e,decimals:n,symbol:o,name:s,skipMint:m=!1,isToken2022:x=!1}){if(e===D.toBase58()||e instanceof K.PublicKey&&D.equals(e)){this.decimals=y.decimals,this.symbol=y.symbol,this.name=y.name,this.mint=new K.PublicKey(y.address),this.isToken2022=!1;return}this.decimals=n,this.symbol=o||e.toString().substring(0,6),this.name=s||e.toString().substring(0,6),this.mint=m?K.PublicKey.default:he({publicKey:e}),this.isToken2022=x}equals(e){return this===e?!0:this.mint.equals(e.mint)}};O.WSOL=new O(P(b({},y),{mint:y.address}));var M=O;var V=class V{constructor({decimals:e,symbol:n="UNKNOWN",name:o="UNKNOWN"}){this.decimals=e,this.symbol=n,this.name=o}equals(e){return this===e}};V.SOL=new V(ge);var X=V;var Te=a(require("bn.js"));var Bn=new g(new Te.default(100));var Nn=u("Sega_price");var Qe=require("@solana/web3.js"),et=a(require("bn.js"));var $e=new p.default(0),cr=new p.default(1),lr=new p.default(2),mr=new p.default(3),pr=new p.default(5),Ze=new p.default(10),dr=new p.default(100),fr=new p.default(1e3),gr=new p.default(1e4);var rt=require("@solana/web3.js"),ot=require("@solana/spl-token");var B=require("@solana/web3.js");var S={CreateAccount:"CreateAccount",InitAccount:"InitAccount",CreateATA:"CreateATA",CloseAccount:"CloseAccount",TransferAmount:"TransferAmount",InitMint:"InitMint",MintTo:"MintTo",InitMarket:"InitMarket",Util1216OwnerClaim:"Util1216OwnerClaim",SetComputeUnitPrice:"SetComputeUnitPrice",SetComputeUnitLimit:"SetComputeUnitLimit",ClmmCreatePool:"ClmmCreatePool",ClmmOpenPosition:"ClmmOpenPosition",ClmmIncreasePosition:"ClmmIncreasePosition",ClmmDecreasePosition:"ClmmDecreasePosition",ClmmClosePosition:"ClmmClosePosition",ClmmSwapBaseIn:"ClmmSwapBaseIn",ClmmSwapBaseOut:"ClmmSwapBaseOut",ClmmInitReward:"ClmmInitReward",ClmmSetReward:"ClmmSetReward",ClmmCollectReward:"ClmmCollectReward",ClmmLockPosition:"ClmmLockPosition",ClmmHarvestLockPosition:"ClmmHarvestLockPosition",AmmV4Swap:"AmmV4Swap",AmmV4AddLiquidity:"AmmV4AddLiquidity",AmmV4RemoveLiquidity:"AmmV4RemoveLiquidity",AmmV4SimulatePoolInfo:"AmmV4SimulatePoolInfo",AmmV4SwapBaseIn:"AmmV4SwapBaseIn",AmmV4SwapBaseOut:"AmmV4SwapBaseOut",AmmV4CreatePool:"AmmV4CreatePool",AmmV4InitPool:"AmmV4InitPool",AmmV5AddLiquidity:"AmmV5AddLiquidity",AmmV5RemoveLiquidity:"AmmV5RemoveLiquidity",AmmV5SimulatePoolInfo:"AmmV5SimulatePoolInfo",AmmV5SwapBaseIn:"AmmV5SwapBaseIn",AmmV5SwapBaseOut:"AmmV5SwapBaseOut",RouteSwap:"RouteSwap",RouteSwap1:"RouteSwap1",RouteSwap2:"RouteSwap2",FarmV3Deposit:"FarmV3Deposit",FarmV3Withdraw:"FarmV3Withdraw",FarmV3CreateLedger:"FarmV3CreateLedger",FarmV4Withdraw:"FarmV4Withdraw",FarmV5Deposit:"FarmV5Deposit",FarmV5Withdraw:"FarmV5Withdraw",FarmV5CreateLedger:"FarmV5CreateLedger",FarmV6Deposit:"FarmV6Deposit",FarmV6Withdraw:"FarmV6Withdraw",FarmV6Create:"FarmV6Create",FarmV6Restart:"FarmV6Restart",FarmV6CreatorAddReward:"FarmV6CreatorAddReward",FarmV6CreatorWithdraw:"FarmV6CreatorWithdraw",CpmmCreatePool:"CpmmCreatePool",CpmmAddLiquidity:"CpmmAddLiquidity",CpmmWithdrawLiquidity:"CpmmWithdrawLiquidity",CpmmSwapBaseIn:"CpmmSwapBaseIn",CpmmSwapBaseOut:"CpmmSwapBaseOut",CpmmLockLp:"CpmmLockLp",CpmmCollectLockFee:"CpmmCollectLockFee",TransferTip:"TransferTip"};var nt=require("@solana/spl-token");var Lr=u("Sega_txUtil");var h=require("@solana/web3.js"),Fr=new h.PublicKey("SegazTQwbYWknDZkJ6j2Kgvm5gw3MrHGKtWstZdoNKZ"),Kr=new h.PublicKey("Ajk8d9bERSaFdeoT1d8JUVfaDayrYLnAdgeB47TFMUaG"),Or=new h.PublicKey("2HbjxVVKJ7Ct72Rcd8WK4VTqmwTXL5aAggkH1CHGFGmh"),it=new h.PublicKey("auetiVUVJkRxvNPLYEvVnz8UJSqQ1VgoA83PcicHVD1"),st=new h.PublicKey("GzqQwxPSmUZnTyCfX9YWqi32MJg43ujP786ZoacL559Y"),at=new h.PublicKey("GzqQwxPSmUZnTyCfX9YWqi32MJg43ujP786ZoacL559Y");var Vr={SERUM_MARKET:h.PublicKey.default,UTIL1216:h.PublicKey.default,CREATE_CPMM_POOL_PROGRAM:it,CREATE_CPMM_POOL_AUTH:st,CREATE_CPMM_POOL_FEE_ACC:at};var ut=a(require("bn.js"));var Se=require("@solana/web3.js");var k=require("@solana/web3.js"),ct=a(require("axios"));var lt=require("@solana/web3.js");var c=require("@solana/spl-token");var G=require("@solana/web3.js"),mt=a(require("bn.js"));var Ce=require("@solana/spl-token"),Le=require("@noble/hashes/sha256");var ke=require("@solana/web3.js"),W=a(require("bn.js"));var r=require("@solana/buffer-layout"),$=r.Layout,Be=r.Structure;var Q=r.UInt;var ee=r.blob;var te=class extends ${constructor(e,n,o){super(e,o),this.blob=ee(e),this.signed=n}decode(e,n=0){let o=new W.default(this.blob.decode(e,n),10,"le");return this.signed?o.fromTwos(this.span*8).clone():o}encode(e,n,o=0){return typeof e=="number"&&(e=new W.default(e)),this.signed&&(e=e.toTwos(this.span*8)),this.blob.encode(e.toArrayLike(Buffer,"le",this.span),n,o)}};function Ae(t){return new Q(1,t)}function v(t){return new Q(4,t)}function U(t){return new te(8,!1,t)}var ne=class extends ${constructor(e,n,o,s){super(e.span,s),this.layout=e,this.decoder=n,this.encoder=o}decode(e,n){return this.decoder(this.layout.decode(e,n))}encode(e,n,o){return this.layout.encode(this.encoder(e),n,o)}getSpan(e,n){return this.layout.getSpan(e,n)}};function E(t){return new ne(ee(32),e=>new ke.PublicKey(e),e=>e.toBuffer(),t)}var re=class extends Be{decode(e,n){return super.decode(e,n)}};function Ie(t,e,n){return new re(t,e,n)}var q=Ie([E("mint"),E("owner"),U("amount"),v("delegateOption"),E("delegate"),Ae("state"),v("isNativeOption"),U("isNative"),U("delegatedAmount"),v("closeAuthorityOption"),E("closeAuthority")]);var ri=u("Sega_Util");function Ne({fromPublicKey:t,programId:e=Ce.TOKEN_PROGRAM_ID,assignSeed:n}){let o=n?btoa(n).slice(0,32):G.Keypair.generate().publicKey.toBase58().slice(0,32);return{publicKey:pt(t,o,e),seed:o}}function pt(t,e,n){let o=Buffer.concat([t.toBuffer(),Buffer.from(e),n.toBuffer()]),s=(0,Le.sha256)(o);return new G.PublicKey(s)}function De(t){let{mint:e,tokenAccount:n,owner:o,programId:s=c.TOKEN_PROGRAM_ID}=t;return(0,c.createInitializeAccountInstruction)(n,e,o,s)}function Me(t){let{tokenAccount:e,payer:n,multiSigners:o=[],owner:s,programId:m=c.TOKEN_PROGRAM_ID}=t;return(0,c.createCloseAccountInstruction)(e,n,s,o,m)}function dt(t){return T(this,null,function*(){let{connection:e,amount:n,commitment:o,payer:s,owner:m,skipCloseAccount:x}=t,A=yield e.getMinimumBalanceForRentExemption(q.span,o),d=l(n).add(new Re.default(A)),f=Ne({fromPublicKey:s,programId:c.TOKEN_PROGRAM_ID});return{addresses:{newAccount:f.publicKey},signers:[],instructions:[j.SystemProgram.createAccountWithSeed({fromPubkey:s,basePubkey:s,seed:f.seed,newAccountPubkey:f.publicKey,lamports:d.toNumber(),space:q.span,programId:c.TOKEN_PROGRAM_ID}),De({mint:new j.PublicKey(y.address),tokenAccount:f.publicKey,owner:m,programId:c.TOKEN_PROGRAM_ID})],instructionTypes:[S.CreateAccount,S.InitAccount],endInstructionTypes:x?[]:[S.CloseAccount],endInstructions:x?[]:[Me({tokenAccount:f.publicKey,payer:s,owner:m})]}})}function ft({source:t,destination:e,owner:n,amount:o,multiSigners:s=[],tokenProgram:m=c.TOKEN_PROGRAM_ID}){return(0,c.createTransferInstruction)(t,e,n,BigInt(String(o)),s,m)}0&&(module.exports={closeAccountInstruction,createWSolAccountInstructions,initTokenAccountInstruction,makeTransferInstruction});
//# sourceMappingURL=instruction.js.map