pumpdotfun-repumped-sdk
Version:
Pumpfun SDK — create, buy, sell tokens with support for Jito bundles and multiple relayer integrations. Rebuilt and fixed pumpdotfun-sdk.
1 lines • 4.56 kB
Source Map (JSON)
{"version":3,"file":"globalAccount.mjs","sources":["../../../src/globalAccount.ts"],"sourcesContent":["import { PublicKey } from \"@solana/web3.js\";\r\nimport { struct, bool, u64, publicKey, Layout } from \"@coral-xyz/borsh\";\r\n\r\nexport class GlobalAccount {\r\n public discriminator: bigint;\r\n public initialized: boolean = false;\r\n public authority: PublicKey;\r\n public feeRecipient: PublicKey;\r\n public initialVirtualTokenReserves: bigint;\r\n public initialVirtualSolReserves: bigint;\r\n public initialRealTokenReserves: bigint;\r\n public tokenTotalSupply: bigint;\r\n public feeBasisPoints: bigint;\r\n\r\n constructor(\r\n discriminator: bigint,\r\n initialized: boolean,\r\n authority: PublicKey,\r\n feeRecipient: PublicKey,\r\n initialVirtualTokenReserves: bigint,\r\n initialVirtualSolReserves: bigint,\r\n initialRealTokenReserves: bigint,\r\n tokenTotalSupply: bigint,\r\n feeBasisPoints: bigint\r\n ) {\r\n this.discriminator = discriminator;\r\n this.initialized = initialized;\r\n this.authority = authority;\r\n this.feeRecipient = feeRecipient;\r\n this.initialVirtualTokenReserves = initialVirtualTokenReserves;\r\n this.initialVirtualSolReserves = initialVirtualSolReserves;\r\n this.initialRealTokenReserves = initialRealTokenReserves;\r\n this.tokenTotalSupply = tokenTotalSupply;\r\n this.feeBasisPoints = feeBasisPoints;\r\n }\r\n\r\n getInitialBuyPrice(amount: bigint): bigint {\r\n if (amount <= 0n) {\r\n return 0n;\r\n }\r\n\r\n let n = this.initialVirtualSolReserves * this.initialVirtualTokenReserves;\r\n let i = this.initialVirtualSolReserves + amount;\r\n let r = n / i + 1n;\r\n let s = this.initialVirtualTokenReserves - r;\r\n return s < this.initialRealTokenReserves\r\n ? s\r\n : this.initialRealTokenReserves;\r\n }\r\n\r\n public static fromBuffer(buffer: Buffer): GlobalAccount {\r\n const structure: Layout<GlobalAccount> = struct([\r\n u64(\"discriminator\"),\r\n bool(\"initialized\"),\r\n publicKey(\"authority\"),\r\n publicKey(\"feeRecipient\"),\r\n u64(\"initialVirtualTokenReserves\"),\r\n u64(\"initialVirtualSolReserves\"),\r\n u64(\"initialRealTokenReserves\"),\r\n u64(\"tokenTotalSupply\"),\r\n u64(\"feeBasisPoints\"),\r\n ]);\r\n\r\n let value = structure.decode(buffer);\r\n return new GlobalAccount(\r\n BigInt(value.discriminator),\r\n value.initialized,\r\n value.authority,\r\n value.feeRecipient,\r\n BigInt(value.initialVirtualTokenReserves),\r\n BigInt(value.initialVirtualSolReserves),\r\n BigInt(value.initialRealTokenReserves),\r\n BigInt(value.tokenTotalSupply),\r\n BigInt(value.feeBasisPoints)\r\n );\r\n }\r\n}\r\n"],"names":[],"mappings":";;MAGa,aAAa,CAAA;AACjB,IAAA,aAAa;IACb,WAAW,GAAY,KAAK;AAC5B,IAAA,SAAS;AACT,IAAA,YAAY;AACZ,IAAA,2BAA2B;AAC3B,IAAA,yBAAyB;AACzB,IAAA,wBAAwB;AACxB,IAAA,gBAAgB;AAChB,IAAA,cAAc;AAErB,IAAA,WAAA,CACE,aAAqB,EACrB,WAAoB,EACpB,SAAoB,EACpB,YAAuB,EACvB,2BAAmC,EACnC,yBAAiC,EACjC,wBAAgC,EAChC,gBAAwB,EACxB,cAAsB,EAAA;AAEtB,QAAA,IAAI,CAAC,aAAa,GAAG,aAAa;AAClC,QAAA,IAAI,CAAC,WAAW,GAAG,WAAW;AAC9B,QAAA,IAAI,CAAC,SAAS,GAAG,SAAS;AAC1B,QAAA,IAAI,CAAC,YAAY,GAAG,YAAY;AAChC,QAAA,IAAI,CAAC,2BAA2B,GAAG,2BAA2B;AAC9D,QAAA,IAAI,CAAC,yBAAyB,GAAG,yBAAyB;AAC1D,QAAA,IAAI,CAAC,wBAAwB,GAAG,wBAAwB;AACxD,QAAA,IAAI,CAAC,gBAAgB,GAAG,gBAAgB;AACxC,QAAA,IAAI,CAAC,cAAc,GAAG,cAAc;;AAGtC,IAAA,kBAAkB,CAAC,MAAc,EAAA;AAC/B,QAAA,IAAI,MAAM,IAAI,EAAE,EAAE;AAChB,YAAA,OAAO,EAAE;;QAGX,IAAI,CAAC,GAAG,IAAI,CAAC,yBAAyB,GAAG,IAAI,CAAC,2BAA2B;AACzE,QAAA,IAAI,CAAC,GAAG,IAAI,CAAC,yBAAyB,GAAG,MAAM;AAC/C,QAAA,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE;AAClB,QAAA,IAAI,CAAC,GAAG,IAAI,CAAC,2BAA2B,GAAG,CAAC;AAC5C,QAAA,OAAO,CAAC,GAAG,IAAI,CAAC;AACd,cAAE;AACF,cAAE,IAAI,CAAC,wBAAwB;;IAG5B,OAAO,UAAU,CAAC,MAAc,EAAA;QACrC,MAAM,SAAS,GAA0B,MAAM,CAAC;YAC9C,GAAG,CAAC,eAAe,CAAC;YACpB,IAAI,CAAC,aAAa,CAAC;YACnB,SAAS,CAAC,WAAW,CAAC;YACtB,SAAS,CAAC,cAAc,CAAC;YACzB,GAAG,CAAC,6BAA6B,CAAC;YAClC,GAAG,CAAC,2BAA2B,CAAC;YAChC,GAAG,CAAC,0BAA0B,CAAC;YAC/B,GAAG,CAAC,kBAAkB,CAAC;YACvB,GAAG,CAAC,gBAAgB,CAAC;AACtB,SAAA,CAAC;QAEF,IAAI,KAAK,GAAG,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC;QACpC,OAAO,IAAI,aAAa,CACtB,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,EAC3B,KAAK,CAAC,WAAW,EACjB,KAAK,CAAC,SAAS,EACf,KAAK,CAAC,YAAY,EAClB,MAAM,CAAC,KAAK,CAAC,2BAA2B,CAAC,EACzC,MAAM,CAAC,KAAK,CAAC,yBAAyB,CAAC,EACvC,MAAM,CAAC,KAAK,CAAC,wBAAwB,CAAC,EACtC,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,EAC9B,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,CAC7B;;AAEJ;;;;"}