@pump-fun/pump-sdk 1.20.0-devnet.4 → 1.20.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/esm/index.js CHANGED
@@ -6751,6 +6751,10 @@ var pump_default = {
6751
6751
  {
6752
6752
  name: "creator",
6753
6753
  type: "pubkey"
6754
+ },
6755
+ {
6756
+ name: "is_mayhem_mode",
6757
+ type: "bool"
6754
6758
  }
6755
6759
  ]
6756
6760
  }
@@ -7549,6 +7553,7 @@ import { PublicKey as PublicKey2 } from "@solana/web3.js";
7549
7553
  // src/fees.ts
7550
7554
  import BN from "bn.js";
7551
7555
  import { PublicKey } from "@solana/web3.js";
7556
+ var ONE_BILLION_SUPPLY = new BN(1e15);
7552
7557
  function getFee({
7553
7558
  global,
7554
7559
  feeConfig,
@@ -7557,11 +7562,11 @@ function getFee({
7557
7562
  amount,
7558
7563
  isNewBondingCurve
7559
7564
  }) {
7560
- const { virtualSolReserves, virtualTokenReserves } = bondingCurve;
7565
+ const { virtualSolReserves, virtualTokenReserves, isMayhemMode } = bondingCurve;
7561
7566
  const { protocolFeeBps, creatorFeeBps } = computeFeesBps({
7562
7567
  global,
7563
7568
  feeConfig,
7564
- mintSupply,
7569
+ mintSupply: isMayhemMode ? mintSupply : ONE_BILLION_SUPPLY,
7565
7570
  virtualSolReserves,
7566
7571
  virtualTokenReserves
7567
7572
  });
@@ -7623,8 +7628,8 @@ function newBondingCurve(global) {
7623
7628
  realSolReserves: new BN2(0),
7624
7629
  tokenTotalSupply: global.tokenTotalSupply,
7625
7630
  complete: false,
7626
- creator: PublicKey2.default
7627
- // isMayhemMode: global.mayhemModeEnabled,
7631
+ creator: PublicKey2.default,
7632
+ isMayhemMode: global.mayhemModeEnabled
7628
7633
  };
7629
7634
  }
7630
7635
  function getBuySolAmountFromTokenAmountQuote({
@@ -8304,7 +8309,7 @@ var PumpSdk = class {
8304
8309
  solAmount,
8305
8310
  slippage,
8306
8311
  tokenProgram,
8307
- mayhemMode: false
8312
+ mayhemMode: bondingCurve.isMayhemMode
8308
8313
  })
8309
8314
  );
8310
8315
  return instructions;
@@ -8344,7 +8349,8 @@ var PumpSdk = class {
8344
8349
  amount,
8345
8350
  solAmount,
8346
8351
  slippage: 1,
8347
- tokenProgram: TOKEN_2022_PROGRAM_ID2
8352
+ tokenProgram: TOKEN_2022_PROGRAM_ID2,
8353
+ mayhemMode
8348
8354
  })
8349
8355
  ];
8350
8356
  }
@@ -8383,7 +8389,9 @@ var PumpSdk = class {
8383
8389
  associatedUser,
8384
8390
  amount,
8385
8391
  solAmount,
8386
- slippage: 1
8392
+ slippage: 1,
8393
+ tokenProgram: TOKEN_PROGRAM_ID2,
8394
+ mayhemMode: false
8387
8395
  })
8388
8396
  ];
8389
8397
  }
@@ -8396,7 +8404,7 @@ var PumpSdk = class {
8396
8404
  amount,
8397
8405
  solAmount,
8398
8406
  slippage,
8399
- tokenProgram,
8407
+ tokenProgram = TOKEN_PROGRAM_ID2,
8400
8408
  mayhemMode = false
8401
8409
  }) {
8402
8410
  return await this.getBuyInstructionInternal({
package/dist/index.d.mts CHANGED
@@ -4958,6 +4958,10 @@ type Pump = {
4958
4958
  {
4959
4959
  "name": "creator";
4960
4960
  "type": "pubkey";
4961
+ },
4962
+ {
4963
+ "name": "isMayhemMode";
4964
+ "type": "bool";
4961
4965
  }
4962
4966
  ];
4963
4967
  };
@@ -10708,6 +10712,10 @@ var types = [
10708
10712
  {
10709
10713
  name: "creator",
10710
10714
  type: "pubkey"
10715
+ },
10716
+ {
10717
+ name: "is_mayhem_mode",
10718
+ type: "bool"
10711
10719
  }
10712
10720
  ]
10713
10721
  }
@@ -11536,6 +11544,7 @@ interface BondingCurve {
11536
11544
  tokenTotalSupply: BN;
11537
11545
  complete: boolean;
11538
11546
  creator: PublicKey;
11547
+ isMayhemMode: boolean;
11539
11548
  }
11540
11549
  interface GlobalVolumeAccumulator {
11541
11550
  startTime: BN;
package/dist/index.d.ts CHANGED
@@ -4958,6 +4958,10 @@ type Pump = {
4958
4958
  {
4959
4959
  "name": "creator";
4960
4960
  "type": "pubkey";
4961
+ },
4962
+ {
4963
+ "name": "isMayhemMode";
4964
+ "type": "bool";
4961
4965
  }
4962
4966
  ];
4963
4967
  };
@@ -10708,6 +10712,10 @@ var types = [
10708
10712
  {
10709
10713
  name: "creator",
10710
10714
  type: "pubkey"
10715
+ },
10716
+ {
10717
+ name: "is_mayhem_mode",
10718
+ type: "bool"
10711
10719
  }
10712
10720
  ]
10713
10721
  }
