snapper-sdk
Version:
An SDK for building applications on top of Snapper.
2 lines • 6.98 kB
JavaScript
"use strict";var V=Object.create;var x=Object.defineProperty;var v=Object.getOwnPropertyDescriptor;var k=Object.getOwnPropertyNames;var K=Object.getPrototypeOf,I=Object.prototype.hasOwnProperty;var G=(o,e)=>{for(var t in e)x(o,t,{get:e[t],enumerable:!0})},R=(o,e,t,s)=>{if(e&&typeof e=="object"||typeof e=="function")for(let u of k(e))!I.call(o,u)&&u!==t&&x(o,u,{get:()=>e[u],enumerable:!(s=v(e,u))||s.enumerable});return o};var N=(o,e,t)=>(t=o!=null?V(K(o)):{},R(e||!o||!o.__esModule?x(t,"default",{value:o,enumerable:!0}):t,o)),q=o=>R(x({},"__esModule",{value:!0}),o);var Y={};G(Y,{MARKET_STATE_LAYOUT_V3:()=>C,MARKET_VERSION_TO_STATE_LAYOUT:()=>w,Market:()=>A,SERUM_PROGRAMID_TO_VERSION:()=>m,SERUM_VERSION_TO_PROGRAMID:()=>L});module.exports=q(Y);var n=require("@solana/web3.js"),X=new n.PublicKey("EhhTKczWMGQt46ynNeRX1WfeagwwJd7ufHvCDjRxjo5Q"),Z=new n.PublicKey("9KEPoZmtHUrBbhWN1v1KWLMkkvwY6WLtAVUCPRtRjP4z"),$=new n.PublicKey("FarmqiPv5eAj3j1GMdMCMUGXqPUvmquZtMy86QH6rzhG"),ee=new n.PublicKey("CLaimxFqjHzgTJtAGHU47NPhg6qrc5sCnpC4tBLyABQS"),te=new n.PublicKey("srmqPvymJeFKQ4zGQed1GFppgkRHL9kaELCbyksJtPX"),b=new n.PublicKey("9xQeWvG816bUx9EPjHmaT23yvVM2ZWbrrpZb9PusVFin"),re=new n.PublicKey("675kPX9MHTjS2zt1qfr1NYHuzeLXfQM9H24wFSUt1Mp8"),ne=new n.PublicKey("5quBtoiQqxF9Jv6KYKctB59NT3gtJD2Y65kdnB1Uev3h"),oe=new n.PublicKey("CDSr3ssLcRB6XYPJwAfFt18MZvEZp4LjHcvzBVZ45duo"),se=new n.PublicKey("CAMMCzo5YL8w4VFF8KVHrK22GGUsp5VTaW7grrKgrWqK"),ue=new n.PublicKey("LockrWmn6K5twhz3y9w1dQERbmgSaRkfnTeTKbpofwE"),ae=new n.PublicKey("kN1kEznaF5Xbd8LYuqtEFcxzWSBk5Fv6ygX6SqEGJVy"),ie=new n.PublicKey("routeUGWgWzqBWFcrCfv8tritsqukccJPu3q5GPP3xS"),ce=new n.PublicKey("7YttLkHDoNj9wyDur5pM1ejNaAvT9X4eqaYcHQqtj2G5"),pe=new n.PublicKey("6FJon3QE27qgPVggARueB22hLvoh22VzJpXv4rBEoSLF"),ye=new n.PublicKey("CC12se5To1CdEuw7fDS27B7Geo5jJyL7t5UK2B44NgiH"),Pe=new n.PublicKey("9HzJyW1qZsEiSfMUf6L2jo3CcTKAyBmSyKdwQeYisHrC"),de=new n.PublicKey("DropEU8AvevN3UrXWXTMuz3rqnMczQVNjq3kcSdW2SQi"),xe=new n.PublicKey("SNaPnpKUY656VPwbKmKT8FG4T85g4VWhRH1B4TQUfKs"),fe=new n.PublicKey("9pR79Lqe6wDNjag3v8MeVYUostoXjY2ognTydor6AtEZ"),ge=new n.PublicKey("DNXgeM9EiiaAbaWvwjHj9fQQLAX5ZsfHyvmYUNRAdNC8"),F=new n.PublicKey("4AscABy58S62owbByjUUkQfZsP7fxYH1rDYb69V58HPM"),H=new n.PublicKey("7rQ1QFNosMkUCuh7Z7fPbTHvh73b68sQYdirycEzJVuw"),j=new n.PublicKey("G11FKBRaAkHAKuLCgLM6K6NUc9rTjPAznRCjZifrTQe2"),be=new n.PublicKey("LockrWmn6K5twhz3y9w1dQERbmgSaRkfnTeTKbpofwE"),Q=new n.PublicKey("DLockwT7X7sxtLmGH9g5kmfcjaBtncdbUmi738m5bvQC"),me=new n.PublicKey("3f7GcQFG397GAaEnv51zR6tsTVihYRydnydDD1cXekxH"),W=new n.PublicKey("7AFUeLVRjBfzqK3tTGw8hN48KLQWSk6DTE8xprWdPqix");var Le={SERUM_MARKET:n.PublicKey.default,OPENBOOK_MARKET:new n.PublicKey("EoTcMgcDRTJVZDMZWBoU6rhYHZfkNTVEAfz3uUJRcYGj"),UTIL1216:n.PublicKey.default,FarmV3:new n.PublicKey("85BFyr98MbCUU9MVTEgzx1nbhWACbJqLzho6zd6DZcWL"),FarmV5:new n.PublicKey("EcLzTrNg9V7qhcdyXDe2qjtPkiGzDM2UbdRaeaadU5r2"),FarmV6:new n.PublicKey("Farm2hJLcqPtPg8M4rR6DMrsRNc5TPm5Cs4bVQrMe2T7"),AmmV4:new n.PublicKey("HWy1jotHpo6UqeQxx49dpYYdQB8wj9Qk9MdxwjLvDHB8"),AmmStable:new n.PublicKey("DDg4VmQaJV9ogWce7LpcjBA9bv22wRp5uaTPa5pGjijF"),CLMM:new n.PublicKey("devi51mZmdwUJGU9hjN27vEz64Gps7uUefqxg27EAtH"),CLMM_LOCK_PROGRAM_ID:new n.PublicKey("DLockwT7X7sxtLmGH9g5kmfcjaBtncdbUmi738m5bvQC"),CLMM_LOCK_AUTH_ID:new n.PublicKey("8qmHNvu2Kr2C7U8mJL4Vz1vTDxMhVuXKREwU7TNoaVEo"),Router:new n.PublicKey("BVChZ3XFEwTMUk1o9i3HAf91H6mFxSwa5X2wFAWhYPhU"),CREATE_CPMM_POOL_PROGRAM:F,CREATE_CPMM_POOL_AUTH:H,CREATE_CPMM_POOL_FEE_ACC:j,FEE_DESTINATION_ID:new n.PublicKey("3XMrhbv989VxAMi3DErLV9eJht1pHppW5LbKxe9fkEFR"),LOCK_CPMM_PROGRAM:Q,LCOK_CPMM_AUTH:W};var m={[b.toBase58()]:3},L={3:b};var U=require("@solana/web3.js"),f=N(require("bn.js"));var r=require("@solana/buffer-layout"),l=r.Layout,E=r.Structure;var p=r.blob;var _=class extends l{constructor(t,s,u){super(t,u);this.blob=p(t),this.signed=s}decode(t,s=0){let u=new f.default(this.blob.decode(t,s),10,"le");return this.signed?u.fromTwos(this.span*8).clone():u}encode(t,s,u=0){return typeof t=="number"&&(t=new f.default(t)),this.signed&&(t=t.toTwos(this.span*8)),this.blob.encode(t.toArrayLike(Buffer,"le",this.span),s,u)}};function a(o){return new _(8,!1,o)}var T=class extends l{constructor(t,s,u,P){super(t.span,P);this.layout=t,this.decoder=s,this.encoder=u}decode(t,s){return this.decoder(this.layout.decode(t,s))}encode(t,s,u){return this.layout.encode(this.encoder(t),s,u)}getSpan(t,s){return this.layout.getSpan(t,s)}};function i(o){return new T(p(32),e=>new U.PublicKey(e),e=>e.toBuffer(),o)}var h=class extends E{decode(e,t){return super.decode(e,t)}};function B(o,e,t){return new h(o,e,t)}var C=B([p(5),p(8),i("ownAddress"),a("vaultSignerNonce"),i("baseMint"),i("quoteMint"),i("baseVault"),a("baseDepositsTotal"),a("baseFeesAccrued"),i("quoteVault"),a("quoteDepositsTotal"),a("quoteFeesAccrued"),a("quoteDustThreshold"),i("requestQueue"),i("eventQueue"),i("bids"),i("asks"),a("baseLotSize"),a("quoteLotSize"),a("feeRateBps"),a("referrerRebatesAccrued"),p(7)]),w={3:C};var S=require("@solana/web3.js");var y=require("lodash");var M=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(s=>typeof s=="object"?JSON.stringify(s):s).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}},O={},z={};function D(o){let e=(0,y.get)(O,o);if(!e){let t=(0,y.get)(z,o);e=new M({name:o,logLevel:t}),(0,y.set)(O,o,e)}return e}var g=D("Serum"),A=class{static getProgramId(e){let t=L[e];return t||g.logWithError("invalid version","version",e),t}static getVersion(e){let t=e.toBase58(),s=m[t];return s||g.logWithError("invalid program id","programId",t),s}static getStateLayout(e){let t=w[e];return t||g.logWithError(!!t,"invalid version","version",e),t}static getLayouts(e){return{state:this.getStateLayout(e)}}static getAssociatedAuthority({programId:e,marketId:t}){let s=[t.toBuffer()],u=0,P;for(;u<100;){try{let d=s.concat(Buffer.from([u]),Buffer.alloc(7));P=S.PublicKey.createProgramAddressSync(d,e)}catch(d){if(d instanceof TypeError)throw d;u++;continue}return{publicKey:P,nonce:u}}return g.logWithError("unable to find a viable program address nonce","params",{programId:e,marketId:t}),{publicKey:S.PublicKey.default,nonce:u}}};0&&(module.exports={MARKET_STATE_LAYOUT_V3,MARKET_VERSION_TO_STATE_LAYOUT,Market,SERUM_PROGRAMID_TO_VERSION,SERUM_VERSION_TO_PROGRAMID});
//# sourceMappingURL=index.js.map