UNPKG

snapper-sdk

Version:

An SDK for building applications on top of Snapper.

2 lines 10.1 kB
import{PublicKey as q}from"@solana/web3.js";import{get as h,set as Q}from"lodash";var b=class{constructor(t){this.logLevel=t.logLevel!==void 0?t.logLevel:0,this.name=t.name}set level(t){this.logLevel=t}get time(){return Date.now().toString()}get moduleName(){return this.name}isLogLevel(t){return t<=this.logLevel}error(...t){return this.isLogLevel(0)?(console.error(this.time,this.name,"sdk logger error",...t),this):this}logWithError(...t){let o=t.map(s=>typeof s=="object"?JSON.stringify(s):s).join(", ");throw new Error(o)}warning(...t){return this.isLogLevel(1)?(console.warn(this.time,this.name,"sdk logger warning",...t),this):this}info(...t){return this.isLogLevel(2)?(console.info(this.time,this.name,"sdk logger info",...t),this):this}debug(...t){return this.isLogLevel(3)?(console.debug(this.time,this.name,"sdk logger debug",...t),this):this}},R={},z={};function V(r){let t=h(R,r);if(!t){let o=h(z,r);t=new b({name:r,logLevel:o}),Q(R,r,t)}return t}import{PublicKey as n}from"@solana/web3.js";var M=new n("EhhTKczWMGQt46ynNeRX1WfeagwwJd7ufHvCDjRxjo5Q"),A=new n("9KEPoZmtHUrBbhWN1v1KWLMkkvwY6WLtAVUCPRtRjP4z"),B=new n("FarmqiPv5eAj3j1GMdMCMUGXqPUvmquZtMy86QH6rzhG"),le=new n("CLaimxFqjHzgTJtAGHU47NPhg6qrc5sCnpC4tBLyABQS"),we=new n("srmqPvymJeFKQ4zGQed1GFppgkRHL9kaELCbyksJtPX"),be=new n("9xQeWvG816bUx9EPjHmaT23yvVM2ZWbrrpZb9PusVFin"),_e=new n("675kPX9MHTjS2zt1qfr1NYHuzeLXfQM9H24wFSUt1Mp8"),Se=new n("5quBtoiQqxF9Jv6KYKctB59NT3gtJD2Y65kdnB1Uev3h"),Te=new n("CDSr3ssLcRB6XYPJwAfFt18MZvEZp4LjHcvzBVZ45duo"),he=new n("CAMMCzo5YL8w4VFF8KVHrK22GGUsp5VTaW7grrKgrWqK"),Re=new n("LockrWmn6K5twhz3y9w1dQERbmgSaRkfnTeTKbpofwE"),Ve=new n("kN1kEznaF5Xbd8LYuqtEFcxzWSBk5Fv6ygX6SqEGJVy"),Me=new n("routeUGWgWzqBWFcrCfv8tritsqukccJPu3q5GPP3xS"),Ae=new n("7YttLkHDoNj9wyDur5pM1ejNaAvT9X4eqaYcHQqtj2G5"),Be=new n("6FJon3QE27qgPVggARueB22hLvoh22VzJpXv4rBEoSLF"),Fe=new n("CC12se5To1CdEuw7fDS27B7Geo5jJyL7t5UK2B44NgiH"),Ee=new n("9HzJyW1qZsEiSfMUf6L2jo3CcTKAyBmSyKdwQeYisHrC"),Ue=new n("DropEU8AvevN3UrXWXTMuz3rqnMczQVNjq3kcSdW2SQi"),Ce=new n("SNaPnpKUY656VPwbKmKT8FG4T85g4VWhRH1B4TQUfKs"),ve=new n("9pR79Lqe6wDNjag3v8MeVYUostoXjY2ognTydor6AtEZ"),Oe=new n("DNXgeM9EiiaAbaWvwjHj9fQQLAX5ZsfHyvmYUNRAdNC8"),W=new n("4AscABy58S62owbByjUUkQfZsP7fxYH1rDYb69V58HPM"),X=new n("7rQ1QFNosMkUCuh7Z7fPbTHvh73b68sQYdirycEzJVuw"),Y=new n("G11FKBRaAkHAKuLCgLM6K6NUc9rTjPAznRCjZifrTQe2"),De=new n("LockrWmn6K5twhz3y9w1dQERbmgSaRkfnTeTKbpofwE"),J=new n("DLockwT7X7sxtLmGH9g5kmfcjaBtncdbUmi738m5bvQC"),ke=new n("3f7GcQFG397GAaEnv51zR6tsTVihYRydnydDD1cXekxH"),Z=new n("7AFUeLVRjBfzqK3tTGw8hN48KLQWSk6DTE8xprWdPqix");var Ge={SERUM_MARKET:n.default,OPENBOOK_MARKET:new n("EoTcMgcDRTJVZDMZWBoU6rhYHZfkNTVEAfz3uUJRcYGj"),UTIL1216:n.default,FarmV3:new n("85BFyr98MbCUU9MVTEgzx1nbhWACbJqLzho6zd6DZcWL"),FarmV5:new n("EcLzTrNg9V7qhcdyXDe2qjtPkiGzDM2UbdRaeaadU5r2"),FarmV6:new n("Farm2hJLcqPtPg8M4rR6DMrsRNc5TPm5Cs4bVQrMe2T7"),AmmV4:new n("HWy1jotHpo6UqeQxx49dpYYdQB8wj9Qk9MdxwjLvDHB8"),AmmStable:new n("DDg4VmQaJV9ogWce7LpcjBA9bv22wRp5uaTPa5pGjijF"),CLMM:new n("devi51mZmdwUJGU9hjN27vEz64Gps7uUefqxg27EAtH"),CLMM_LOCK_PROGRAM_ID:new n("DLockwT7X7sxtLmGH9g5kmfcjaBtncdbUmi738m5bvQC"),CLMM_LOCK_AUTH_ID:new n("8qmHNvu2Kr2C7U8mJL4Vz1vTDxMhVuXKREwU7TNoaVEo"),Router:new n("BVChZ3XFEwTMUk1o9i3HAf91H6mFxSwa5X2wFAWhYPhU"),CREATE_CPMM_POOL_PROGRAM:W,CREATE_CPMM_POOL_AUTH:X,CREATE_CPMM_POOL_FEE_ACC:Y,FEE_DESTINATION_ID:new n("3XMrhbv989VxAMi3DErLV9eJht1pHppW5LbKxe9fkEFR"),LOCK_CPMM_PROGRAM:J,LCOK_CPMM_AUTH:Z};import{PublicKey as ae}from"@solana/web3.js";import v,{isBN as O}from"bn.js";import{bits as Ke,BitStructure as He,blob as $,Blob as je,cstr as qe,f32 as Qe,f32be as ze,f64 as We,f64be as Xe,greedy as Ye,Layout as ee,ns64 as Je,ns64be as Ze,nu64 as $e,nu64be as et,offset as tt,s16 as rt,s16be as ot,s24 as nt,s24be as at,s32 as st,s32be as ut,s40 as it,s40be as dt,s48 as ct,s48be as pt,s8 as yt,seq as te,struct as mt,Structure as re,u16 as Lt,u16be as Pt,u24 as gt,u24be as xt,u32 as ft,u32be as lt,u40 as wt,u40be as bt,u48 as _t,u48be as St,u8 as oe,UInt as ne,union as Tt,Union as ht,unionLayoutDiscriminator as Rt,utf8 as Vt}from"@solana/buffer-layout";var _=ee,F=re;var E=ne;var U=oe;var C=te;var P=$;var g=class extends _{constructor(o,s,a){super(o,a);this.blob=P(o),this.signed=s}decode(o,s=0){let a=new v(this.blob.decode(o,s),10,"le");return this.signed?a.fromTwos(this.span*8).clone():a}encode(o,s,a=0){return typeof o=="number"&&(o=new v(o)),this.signed&&(o=o.toTwos(this.span*8)),this.blob.encode(o.toArrayLike(Buffer,"le",this.span),s,a)}};function c(r){return new E(1,r)}function e(r){return new g(8,!1,r)}function m(r){return new g(16,!1,r)}function D(r){return new g(1,!0,r)}function w(r){return new g(8,!0,r)}var l=class extends _{constructor(o,s,a,p){super(o.span,p);this.layout=o,this.decoder=s,this.encoder=a}decode(o,s){return this.decoder(this.layout.decode(o,s))}encode(o,s,a){return this.layout.encode(this.encoder(o),s,a)}getSpan(o,s){return this.layout.getSpan(o,s)}};function u(r){return new l(P(32),t=>new ae(t),t=>t.toBuffer(),r)}function T(r){return new l(U(),se,ue,r)}function se(r){if(r===0)return!1;if(r===1)return!0;throw new Error("Invalid bool: "+r)}function ue(r){return r?1:0}var S=class extends F{decode(t,o){return super.decode(t,o)}};function d(r,t,o){return new S(r,t,o)}function i(r,t,o){let s,a=typeof t=="number"?t:O(t)?t.toNumber():new Proxy(t,{get(p,y){if(!s){let L=Reflect.get(p,"count");s=O(L)?L.toNumber():L,Reflect.set(p,"count",s)}return Reflect.get(p,y)},set(p,y,L){return y==="count"&&(s=L),Reflect.set(p,y,L)}});return C(r,a,o)}var qt=d([c("instruction")]),Qt=d([c("instruction")]),ie=d([e("rewardState"),e("rewardOpenTime"),e("rewardEndTime"),e("rewardLastUpdateTime"),e("totalReward"),e("totalRewardEmissioned"),e("rewardClaimed"),e("rewardPerSecond"),m("accRewardPerShare"),u("rewardVault"),u("rewardMint"),u("rewardSender"),e("rewardType"),i(e(),15,"padding")]),de=d([e("state"),e("nonce"),u("lpVault"),u("rewardVault"),u(),u(),e(),e(),e("totalReward"),m("perShareReward"),e("lastSlot"),e("perSlotReward")]),ce=d([e("state"),e("nonce"),u("lpVault"),u("rewardVaultA"),e("totalRewardA"),m("perShareRewardA"),e("perSlotRewardA"),c("option"),u("rewardVaultB"),P(7),e("totalRewardB"),m("perShareRewardB"),e("perSlotRewardB"),e("lastSlot"),u()]),pe=d([e(),e("state"),e("nonce"),e("validRewardTokenNum"),m("rewardMultiplier"),e("rewardPeriodMax"),e("rewardPeriodMin"),e("rewardPeriodExtend"),u("lpMint"),u("lpVault"),i(ie,5,"rewardInfos"),u("creator"),u(),i(e(),32,"padding")]),k=new Proxy(de,{get(r,t,o){return t==="decode"?(...s)=>{let a=r.decode(...s);return{...a,version:3,rewardInfos:[{rewardVault:a.rewardVault,totalReward:a.totalReward,perSlotReward:a.perSlotReward,perShareReward:a.perShareReward}]}}:Reflect.get(r,t,o)}}),G=new Proxy(ce,{get(r,t,o){return t==="decode"?(...s)=>{let a=r.decode(...s);return{...a,version:5,rewardInfos:[{rewardVault:a.rewardVaultA,totalReward:a.totalRewardA,perSlotReward:a.perSlotRewardA,perShareReward:a.perShareRewardA},{rewardVault:a.rewardVaultB,totalReward:a.totalRewardB,perSlotReward:a.perSlotRewardB,perShareReward:a.perShareRewardB}]}}:Reflect.get(r,t,o)}}),I=new Proxy(pe,{get(r,t,o){return t==="decode"?(...s)=>{let a=r.decode(...s);return{...a,version:6,rewardInfos:a.rewardInfos.map(p=>{var y;return{...p,rewardType:((y=Object.entries(j).find(L=>String(L[1])===p.rewardType.toString()))!=null?y:["Standard SPL"])[0]}})}}:Reflect.get(r,t,o)}}),ye=d([e("isSet"),e("rewardPerSecond"),e("rewardOpenTime"),e("rewardEndTime"),e("rewardType")]),zt=d([c("instruction"),e("nonce"),i(ye,5,"rewardTimeInfo")]),Wt=d([c("instruction"),e("rewardReopenTime"),e("rewardEndTime"),e("rewardPerSecond")]),Xt=d([c("instruction"),e("isSet"),e("rewardPerSecond"),e("rewardOpenTime"),e("rewardEndTime"),e("rewardType")]),Yt=d([e("state"),u("id"),u("owner"),e("deposited"),i(e(),1,"rewardDebts")]),N=d([e("state"),u("id"),u("owner"),e("deposited"),i(m(),1,"rewardDebts"),e(""),e("voteLockedBalance"),i(e(),15)]),Jt=d([e("state"),u("id"),u("owner"),e("deposited"),i(e(),2,"rewardDebts")]),K=d([e("state"),u("id"),u("owner"),e("deposited"),i(m(),2,"rewardDebts"),i(e(),17)]),H=d([e(),e("state"),u("id"),u("owner"),e("deposited"),i(m(),5,"rewardDebts"),i(e(),16)]),Zt=d([c("instruction"),e("amount")]),me=d([u("mint"),u("grantAuthority"),e("baselineVoteWeightScaledFactor"),e("maxExtraLockupVoteWeightScaledFactor"),e("lockupSaturationSecs"),D("digitShift"),i(c(),7,"reserved1"),i(e(),7,"reserved2")]),$t=d([P(8),u("governanceProgramId"),u("realm"),u("realmGoverningTokenMint"),u("realmAuthority"),i(c(),32,"reserved1"),i(me,4,"votingMints"),w("timeOffset"),c("bump"),i(c(),7,"reserved2"),i(e(),11,"reserved3")]),Le=d([w("startTime"),w("endTime"),c("kind"),i(c(),15,"reserved")]),Pe=d([i(Le,1,"lockup"),e("amountDeposited_native"),e("amountInitiallyLockedNative"),T("isUsed"),T("allowClawback"),c("votingMintConfigIdx"),i(c(),29,"reserved")]),er=d([P(8),u("voterAuthority"),u("registrar"),i(Pe,32,"deposits"),c("voterBump"),c("voterWweightRecordBump"),i(c(),94,"reserved")]);var ir=V("Raydium_farm_config"),dr=new q("2cpMA1jNS4obgRz8XNg38QuSP83L1AXpUgfxPNcvnAGj"),cr=new q("FrspKwj8i3pNmKwXreTveC4fu7KL5ZbGeXdZBe2XViu1"),pr={3:k,5:G,6:I},yr={3:N,5:K,6:H},mr=r=>[3,5,6].indexOf(r)!==-1,Lr=r=>{var y;let{version:t,rewardInfos:o,rewardTokenAccountsPublicKeys:s}=r,a=`rewardInfo:${JSON.stringify(o)}, rewardAccount:${JSON.stringify(s)}`,p={3:()=>{if(o.length!==1||s.length!==1)return`rewardInfos or rewardTokenAccounts lengths not equal 1: ${a}`},5:()=>{if(o.length!==s.length)return`rewardInfos and rewardTokenAccounts lengths not equal: ${a}`},6:()=>{if(!s.length||o.length!==s.length)return`no rewardTokenAccounts or rewardInfos and rewardTokenAccounts lengths not equal: ${a}`}};return(y=p[t])==null?void 0:y.call(p)},j={"Standard SPL":0,"Option tokens":1},Pr={[M.toString()]:3,[A.toString()]:5,[B.toString()]:6};export{dr as FARM_LOCK_MINT,cr as FARM_LOCK_VAULT,Pr as FARM_PROGRAM_TO_VERSION,yr as FARM_VERSION_TO_LEDGER_LAYOUT,pr as FARM_VERSION_TO_STATE_LAYOUT,mr as isValidFarmVersion,j as poolTypeV6,Lr as validateFarmRewards}; //# sourceMappingURL=config.mjs.map