@@ -11536,6 +11544,7 @@ interface BondingCurve {
11536
11544
  tokenTotalSupply: BN;
11537
11545
  complete: boolean;
11538
11546
  creator: PublicKey;
11547
+ isMayhemMode: boolean;
11539
11548
  }
11540
11549
  interface GlobalVolumeAccumulator {
11541
11550
  startTime: BN;
package/dist/index.js CHANGED
@@ -6791,6 +6791,10 @@ var pump_default = {
6791
6791
  {
6792
6792
  name: "creator",
6793
6793
  type: "pubkey"
6794
+ },
6795
+ {
6796
+ name: "is_mayhem_mode",
6797
+ type: "bool"
6794
6798
  }
6795
6799
  ]
6796
6800
  }
@@ -7589,6 +7593,7 @@ var import_web32 = require("@solana/web3.js");
7589
7593
  // src/fees.ts
7590
7594
  var import_bn = __toESM(require("bn.js"));
7591
7595
  var import_web3 = require("@solana/web3.js");
7596
+ var ONE_BILLION_SUPPLY = new import_bn.default(1e15);
7592
7597
  function getFee({
7593
7598
  global,
7594
7599
  feeConfig,
@@ -7597,11 +7602,11 @@ function getFee({
7597
7602
  amount,
7598
7603
  isNewBondingCurve
7599
7604
  }) {
7600
- const { virtualSolReserves, virtualTokenReserves } = bondingCurve;
7605
+ const { virtualSolReserves, virtualTokenReserves, isMayhemMode } = bondingCurve;
7601
7606
  const { protocolFeeBps, creatorFeeBps } = computeFeesBps({
7602
7607
  global,
7603
7608
  feeConfig,
7604
- mintSupply,
7609
+ mintSupply: isMayhemMode ? mintSupply : ONE_BILLION_SUPPLY,
7605
7610
  virtualSolReserves,
7606
7611
  virtualTokenReserves
7607
7612
  });
@@ -7663,8 +7668,8 @@ function newBondingCurve(global) {
7663
7668
  realSolReserves: new import_bn2.default(0),
7664
7669
  tokenTotalSupply: global.tokenTotalSupply,
7665
7670
  complete: false,
7666
- creator: import_web32.PublicKey.default
7667
- // isMayhemMode: global.mayhemModeEnabled,
7671
+ creator: import_web32.PublicKey.default,
7672
+ isMayhemMode: global.mayhemModeEnabled
7668
7673
  };
7669
7674
  }
7670
7675
  function getBuySolAmountFromTokenAmountQuote({
@@ -8324,7 +8329,7 @@ var PumpSdk = class {
8324
8329
  solAmount,
8325
8330
  slippage,
8326
8331
  tokenProgram,
8327
- mayhemMode: false
8332
+ mayhemMode: bondingCurve.isMayhemMode
8328
8333
  })
8329
8334
  );
8330
8335
  return instructions;
@@ -8364,7 +8369,8 @@ var PumpSdk = class {
8364
8369
  amount,
8365
8370
  solAmount,
8366
8371
  slippage: 1,
8367
- tokenProgram: import_spl_token2.TOKEN_2022_PROGRAM_ID
8372
+ tokenProgram: import_spl_token2.TOKEN_2022_PROGRAM_ID,
8373
+ mayhemMode
8368
8374
  })
8369
8375
  ];
8370
8376
  }
@@ -8403,7 +8409,9 @@ var PumpSdk = class {
8403
8409
  associatedUser,
8404
8410
  amount,
8405
8411
  solAmount,
8406
- slippage: 1
8412
+ slippage: 1,
8413
+ tokenProgram: import_spl_token2.TOKEN_PROGRAM_ID,
8414
+ mayhemMode: false
8407
8415
  })
8408
8416
  ];
8409
8417
  }
