UNPKG

snapper-sdk

Version:

An SDK for building applications on top of Snapper.

2 lines 6.34 kB
import{PublicKey as r}from"@solana/web3.js";var H=new r("EhhTKczWMGQt46ynNeRX1WfeagwwJd7ufHvCDjRxjo5Q"),j=new r("9KEPoZmtHUrBbhWN1v1KWLMkkvwY6WLtAVUCPRtRjP4z"),Q=new r("FarmqiPv5eAj3j1GMdMCMUGXqPUvmquZtMy86QH6rzhG"),W=new r("CLaimxFqjHzgTJtAGHU47NPhg6qrc5sCnpC4tBLyABQS"),z=new r("srmqPvymJeFKQ4zGQed1GFppgkRHL9kaELCbyksJtPX"),x=new r("9xQeWvG816bUx9EPjHmaT23yvVM2ZWbrrpZb9PusVFin"),Y=new r("675kPX9MHTjS2zt1qfr1NYHuzeLXfQM9H24wFSUt1Mp8"),J=new r("5quBtoiQqxF9Jv6KYKctB59NT3gtJD2Y65kdnB1Uev3h"),X=new r("CDSr3ssLcRB6XYPJwAfFt18MZvEZp4LjHcvzBVZ45duo"),Z=new r("CAMMCzo5YL8w4VFF8KVHrK22GGUsp5VTaW7grrKgrWqK"),$=new r("LockrWmn6K5twhz3y9w1dQERbmgSaRkfnTeTKbpofwE"),ee=new r("kN1kEznaF5Xbd8LYuqtEFcxzWSBk5Fv6ygX6SqEGJVy"),te=new r("routeUGWgWzqBWFcrCfv8tritsqukccJPu3q5GPP3xS"),re=new r("7YttLkHDoNj9wyDur5pM1ejNaAvT9X4eqaYcHQqtj2G5"),ne=new r("6FJon3QE27qgPVggARueB22hLvoh22VzJpXv4rBEoSLF"),oe=new r("CC12se5To1CdEuw7fDS27B7Geo5jJyL7t5UK2B44NgiH"),se=new r("9HzJyW1qZsEiSfMUf6L2jo3CcTKAyBmSyKdwQeYisHrC"),ue=new r("DropEU8AvevN3UrXWXTMuz3rqnMczQVNjq3kcSdW2SQi"),ae=new r("SNaPnpKUY656VPwbKmKT8FG4T85g4VWhRH1B4TQUfKs"),ie=new r("9pR79Lqe6wDNjag3v8MeVYUostoXjY2ognTydor6AtEZ"),ce=new r("DNXgeM9EiiaAbaWvwjHj9fQQLAX5ZsfHyvmYUNRAdNC8"),B=new r("4AscABy58S62owbByjUUkQfZsP7fxYH1rDYb69V58HPM"),C=new r("7rQ1QFNosMkUCuh7Z7fPbTHvh73b68sQYdirycEzJVuw"),O=new r("G11FKBRaAkHAKuLCgLM6K6NUc9rTjPAznRCjZifrTQe2"),pe=new r("LockrWmn6K5twhz3y9w1dQERbmgSaRkfnTeTKbpofwE"),D=new r("DLockwT7X7sxtLmGH9g5kmfcjaBtncdbUmi738m5bvQC"),ye=new r("3f7GcQFG397GAaEnv51zR6tsTVihYRydnydDD1cXekxH"),V=new r("7AFUeLVRjBfzqK3tTGw8hN48KLQWSk6DTE8xprWdPqix");var Pe={SERUM_MARKET:r.default,OPENBOOK_MARKET:new r("EoTcMgcDRTJVZDMZWBoU6rhYHZfkNTVEAfz3uUJRcYGj"),UTIL1216:r.default,FarmV3:new r("85BFyr98MbCUU9MVTEgzx1nbhWACbJqLzho6zd6DZcWL"),FarmV5:new r("EcLzTrNg9V7qhcdyXDe2qjtPkiGzDM2UbdRaeaadU5r2"),FarmV6:new r("Farm2hJLcqPtPg8M4rR6DMrsRNc5TPm5Cs4bVQrMe2T7"),AmmV4:new r("HWy1jotHpo6UqeQxx49dpYYdQB8wj9Qk9MdxwjLvDHB8"),AmmStable:new r("DDg4VmQaJV9ogWce7LpcjBA9bv22wRp5uaTPa5pGjijF"),CLMM:new r("devi51mZmdwUJGU9hjN27vEz64Gps7uUefqxg27EAtH"),CLMM_LOCK_PROGRAM_ID:new r("DLockwT7X7sxtLmGH9g5kmfcjaBtncdbUmi738m5bvQC"),CLMM_LOCK_AUTH_ID:new r("8qmHNvu2Kr2C7U8mJL4Vz1vTDxMhVuXKREwU7TNoaVEo"),Router:new r("BVChZ3XFEwTMUk1o9i3HAf91H6mFxSwa5X2wFAWhYPhU"),CREATE_CPMM_POOL_PROGRAM:B,CREATE_CPMM_POOL_AUTH:C,CREATE_CPMM_POOL_FEE_ACC:O,FEE_DESTINATION_ID:new r("3XMrhbv989VxAMi3DErLV9eJht1pHppW5LbKxe9fkEFR"),LOCK_CPMM_PROGRAM:D,LCOK_CPMM_AUTH:V};var l={[x.toBase58()]:3},_={3:x};import{PublicKey as I}from"@solana/web3.js";import h,{isBN as mt}from"bn.js";import{bits as be,BitStructure as me,blob as v,Blob as Le,cstr as le,f32 as _e,f32be as Te,f64 as he,f64be as we,greedy as Me,Layout as k,ns64 as Se,ns64be as Ae,nu64 as Re,nu64be as Ee,offset as Ue,s16 as Be,s16be as Ce,s24 as Oe,s24be as De,s32 as Ve,s32be as ve,s40 as ke,s40be as Ke,s48 as Ie,s48be as Ge,s8 as Ne,seq as qe,struct as Fe,Structure as K,u16 as He,u16be as je,u24 as Qe,u24be as We,u32 as ze,u32be as Ye,u40 as Je,u40be as Xe,u48 as Ze,u48be as $e,u8 as et,UInt as tt,union as rt,Union as nt,unionLayoutDiscriminator as ot,utf8 as st}from"@solana/buffer-layout";var f=k,T=K;var p=v;var g=class extends f{constructor(t,n,o){super(t,o);this.blob=p(t),this.signed=n}decode(t,n=0){let o=new h(this.blob.decode(t,n),10,"le");return this.signed?o.fromTwos(this.span*8).clone():o}encode(t,n,o=0){return typeof t=="number"&&(t=new h(t)),this.signed&&(t=t.toTwos(this.span*8)),this.blob.encode(t.toArrayLike(Buffer,"le",this.span),n,o)}};function u(s){return new g(8,!1,s)}var b=class extends f{constructor(t,n,o,y){super(t.span,y);this.layout=t,this.decoder=n,this.encoder=o}decode(t,n){return this.decoder(this.layout.decode(t,n))}encode(t,n,o){return this.layout.encode(this.encoder(t),n,o)}getSpan(t,n){return this.layout.getSpan(t,n)}};function a(s){return new b(p(32),e=>new I(e),e=>e.toBuffer(),s)}var m=class extends T{decode(e,t){return super.decode(e,t)}};function w(s,e,t){return new m(s,e,t)}var G=w([p(5),p(8),a("ownAddress"),u("vaultSignerNonce"),a("baseMint"),a("quoteMint"),a("baseVault"),u("baseDepositsTotal"),u("baseFeesAccrued"),a("quoteVault"),u("quoteDepositsTotal"),u("quoteFeesAccrued"),u("quoteDustThreshold"),a("requestQueue"),a("eventQueue"),a("bids"),a("asks"),u("baseLotSize"),u("quoteLotSize"),u("feeRateBps"),u("referrerRebatesAccrued"),p(7)]),M={3:G};import{PublicKey as E}from"@solana/web3.js";import{get as S,set as N}from"lodash";var L=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(n=>typeof n=="object"?JSON.stringify(n):n).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}},A={},q={};function R(s){let e=S(A,s);if(!e){let t=S(q,s);e=new L({name:s,logLevel:t}),N(A,s,e)}return e}var d=R("Serum"),U=class{static getProgramId(e){let t=_[e];return t||d.logWithError("invalid version","version",e),t}static getVersion(e){let t=e.toBase58(),n=l[t];return n||d.logWithError("invalid program id","programId",t),n}static getStateLayout(e){let t=M[e];return t||d.logWithError(!!t,"invalid version","version",e),t}static getLayouts(e){return{state:this.getStateLayout(e)}}static getAssociatedAuthority({programId:e,marketId:t}){let n=[t.toBuffer()],o=0,y;for(;o<100;){try{let P=n.concat(Buffer.from([o]),Buffer.alloc(7));y=E.createProgramAddressSync(P,e)}catch(P){if(P instanceof TypeError)throw P;o++;continue}return{publicKey:y,nonce:o}}return d.logWithError("unable to find a viable program address nonce","params",{programId:e,marketId:t}),{publicKey:E.default,nonce:o}}};export{G as MARKET_STATE_LAYOUT_V3,M as MARKET_VERSION_TO_STATE_LAYOUT,U as Market,l as SERUM_PROGRAMID_TO_VERSION,_ as SERUM_VERSION_TO_PROGRAMID}; //# sourceMappingURL=index.mjs.map