@@ -8416,7 +8424,7 @@ var PumpSdk = class {
8416
8424
  amount,
8417
8425
  solAmount,
8418
8426
  slippage,
8419
- tokenProgram,
8427
+ tokenProgram = import_spl_token2.TOKEN_PROGRAM_ID,
8420
8428
  mayhemMode = false
8421
8429
  }) {
8422
8430
  return await this.getBuyInstructionInternal({
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pump-fun/pump-sdk",
3
- "version": "1.20.0-devnet.4",
3
+ "version": "1.20.0",
4
4
  "description": "Pump Bonding Curve SDK",
5
5
  "keywords": [],
6
6
  "homepage": "https://github.com/pump-fun/pump-sdk#readme",
@@ -12,7 +12,7 @@ export function newBondingCurve(global: Global): BondingCurve {
12
12
  tokenTotalSupply: global.tokenTotalSupply,
13
13
  complete: false,
14
14
  creator: PublicKey.default,
15
- // isMayhemMode: global.mayhemModeEnabled,
15
+ isMayhemMode: global.mayhemModeEnabled,
16
16
  };
17
17
  }
18
18
 
package/src/fees.ts CHANGED
@@ -3,6 +3,8 @@ import { PublicKey } from "@solana/web3.js";
3
3
  import { FeeConfig, Global, Fees, BondingCurve, FeeTier } from "./state";
4
4
  import { bondingCurveMarketCap } from "./bondingCurve";
5
5
 
6
+ export const ONE_BILLION_SUPPLY = new BN(1_000_000_000_000000);
7
+
6
8
  export interface CalculatedFeesBps {
7
9
  protocolFeeBps: BN;
8
10
  creatorFeeBps: BN;
@@ -23,11 +25,11 @@ export function getFee({
23
25
  amount: BN;
24
26
  isNewBondingCurve: boolean;
25
27
  }) {
26
- const { virtualSolReserves, virtualTokenReserves } = bondingCurve;
28
+ const { virtualSolReserves, virtualTokenReserves, isMayhemMode } = bondingCurve;
27
29
  const { protocolFeeBps, creatorFeeBps } = computeFeesBps({
28
30
  global,
29
31
  feeConfig,
30
- mintSupply,
32
+ mintSupply: isMayhemMode ? mintSupply : ONE_BILLION_SUPPLY,
31
33
  virtualSolReserves,
32
34
  virtualTokenReserves,
33
35
  });
package/src/idl/pump.json CHANGED
@@ -4947,6 +4947,10 @@
4947
4947
  {
4948
4948
  "name": "creator",
4949
4949
  "type": "pubkey"
4950
+ },
4951
+ {
4952
+ "name": "is_mayhem_mode",
4953
+ "type": "bool"
4950
4954
  }
4951
4955
  ]
4952
4956
  }
package/src/idl/pump.ts CHANGED
@@ -4953,6 +4953,10 @@ export type Pump = {
4953
4953
  {
4954
4954
  "name": "creator",
4955
4955
  "type": "pubkey"
4956
+ },
4957
+ {
4958
+ "name": "isMayhemMode",
4959
+ "type": "bool"
4956
4960
  }
4957
4961
  ]
4958
4962
  }
package/src/sdk.ts CHANGED
@@ -243,7 +243,7 @@ export class PumpSdk {
243
243
  solAmount,
244
244
  slippage,
245
245
  tokenProgram,
246
- mayhemMode: false
246
+ mayhemMode: bondingCurve.isMayhemMode,
247
247
  }),
248
248
  );
249
249
 
@@ -297,6 +297,7 @@ export class PumpSdk {
297
297
  solAmount,
298
298
  slippage: 1,
299
299
  tokenProgram: TOKEN_2022_PROGRAM_ID,
300
+ mayhemMode,
300
301
  }),
301
302
  ];
302
303
  }
@@ -347,6 +348,8 @@ export class PumpSdk {
347
348
  amount,
348
349
  solAmount,
349
350
  slippage: 1,
351
+ tokenProgram: TOKEN_PROGRAM_ID,
352
+ mayhemMode: false,
350
353
  }),
351
354
  ];
352
355
  }
@@ -360,7 +363,7 @@ export class PumpSdk {
360
363
  amount,
361
364
  solAmount,
362
365
  slippage,
363
- tokenProgram,
366
+ tokenProgram = TOKEN_PROGRAM_ID,
364
367
  mayhemMode = false,
365
368
  }: {
366
369
  global: Global;
@@ -371,8 +374,8 @@ export class PumpSdk {
371
374
  amount: BN;
372
375
  solAmount: BN;
373
376
  slippage: number;
374
- tokenProgram?: PublicKey;
375
- mayhemMode?: boolean;
377
+ tokenProgram: PublicKey;
378
+ mayhemMode: boolean;
376
379
  }) {
377
380
  return await this.getBuyInstructionInternal({
378
381
  user,
package/src/state.ts CHANGED
@@ -33,6 +33,7 @@ export interface BondingCurve {
33
33
  tokenTotalSupply: BN;
34
34
  complete: boolean;
35
35
  creator: PublicKey;
36
+ isMayhemMode: boolean;
36
37
  }
37
38
 
38
39
  export interface GlobalVolumeAccumulator {