genius-intents 0.34.1-develop.1 → 0.34.2
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/CHANGELOG.md +54 -0
- package/dist/direct-pools/pump-fun/pool-info/pump-fun-pool-info.service.d.ts.map +1 -1
- package/dist/direct-pools/pump-fun/pool-info/pump-fun-pool-info.service.js +4 -0
- package/dist/direct-pools/pump-fun/pool-info/pump-fun-pool-info.service.js.map +1 -1
- package/dist/direct-pools/pump-fun/pool-info/pump-pool-info.types.d.ts +4 -0
- package/dist/direct-pools/pump-fun/pool-info/pump-pool-info.types.d.ts.map +1 -1
- package/dist/direct-pools/pump-fun/pool-info/pump-swap-amm-pool-info.service.d.ts.map +1 -1
- package/dist/direct-pools/pump-fun/pool-info/pump-swap-amm-pool-info.service.js +4 -0
- package/dist/direct-pools/pump-fun/pool-info/pump-swap-amm-pool-info.service.js.map +1 -1
- package/dist/direct-pools/pump-fun/txn-builder/pump-fun.service.d.ts.map +1 -1
- package/dist/direct-pools/pump-fun/txn-builder/pump-fun.service.js +8 -2
- package/dist/direct-pools/pump-fun/txn-builder/pump-fun.service.js.map +1 -1
- package/dist/direct-pools/pump-fun/txn-builder/pump-fun.types.d.ts +7 -0
- package/dist/direct-pools/pump-fun/txn-builder/pump-fun.types.d.ts.map +1 -1
- package/dist/direct-pools/pump-fun/txn-builder/pump-swap-amm.service.d.ts.map +1 -1
- package/dist/direct-pools/pump-fun/txn-builder/pump-swap-amm.service.js +14 -2
- package/dist/direct-pools/pump-fun/txn-builder/pump-swap-amm.service.js.map +1 -1
- package/dist/lib/evm-transaction-safety/evm-transaction-safety.service.d.ts.map +1 -1
- package/dist/lib/evm-transaction-safety/evm-transaction-safety.service.js +43 -19
- package/dist/lib/evm-transaction-safety/evm-transaction-safety.service.js.map +1 -1
- package/dist/lib/evm-transaction-safety/evm-transaction-safety.types.d.ts +8 -0
- package/dist/lib/evm-transaction-safety/evm-transaction-safety.types.d.ts.map +1 -1
- package/dist/protocols/debridge/debridge.service.d.ts.map +1 -1
- package/dist/protocols/debridge/debridge.service.js +25 -17
- package/dist/protocols/debridge/debridge.service.js.map +1 -1
- package/dist/protocols/four-meme/four-meme.service.d.ts.map +1 -1
- package/dist/protocols/four-meme/four-meme.service.js +22 -19
- package/dist/protocols/four-meme/four-meme.service.js.map +1 -1
- package/dist/protocols/kyberswap/kyberswap.service.d.ts.map +1 -1
- package/dist/protocols/kyberswap/kyberswap.service.js +20 -19
- package/dist/protocols/kyberswap/kyberswap.service.js.map +1 -1
- package/dist/protocols/lifi/lifi.service.d.ts.map +1 -1
- package/dist/protocols/lifi/lifi.service.js +24 -20
- package/dist/protocols/lifi/lifi.service.js.map +1 -1
- package/dist/protocols/odos/odos.service.d.ts.map +1 -1
- package/dist/protocols/odos/odos.service.js +19 -19
- package/dist/protocols/odos/odos.service.js.map +1 -1
- package/dist/protocols/okx/okx.service.d.ts.map +1 -1
- package/dist/protocols/okx/okx.service.js +23 -19
- package/dist/protocols/okx/okx.service.js.map +1 -1
- package/dist/protocols/openocean/openocean.service.d.ts.map +1 -1
- package/dist/protocols/openocean/openocean.service.js +21 -20
- package/dist/protocols/openocean/openocean.service.js.map +1 -1
- package/dist/protocols/pumpswap/pumpswap.service.d.ts +7 -1
- package/dist/protocols/pumpswap/pumpswap.service.d.ts.map +1 -1
- package/dist/protocols/pumpswap/pumpswap.service.js +33 -21
- package/dist/protocols/pumpswap/pumpswap.service.js.map +1 -1
- package/dist/protocols/relay/relay.service.d.ts.map +1 -1
- package/dist/protocols/relay/relay.service.js +26 -19
- package/dist/protocols/relay/relay.service.js.map +1 -1
- package/dist/protocols/v2-dex/v2-dex.service.d.ts.map +1 -1
- package/dist/protocols/v2-dex/v2-dex.service.js +16 -12
- package/dist/protocols/v2-dex/v2-dex.service.js.map +1 -1
- package/dist/protocols/v3-dex/v3-dex.service.d.ts.map +1 -1
- package/dist/protocols/v3-dex/v3-dex.service.js +17 -13
- package/dist/protocols/v3-dex/v3-dex.service.js.map +1 -1
- package/dist/protocols/zeroX/zeroX.service.d.ts.map +1 -1
- package/dist/protocols/zeroX/zeroX.service.js +21 -20
- package/dist/protocols/zeroX/zeroX.service.js.map +1 -1
- package/dist/utils/is-native.d.ts +1 -0
- package/dist/utils/is-native.d.ts.map +1 -1
- package/dist/utils/is-native.js +9 -1
- package/dist/utils/is-native.js.map +1 -1
- package/package.json +3 -3
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,57 @@
|
|
|
1
|
+
## [0.34.2] - 2026-03-06 (Beta)
|
|
2
|
+
|
|
3
|
+
🧪 **This is a beta release for testing purposes.**
|
|
4
|
+
|
|
5
|
+
### [0.34.2](https://github.com/Genius-Foundation/genius-intents/compare/v0.34.1...v0.34.2) (2026-03-06)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
### Bug Fixes
|
|
9
|
+
|
|
10
|
+
* pump fun and amm cashback changes ([#235](https://github.com/Genius-Foundation/genius-intents/issues/235)) ([d679847](https://github.com/Genius-Foundation/genius-intents/commit/d67984729cc70465db43547eb1f9924b7fc1a707))
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
### Documentation
|
|
14
|
+
|
|
15
|
+
* update CHANGELOG.md for v0.34.1 (beta) ([72dc3e4](https://github.com/Genius-Foundation/genius-intents/commit/72dc3e4fb6882cd7527933724ab7e582afd0b34f))
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
⚠️ **Beta Release Notes:**
|
|
20
|
+
- This version is intended for testing and development
|
|
21
|
+
- May contain experimental features
|
|
22
|
+
- Not recommended for production use
|
|
23
|
+
- Feedback and bug reports are welcome
|
|
24
|
+
|
|
25
|
+
---
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
## [0.34.1] - 2026-03-02 (Beta)
|
|
29
|
+
|
|
30
|
+
🧪 **This is a beta release for testing purposes.**
|
|
31
|
+
|
|
32
|
+
### [0.34.1](https://github.com/Genius-Foundation/genius-intents/compare/v0.34.0...v0.34.1) (2026-03-02)
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
### Bug Fixes
|
|
36
|
+
|
|
37
|
+
* meme sell and cross-chain regressions ([#231](https://github.com/Genius-Foundation/genius-intents/issues/231)) ([4ed8dd1](https://github.com/Genius-Foundation/genius-intents/commit/4ed8dd1938f7ea5a21baa17283903455d896377a))
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
### Documentation
|
|
41
|
+
|
|
42
|
+
* update CHANGELOG.md for v0.34.1-develop.1 (beta) ([7e92d20](https://github.com/Genius-Foundation/genius-intents/commit/7e92d20614b9ff52afffdfbd267f14b9ecdef72e))
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
⚠️ **Beta Release Notes:**
|
|
47
|
+
- This version is intended for testing and development
|
|
48
|
+
- May contain experimental features
|
|
49
|
+
- Not recommended for production use
|
|
50
|
+
- Feedback and bug reports are welcome
|
|
51
|
+
|
|
52
|
+
---
|
|
53
|
+
|
|
54
|
+
|
|
1
55
|
## [0.34.1-develop.1] - 2026-02-27 (Beta)
|
|
2
56
|
|
|
3
57
|
🧪 **This is a beta release for testing purposes.**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pump-fun-pool-info.service.d.ts","sourceRoot":"","sources":["../../../../src/direct-pools/pump-fun/pool-info/pump-fun-pool-info.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAGxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAO1D,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAgB;IACxC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAa;gBAE7B,WAAW,EAAE,UAAU,EAAE,KAAK,GAAE,OAAe;IAU3D;;OAEG;IACG,WAAW,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"pump-fun-pool-info.service.d.ts","sourceRoot":"","sources":["../../../../src/direct-pools/pump-fun/pool-info/pump-fun-pool-info.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAGxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAO1D,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAgB;IACxC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAa;gBAE7B,WAAW,EAAE,UAAU,EAAE,KAAK,GAAE,OAAe;IAU3D;;OAEG;IACG,WAAW,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC;IAwCzE;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAQ3B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAQ3B;;OAEG;IACH,OAAO,CAAC,4BAA4B;CAQrC"}
|
|
@@ -34,8 +34,10 @@ class PumpFunPoolInfo {
|
|
|
34
34
|
: this._getStaticRandomFeeRecipient(global.feeRecipients);
|
|
35
35
|
const creatorVault = this._getCreatorVaultPda(bondingCurve.creator);
|
|
36
36
|
const tokenProgram = await (0, token_program_util_1.getTokenProgram)(this._connection, tokenMint);
|
|
37
|
+
const bondingCurveV2P = (0, pump_sdk_1.bondingCurveV2Pda)(tokenMint);
|
|
37
38
|
return {
|
|
38
39
|
poolType: constants_1.PoolTypesEnum.PUMP_FUN,
|
|
40
|
+
bondingCurveV2: bondingCurveV2P.toBase58(),
|
|
39
41
|
mint: tokenMint.toBase58(),
|
|
40
42
|
quoteMint: spl_token_1.NATIVE_MINT.toBase58(),
|
|
41
43
|
bondingCurve: bondingCurvePda.toBase58(),
|
|
@@ -45,6 +47,8 @@ class PumpFunPoolInfo {
|
|
|
45
47
|
complete: bondingCurve.complete,
|
|
46
48
|
isMayhemMode: bondingCurve.isMayhemMode,
|
|
47
49
|
tokenProgram: tokenProgram.toBase58(),
|
|
50
|
+
// PUMP SDK is not updated yet for this
|
|
51
|
+
isCashbackCoin: false,
|
|
48
52
|
};
|
|
49
53
|
}
|
|
50
54
|
catch (error) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pump-fun-pool-info.service.js","sourceRoot":"","sources":["../../../../src/direct-pools/pump-fun/pool-info/pump-fun-pool-info.service.ts"],"names":[],"mappings":";;;AAAA,6CAAwD;AACxD,
|
|
1
|
+
{"version":3,"file":"pump-fun-pool-info.service.js","sourceRoot":"","sources":["../../../../src/direct-pools/pump-fun/pool-info/pump-fun-pool-info.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,6 +2,7 @@ import { PoolTypesEnum } from '../../constants';
|
|
|
2
2
|
export interface IPumpSwapPoolInfo {
|
|
3
3
|
poolType: PoolTypesEnum.PUMP_SWAP_AMM;
|
|
4
4
|
poolId: string;
|
|
5
|
+
poolV2: string;
|
|
5
6
|
baseMint: string;
|
|
6
7
|
quoteMint: string;
|
|
7
8
|
protocolFeeRecipient: string;
|
|
@@ -10,10 +11,12 @@ export interface IPumpSwapPoolInfo {
|
|
|
10
11
|
isMayhemMode: boolean;
|
|
11
12
|
baseTokenProgram: string;
|
|
12
13
|
quoteTokenProgram: string;
|
|
14
|
+
isCashbackCoin: boolean;
|
|
13
15
|
}
|
|
14
16
|
export interface IPumpFunPoolInfo {
|
|
15
17
|
poolType: PoolTypesEnum.PUMP_FUN;
|
|
16
18
|
mint: string;
|
|
19
|
+
bondingCurveV2: string;
|
|
17
20
|
quoteMint: string;
|
|
18
21
|
bondingCurve: string;
|
|
19
22
|
feeRecipient: string;
|
|
@@ -22,5 +25,6 @@ export interface IPumpFunPoolInfo {
|
|
|
22
25
|
complete: boolean;
|
|
23
26
|
isMayhemMode: boolean;
|
|
24
27
|
tokenProgram: string;
|
|
28
|
+
isCashbackCoin: boolean;
|
|
25
29
|
}
|
|
26
30
|
//# sourceMappingURL=pump-pool-info.types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pump-pool-info.types.d.ts","sourceRoot":"","sources":["../../../../src/direct-pools/pump-fun/pool-info/pump-pool-info.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,aAAa,CAAC,aAAa,CAAC;IACtC,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,qBAAqB,EAAE,MAAM,CAAC;IAC9B,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,OAAO,CAAC;IACtB,gBAAgB,EAAE,MAAM,CAAC;IACzB,iBAAiB,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"pump-pool-info.types.d.ts","sourceRoot":"","sources":["../../../../src/direct-pools/pump-fun/pool-info/pump-pool-info.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,aAAa,CAAC,aAAa,CAAC;IACtC,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,qBAAqB,EAAE,MAAM,CAAC;IAC9B,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,OAAO,CAAC;IACtB,gBAAgB,EAAE,MAAM,CAAC;IACzB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,cAAc,EAAE,OAAO,CAAC;CACzB;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,aAAa,CAAC,QAAQ,CAAC;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,OAAO,CAAC;IAClB,YAAY,EAAE,OAAO,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,OAAO,CAAC;CACzB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pump-swap-amm-pool-info.service.d.ts","sourceRoot":"","sources":["../../../../src/direct-pools/pump-fun/pool-info/pump-swap-amm-pool-info.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAGxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAK3D,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAmB;gBAE/B,WAAW,EAAE,UAAU,EAAE,KAAK,GAAE,OAAe;IAS3D;;OAEG;IACG,WAAW,CAAC,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"pump-swap-amm-pool-info.service.d.ts","sourceRoot":"","sources":["../../../../src/direct-pools/pump-fun/pool-info/pump-swap-amm-pool-info.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAGxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAK3D,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAmB;gBAE/B,WAAW,EAAE,UAAU,EAAE,KAAK,GAAE,OAAe;IAS3D;;OAEG;IACG,WAAW,CAAC,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC;IAyCvE;;OAEG;IACH,OAAO,CAAC,yBAAyB;CAWlC"}
|
|
@@ -29,6 +29,8 @@ class PumpSwapPoolInfo {
|
|
|
29
29
|
? state.globalConfig.reservedFeeRecipient
|
|
30
30
|
: this._pickProtocolFeeRecipient(state.globalConfig.protocolFeeRecipients, poolId);
|
|
31
31
|
const creatorVaultAuthority = (0, pump_swap_sdk_1.coinCreatorVaultAuthorityPda)(state.pool.coinCreator);
|
|
32
|
+
const poolV2 = (0, pump_swap_sdk_1.poolV2Pda)(state.pool.baseMint);
|
|
33
|
+
const isCashbackCoin = state.pool.isCashbackCoin;
|
|
32
34
|
const [baseTokenProgram, quoteTokenProgram] = await Promise.all([
|
|
33
35
|
(0, token_program_util_1.getTokenProgram)(this._online.connection, state.pool.baseMint),
|
|
34
36
|
(0, token_program_util_1.getTokenProgram)(this._online.connection, state.pool.quoteMint),
|
|
@@ -44,6 +46,8 @@ class PumpSwapPoolInfo {
|
|
|
44
46
|
isMayhemMode: state.pool.isMayhemMode,
|
|
45
47
|
baseTokenProgram: baseTokenProgram.toBase58(),
|
|
46
48
|
quoteTokenProgram: quoteTokenProgram.toBase58(),
|
|
49
|
+
poolV2: poolV2.toBase58(),
|
|
50
|
+
isCashbackCoin,
|
|
47
51
|
};
|
|
48
52
|
}
|
|
49
53
|
catch (error) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pump-swap-amm-pool-info.service.js","sourceRoot":"","sources":["../../../../src/direct-pools/pump-fun/pool-info/pump-swap-amm-pool-info.service.ts"],"names":[],"mappings":";;;AAAA,6CAAwD;AACxD,
|
|
1
|
+
{"version":3,"file":"pump-swap-amm-pool-info.service.js","sourceRoot":"","sources":["../../../../src/direct-pools/pump-fun/pool-info/pump-swap-amm-pool-info.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pump-fun.service.d.ts","sourceRoot":"","sources":["../../../../src/direct-pools/pump-fun/txn-builder/pump-fun.service.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EAGT,oBAAoB,EAErB,MAAM,iBAAiB,CAAC;AAUzB,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAEzE,qBAAa,cAAc;IACzB,gBAAuB,SAAS,YAAgE;IAChG,gBAAuB,UAAU,YAAgE;IAEjG,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAiC;IACpE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,iBAAiB,CAAwC;IACjF,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,mBAAmB,CAA4C;IACvF,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,iBAAiB,CAAwC;IACjF,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,4BAA4B,CAGlD;IACF,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,0BAA0B,CAGhD;IACF,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAqC;IAE3E,MAAM,CAAC,QAAQ,CAAC,gBAAgB,sBAAmD;IACnF,MAAM,CAAC,QAAQ,CAAC,iBAAiB,sBAAsD;;IAIvF;;OAEG;IACH,MAAM,CAAC,YAAY,IAAI,SAAS;IAKhC;;OAEG;IACH,MAAM,CAAC,kBAAkB,CAAC,IAAI,EAAE,SAAS,GAAG,SAAS;IAQrD;;OAEG;IACH,MAAM,CAAC,oBAAoB,IAAI,SAAS;IAKxC;;OAEG;IACH,MAAM,CAAC,kBAAkB,CAAC,OAAO,EAAE,SAAS,GAAG,SAAS;IAQxD;;OAEG;IACH,MAAM,CAAC,6BAA6B,IAAI,SAAS;IAQjD;;OAEG;IACH,MAAM,CAAC,2BAA2B,CAAC,IAAI,EAAE,SAAS,GAAG,SAAS;IAQ9D;;OAEG;IACH,MAAM,CAAC,eAAe,IAAI,SAAS;IAYnC;;OAEG;IACG,oBAAoB,CAAC,MAAM,EAAE,iBAAiB,GAAG,OAAO,CAAC,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"pump-fun.service.d.ts","sourceRoot":"","sources":["../../../../src/direct-pools/pump-fun/txn-builder/pump-fun.service.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EAGT,oBAAoB,EAErB,MAAM,iBAAiB,CAAC;AAUzB,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAEzE,qBAAa,cAAc;IACzB,gBAAuB,SAAS,YAAgE;IAChG,gBAAuB,UAAU,YAAgE;IAEjG,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAiC;IACpE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,iBAAiB,CAAwC;IACjF,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,mBAAmB,CAA4C;IACvF,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,iBAAiB,CAAwC;IACjF,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,4BAA4B,CAGlD;IACF,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,0BAA0B,CAGhD;IACF,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAqC;IAE3E,MAAM,CAAC,QAAQ,CAAC,gBAAgB,sBAAmD;IACnF,MAAM,CAAC,QAAQ,CAAC,iBAAiB,sBAAsD;;IAIvF;;OAEG;IACH,MAAM,CAAC,YAAY,IAAI,SAAS;IAKhC;;OAEG;IACH,MAAM,CAAC,kBAAkB,CAAC,IAAI,EAAE,SAAS,GAAG,SAAS;IAQrD;;OAEG;IACH,MAAM,CAAC,oBAAoB,IAAI,SAAS;IAKxC;;OAEG;IACH,MAAM,CAAC,kBAAkB,CAAC,OAAO,EAAE,SAAS,GAAG,SAAS;IAQxD;;OAEG;IACH,MAAM,CAAC,6BAA6B,IAAI,SAAS;IAQjD;;OAEG;IACH,MAAM,CAAC,2BAA2B,CAAC,IAAI,EAAE,SAAS,GAAG,SAAS;IAQ9D;;OAEG;IACH,MAAM,CAAC,eAAe,IAAI,SAAS;IAYnC;;OAEG;IACG,oBAAoB,CAAC,MAAM,EAAE,iBAAiB,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAqGpF;;OAEG;IACG,qBAAqB,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,oBAAoB,CAAC;CA4FvF"}
|
|
@@ -63,7 +63,7 @@ class PumpFunService {
|
|
|
63
63
|
* Create buy instruction
|
|
64
64
|
*/
|
|
65
65
|
async createBuyInstruction(params) {
|
|
66
|
-
const { user, mint, amount, maxSolCost, feeRecipient, creatorVault, trackVolume, blockHash, wrapOrUnwrapSol = false, tokenProgram = spl_token_1.TOKEN_PROGRAM_ID, } = params;
|
|
66
|
+
const { user, mint, amount, maxSolCost, feeRecipient, creatorVault, trackVolume, blockHash, wrapOrUnwrapSol = false, tokenProgram = spl_token_1.TOKEN_PROGRAM_ID, bondingCurveV2, } = params;
|
|
67
67
|
const instructions = [];
|
|
68
68
|
const global = PumpFunService.getGlobalPda();
|
|
69
69
|
const bondingCurve = PumpFunService.getBondingCurvePda(mint);
|
|
@@ -102,6 +102,7 @@ class PumpFunService {
|
|
|
102
102
|
{ pubkey: userVolumeAccumulator, isSigner: false, isWritable: true },
|
|
103
103
|
{ pubkey: feeConfig, isSigner: false, isWritable: false },
|
|
104
104
|
{ pubkey: PumpFunService.feeProgram, isSigner: false, isWritable: false },
|
|
105
|
+
{ pubkey: bondingCurveV2, isSigner: false, isWritable: false },
|
|
105
106
|
];
|
|
106
107
|
const data = Buffer.concat([
|
|
107
108
|
PumpFunService.buyDiscriminator,
|
|
@@ -124,7 +125,7 @@ class PumpFunService {
|
|
|
124
125
|
* Create sell instruction
|
|
125
126
|
*/
|
|
126
127
|
async createSellInstruction(params) {
|
|
127
|
-
const { user, mint, amount, minSolOutput, feeRecipient, creatorVault, blockHash, wrapOrUnwrapSol = false, tokenProgram = spl_token_1.TOKEN_PROGRAM_ID, } = params;
|
|
128
|
+
const { user, isCashbackCoin, bondingCurveV2, mint, amount, minSolOutput, feeRecipient, creatorVault, blockHash, wrapOrUnwrapSol = false, tokenProgram = spl_token_1.TOKEN_PROGRAM_ID, } = params;
|
|
128
129
|
const instructions = [];
|
|
129
130
|
const global = PumpFunService.getGlobalPda();
|
|
130
131
|
const bondingCurve = PumpFunService.getBondingCurvePda(mint);
|
|
@@ -140,6 +141,7 @@ class PumpFunService {
|
|
|
140
141
|
const userAta = (0, spl_token_1.getAssociatedTokenAddressSync)(mint, user, false, tokenProgram);
|
|
141
142
|
const eventAuthority = PumpFunService.getEventAuthorityPda();
|
|
142
143
|
const feeConfig = PumpFunService.getFeeConfigPda();
|
|
144
|
+
const userVolumeAccumulator = PumpFunService.getUserVolumeAccumulatorPda(user);
|
|
143
145
|
const keys = [
|
|
144
146
|
{ pubkey: global, isSigner: false, isWritable: false },
|
|
145
147
|
{ pubkey: feeRecipient, isSigner: false, isWritable: true },
|
|
@@ -156,6 +158,10 @@ class PumpFunService {
|
|
|
156
158
|
{ pubkey: feeConfig, isSigner: false, isWritable: false },
|
|
157
159
|
{ pubkey: PumpFunService.feeProgram, isSigner: false, isWritable: false },
|
|
158
160
|
];
|
|
161
|
+
if (isCashbackCoin) {
|
|
162
|
+
keys.push({ pubkey: userVolumeAccumulator, isSigner: false, isWritable: true });
|
|
163
|
+
}
|
|
164
|
+
keys.push({ pubkey: bondingCurveV2, isSigner: false, isWritable: false });
|
|
159
165
|
const data = Buffer.concat([
|
|
160
166
|
PumpFunService.sellDiscriminator,
|
|
161
167
|
amount.toArrayLike(Buffer, 'le', 8),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pump-fun.service.js","sourceRoot":"","sources":["../../../../src/direct-pools/pump-fun/txn-builder/pump-fun.service.ts"],"names":[],"mappings":";;;AAAA,6CAMyB;AACzB,iDAO2B;AAC3B,mFAAwE;AAGxE,MAAa,cAAc;IAqBzB,gBAAe,CAAC;IAEhB;;OAEG;IACH,MAAM,CAAC,YAAY;QACjB,MAAM,CAAC,GAAG,CAAC,GAAG,mBAAS,CAAC,sBAAsB,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QACnF,OAAO,GAAG,CAAC;IACb,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,kBAAkB,CAAC,IAAe;QACvC,MAAM,CAAC,GAAG,CAAC,GAAG,mBAAS,CAAC,sBAAsB,CAC5C,CAAC,IAAI,CAAC,iBAAiB,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,EACzC,IAAI,CAAC,SAAS,CACf,CAAC;QACF,OAAO,GAAG,CAAC;IACb,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,oBAAoB;QACzB,MAAM,CAAC,GAAG,CAAC,GAAG,mBAAS,CAAC,sBAAsB,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QAC3F,OAAO,GAAG,CAAC;IACb,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,kBAAkB,CAAC,OAAkB;QAC1C,MAAM,CAAC,GAAG,CAAC,GAAG,mBAAS,CAAC,sBAAsB,CAC5C,CAAC,IAAI,CAAC,iBAAiB,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC,EAC5C,IAAI,CAAC,SAAS,CACf,CAAC;QACF,OAAO,GAAG,CAAC;IACb,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,6BAA6B;QAClC,MAAM,CAAC,GAAG,CAAC,GAAG,mBAAS,CAAC,sBAAsB,CAC5C,CAAC,IAAI,CAAC,4BAA4B,CAAC,EACnC,IAAI,CAAC,SAAS,CACf,CAAC;QACF,OAAO,GAAG,CAAC;IACb,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,2BAA2B,CAAC,IAAe;QAChD,MAAM,CAAC,GAAG,CAAC,GAAG,mBAAS,CAAC,sBAAsB,CAC5C,CAAC,IAAI,CAAC,0BAA0B,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,EAClD,IAAI,CAAC,SAAS,CACf,CAAC;QACF,OAAO,GAAG,CAAC;IACb,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,eAAe;QACpB,MAAM,qBAAqB,GAAG,MAAM,CAAC,IAAI,CAAC;YACxC,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG;YACzF,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG;SACvD,CAAC,CAAC;QACH,MAAM,CAAC,GAAG,CAAC,GAAG,mBAAS,CAAC,sBAAsB,CAC5C,CAAC,IAAI,CAAC,cAAc,EAAE,qBAAqB,CAAC,EAC5C,IAAI,CAAC,UAAU,CAChB,CAAC;QACF,OAAO,GAAG,CAAC;IACb,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,oBAAoB,CAAC,MAAyB;QAClD,MAAM,EACJ,IAAI,EACJ,IAAI,EACJ,MAAM,EACN,UAAU,EACV,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,SAAS,EACT,eAAe,GAAG,KAAK,EACvB,YAAY,GAAG,4BAAgB,
|
|
1
|
+
{"version":3,"file":"pump-fun.service.js","sourceRoot":"","sources":["../../../../src/direct-pools/pump-fun/txn-builder/pump-fun.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,6 +11,7 @@ export interface IPumpFunBuyParams {
|
|
|
11
11
|
blockHash: string;
|
|
12
12
|
wrapOrUnwrapSol?: boolean;
|
|
13
13
|
tokenProgram?: PublicKey;
|
|
14
|
+
bondingCurveV2: PublicKey;
|
|
14
15
|
}
|
|
15
16
|
export interface IPumpFunSellParams {
|
|
16
17
|
mint: PublicKey;
|
|
@@ -22,11 +23,14 @@ export interface IPumpFunSellParams {
|
|
|
22
23
|
blockHash: string;
|
|
23
24
|
wrapOrUnwrapSol?: boolean;
|
|
24
25
|
tokenProgram?: PublicKey;
|
|
26
|
+
bondingCurveV2: PublicKey;
|
|
27
|
+
isCashbackCoin: boolean;
|
|
25
28
|
}
|
|
26
29
|
export interface IPumpSwapAmmBuyParams {
|
|
27
30
|
poolAddress: PublicKey;
|
|
28
31
|
baseMint: PublicKey;
|
|
29
32
|
quoteMint: PublicKey;
|
|
33
|
+
poolV2: PublicKey;
|
|
30
34
|
user: PublicKey;
|
|
31
35
|
protocolFeeRecipient: PublicKey;
|
|
32
36
|
creatorVaultAuthority: PublicKey;
|
|
@@ -37,11 +41,13 @@ export interface IPumpSwapAmmBuyParams {
|
|
|
37
41
|
wrapOrUnwrapSol?: boolean;
|
|
38
42
|
baseTokenProgram?: PublicKey;
|
|
39
43
|
quoteTokenProgram?: PublicKey;
|
|
44
|
+
isCashbackCoin: boolean;
|
|
40
45
|
}
|
|
41
46
|
export interface IPumpSwapAmmSellParams {
|
|
42
47
|
poolAddress: PublicKey;
|
|
43
48
|
baseMint: PublicKey;
|
|
44
49
|
quoteMint: PublicKey;
|
|
50
|
+
poolV2: PublicKey;
|
|
45
51
|
user: PublicKey;
|
|
46
52
|
protocolFeeRecipient: PublicKey;
|
|
47
53
|
creatorVaultAuthority: PublicKey;
|
|
@@ -51,5 +57,6 @@ export interface IPumpSwapAmmSellParams {
|
|
|
51
57
|
wrapOrUnwrapSol?: boolean;
|
|
52
58
|
baseTokenProgram?: PublicKey;
|
|
53
59
|
quoteTokenProgram?: PublicKey;
|
|
60
|
+
isCashbackCoin: boolean;
|
|
54
61
|
}
|
|
55
62
|
//# sourceMappingURL=pump-fun.types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pump-fun.types.d.ts","sourceRoot":"","sources":["../../../../src/direct-pools/pump-fun/txn-builder/pump-fun.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,MAAM,OAAO,CAAC;AAGvB,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,SAAS,CAAC;IAChB,IAAI,EAAE,SAAS,CAAC;IAChB,YAAY,EAAE,SAAS,CAAC;IACxB,YAAY,EAAE,SAAS,CAAC;IACxB,MAAM,EAAE,EAAE,CAAC;IACX,UAAU,EAAE,EAAE,CAAC;IACf,WAAW,EAAE,OAAO,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,YAAY,CAAC,EAAE,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"pump-fun.types.d.ts","sourceRoot":"","sources":["../../../../src/direct-pools/pump-fun/txn-builder/pump-fun.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,MAAM,OAAO,CAAC;AAGvB,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,SAAS,CAAC;IAChB,IAAI,EAAE,SAAS,CAAC;IAChB,YAAY,EAAE,SAAS,CAAC;IACxB,YAAY,EAAE,SAAS,CAAC;IACxB,MAAM,EAAE,EAAE,CAAC;IACX,UAAU,EAAE,EAAE,CAAC;IACf,WAAW,EAAE,OAAO,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,YAAY,CAAC,EAAE,SAAS,CAAC;IACzB,cAAc,EAAE,SAAS,CAAC;CAC3B;AAED,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,SAAS,CAAC;IAChB,IAAI,EAAE,SAAS,CAAC;IAChB,YAAY,EAAE,SAAS,CAAC;IACxB,YAAY,EAAE,SAAS,CAAC;IACxB,MAAM,EAAE,EAAE,CAAC;IACX,YAAY,EAAE,EAAE,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,YAAY,CAAC,EAAE,SAAS,CAAC;IACzB,cAAc,EAAE,SAAS,CAAC;IAC1B,cAAc,EAAE,OAAO,CAAC;CACzB;AAGD,MAAM,WAAW,qBAAqB;IACpC,WAAW,EAAE,SAAS,CAAC;IACvB,QAAQ,EAAE,SAAS,CAAC;IACpB,SAAS,EAAE,SAAS,CAAC;IACrB,MAAM,EAAE,SAAS,CAAC;IAClB,IAAI,EAAE,SAAS,CAAC;IAChB,oBAAoB,EAAE,SAAS,CAAC;IAChC,qBAAqB,EAAE,SAAS,CAAC;IACjC,aAAa,EAAE,EAAE,CAAC;IAClB,gBAAgB,EAAE,EAAE,CAAC;IACrB,WAAW,EAAE,OAAO,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,gBAAgB,CAAC,EAAE,SAAS,CAAC;IAC7B,iBAAiB,CAAC,EAAE,SAAS,CAAC;IAC9B,cAAc,EAAE,OAAO,CAAC;CACzB;AAED,MAAM,WAAW,sBAAsB;IACrC,WAAW,EAAE,SAAS,CAAC;IACvB,QAAQ,EAAE,SAAS,CAAC;IACpB,SAAS,EAAE,SAAS,CAAC;IACrB,MAAM,EAAE,SAAS,CAAC;IAClB,IAAI,EAAE,SAAS,CAAC;IAChB,oBAAoB,EAAE,SAAS,CAAC;IAChC,qBAAqB,EAAE,SAAS,CAAC;IACjC,YAAY,EAAE,EAAE,CAAC;IACjB,iBAAiB,EAAE,EAAE,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,gBAAgB,CAAC,EAAE,SAAS,CAAC;IAC7B,iBAAiB,CAAC,EAAE,SAAS,CAAC;IAC9B,cAAc,EAAE,OAAO,CAAC;CACzB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pump-swap-amm.service.d.ts","sourceRoot":"","sources":["../../../../src/direct-pools/pump-fun/txn-builder/pump-swap-amm.service.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EAGT,oBAAoB,EAErB,MAAM,iBAAiB,CAAC;AAWzB,OAAO,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAEjF,qBAAa,kBAAkB;IAC7B,gBAAuB,SAAS,YAAgE;IAChG,gBAAuB,UAAU,YAAgE;IAEjG,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAwC;IAC3E,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAA+B;IAChE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,mBAAmB,CAA4C;IACvF,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,4BAA4B,CAGlD;IACF,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,0BAA0B,CAGhD;IACF,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAqC;IAE3E,MAAM,CAAC,QAAQ,CAAC,gBAAgB,sBAAmD;IACnF,MAAM,CAAC,QAAQ,CAAC,iBAAiB,sBAAsD;;IAIvF;;OAEG;IACH,MAAM,CAAC,kBAAkB,IAAI,SAAS;IAKtC;;OAEG;IACH,MAAM,CAAC,UAAU,CACf,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,SAAS,EAClB,QAAQ,EAAE,SAAS,EACnB,SAAS,EAAE,SAAS,GACnB,SAAS;IAWZ;;OAEG;IACH,MAAM,CAAC,oBAAoB,IAAI,SAAS;IAKxC;;OAEG;IACH,MAAM,CAAC,6BAA6B,IAAI,SAAS;IAQjD;;OAEG;IACH,MAAM,CAAC,2BAA2B,CAAC,IAAI,EAAE,SAAS,GAAG,SAAS;IAQ9D;;OAEG;IACH,MAAM,CAAC,eAAe,IAAI,SAAS;IAQnC;;OAEG;IACG,oBAAoB,CAAC,MAAM,EAAE,qBAAqB,GAAG,OAAO,CAAC,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"pump-swap-amm.service.d.ts","sourceRoot":"","sources":["../../../../src/direct-pools/pump-fun/txn-builder/pump-swap-amm.service.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EAGT,oBAAoB,EAErB,MAAM,iBAAiB,CAAC;AAWzB,OAAO,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAEjF,qBAAa,kBAAkB;IAC7B,gBAAuB,SAAS,YAAgE;IAChG,gBAAuB,UAAU,YAAgE;IAEjG,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAwC;IAC3E,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAA+B;IAChE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,mBAAmB,CAA4C;IACvF,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,4BAA4B,CAGlD;IACF,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,0BAA0B,CAGhD;IACF,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAqC;IAE3E,MAAM,CAAC,QAAQ,CAAC,gBAAgB,sBAAmD;IACnF,MAAM,CAAC,QAAQ,CAAC,iBAAiB,sBAAsD;;IAIvF;;OAEG;IACH,MAAM,CAAC,kBAAkB,IAAI,SAAS;IAKtC;;OAEG;IACH,MAAM,CAAC,UAAU,CACf,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,SAAS,EAClB,QAAQ,EAAE,SAAS,EACnB,SAAS,EAAE,SAAS,GACnB,SAAS;IAWZ;;OAEG;IACH,MAAM,CAAC,oBAAoB,IAAI,SAAS;IAKxC;;OAEG;IACH,MAAM,CAAC,6BAA6B,IAAI,SAAS;IAQjD;;OAEG;IACH,MAAM,CAAC,2BAA2B,CAAC,IAAI,EAAE,SAAS,GAAG,SAAS;IAQ9D;;OAEG;IACH,MAAM,CAAC,eAAe,IAAI,SAAS;IAQnC;;OAEG;IACG,oBAAoB,CAAC,MAAM,EAAE,qBAAqB,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAiKxF;;OAEG;IACG,qBAAqB,CAAC,MAAM,EAAE,sBAAsB,GAAG,OAAO,CAAC,oBAAoB,CAAC;CAiK3F"}
|
|
@@ -54,7 +54,7 @@ class PumpSwapAmmService {
|
|
|
54
54
|
* Create buy instruction
|
|
55
55
|
*/
|
|
56
56
|
async createBuyInstruction(params) {
|
|
57
|
-
const { user, poolAddress, baseMint, quoteMint, baseAmountOut, maxQuoteAmountIn, protocolFeeRecipient, creatorVaultAuthority, blockHash, trackVolume, wrapOrUnwrapSol = false, baseTokenProgram = spl_token_1.TOKEN_PROGRAM_ID, quoteTokenProgram = spl_token_1.TOKEN_PROGRAM_ID, } = params;
|
|
57
|
+
const { user, poolAddress, poolV2, baseMint, quoteMint, baseAmountOut, maxQuoteAmountIn, protocolFeeRecipient, creatorVaultAuthority, blockHash, trackVolume, wrapOrUnwrapSol = false, baseTokenProgram = spl_token_1.TOKEN_PROGRAM_ID, quoteTokenProgram = spl_token_1.TOKEN_PROGRAM_ID, isCashbackCoin, } = params;
|
|
58
58
|
const instructions = [];
|
|
59
59
|
const globalConfig = PumpSwapAmmService.getGlobalConfigPda();
|
|
60
60
|
const eventAuthority = PumpSwapAmmService.getEventAuthorityPda();
|
|
@@ -83,6 +83,7 @@ class PumpSwapAmmService {
|
|
|
83
83
|
const quoteAtaIx = (0, spl_token_1.createAssociatedTokenAccountIdempotentInstruction)(user, userQuoteTokenAccount, user, quoteMint, quoteTokenProgram);
|
|
84
84
|
instructions.push(quoteAtaIx);
|
|
85
85
|
}
|
|
86
|
+
const userVolumeAccumulatorWSOLATA = (0, spl_token_1.getAssociatedTokenAddressSync)(spl_token_1.NATIVE_MINT, userVolumeAccumulator, true);
|
|
86
87
|
const keys = [
|
|
87
88
|
{ pubkey: poolAddress, isSigner: false, isWritable: true },
|
|
88
89
|
{ pubkey: user, isSigner: true, isWritable: true },
|
|
@@ -112,6 +113,10 @@ class PumpSwapAmmService {
|
|
|
112
113
|
{ pubkey: feeConfig, isSigner: false, isWritable: false },
|
|
113
114
|
{ pubkey: PumpSwapAmmService.feeProgram, isSigner: false, isWritable: false },
|
|
114
115
|
];
|
|
116
|
+
if (isCashbackCoin) {
|
|
117
|
+
keys.push({ pubkey: userVolumeAccumulatorWSOLATA, isSigner: false, isWritable: true });
|
|
118
|
+
}
|
|
119
|
+
keys.push({ pubkey: poolV2, isSigner: false, isWritable: false });
|
|
115
120
|
const data = Buffer.concat([
|
|
116
121
|
PumpSwapAmmService.buyDiscriminator,
|
|
117
122
|
baseAmountOut.toArrayLike(Buffer, 'le', 8),
|
|
@@ -134,7 +139,7 @@ class PumpSwapAmmService {
|
|
|
134
139
|
* Create sell instruction
|
|
135
140
|
*/
|
|
136
141
|
async createSellInstruction(params) {
|
|
137
|
-
const { user, poolAddress, baseMint, quoteMint, baseAmountIn, minQuoteAmountOut, protocolFeeRecipient, creatorVaultAuthority, blockHash, wrapOrUnwrapSol = false, baseTokenProgram = spl_token_1.TOKEN_PROGRAM_ID, quoteTokenProgram = spl_token_1.TOKEN_PROGRAM_ID, } = params;
|
|
142
|
+
const { user, poolAddress, poolV2, baseMint, quoteMint, baseAmountIn, minQuoteAmountOut, protocolFeeRecipient, creatorVaultAuthority, blockHash, wrapOrUnwrapSol = false, baseTokenProgram = spl_token_1.TOKEN_PROGRAM_ID, quoteTokenProgram = spl_token_1.TOKEN_PROGRAM_ID, isCashbackCoin, } = params;
|
|
138
143
|
const instructions = [];
|
|
139
144
|
const globalConfig = PumpSwapAmmService.getGlobalConfigPda();
|
|
140
145
|
const eventAuthority = PumpSwapAmmService.getEventAuthorityPda();
|
|
@@ -161,6 +166,8 @@ class PumpSwapAmmService {
|
|
|
161
166
|
const quoteAtaIx = (0, spl_token_1.createAssociatedTokenAccountIdempotentInstruction)(user, userQuoteTokenAccount, user, quoteMint, quoteTokenProgram);
|
|
162
167
|
instructions.push(quoteAtaIx);
|
|
163
168
|
}
|
|
169
|
+
const userVolumeAccumulator = PumpSwapAmmService.getUserVolumeAccumulatorPda(user);
|
|
170
|
+
const userVolumeAccumulatorWSOLATA = (0, spl_token_1.getAssociatedTokenAddressSync)(spl_token_1.NATIVE_MINT, userVolumeAccumulator, true);
|
|
164
171
|
const keys = [
|
|
165
172
|
{ pubkey: poolAddress, isSigner: false, isWritable: true },
|
|
166
173
|
{ pubkey: user, isSigner: true, isWritable: true },
|
|
@@ -188,6 +195,11 @@ class PumpSwapAmmService {
|
|
|
188
195
|
{ pubkey: feeConfig, isSigner: false, isWritable: false },
|
|
189
196
|
{ pubkey: PumpSwapAmmService.feeProgram, isSigner: false, isWritable: false },
|
|
190
197
|
];
|
|
198
|
+
if (isCashbackCoin) {
|
|
199
|
+
keys.push({ pubkey: userVolumeAccumulatorWSOLATA, isSigner: false, isWritable: true });
|
|
200
|
+
keys.push({ pubkey: userVolumeAccumulator, isSigner: false, isWritable: true });
|
|
201
|
+
}
|
|
202
|
+
keys.push({ pubkey: poolV2, isSigner: false, isWritable: false });
|
|
191
203
|
const data = Buffer.concat([
|
|
192
204
|
PumpSwapAmmService.sellDiscriminator,
|
|
193
205
|
baseAmountIn.toArrayLike(Buffer, 'le', 8),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pump-swap-amm.service.js","sourceRoot":"","sources":["../../../../src/direct-pools/pump-fun/txn-builder/pump-swap-amm.service.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"pump-swap-amm.service.js","sourceRoot":"","sources":["../../../../src/direct-pools/pump-fun/txn-builder/pump-swap-amm.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"evm-transaction-safety.service.d.ts","sourceRoot":"","sources":["../../../src/lib/evm-transaction-safety/evm-transaction-safety.service.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mCAAmC,EACnC,+BAA+B,EAC/B,4BAA4B,EAC7B,MAAM,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"evm-transaction-safety.service.d.ts","sourceRoot":"","sources":["../../../src/lib/evm-transaction-safety/evm-transaction-safety.service.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mCAAmC,EACnC,+BAA+B,EAC/B,4BAA4B,EAC7B,MAAM,gCAAgC,CAAC;AAIxC;;;;GAIG;AACH,qBAAa,2BAA2B;IACtC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAqB;IACxD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAgD;IACpF,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,yBAAyB,CAAgD;IACjG,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,iBAAiB,CAAU;IAEnD,OAAO,CAAC,MAAM,CAAC,aAAa;IAa5B,OAAO,CAAC,MAAM,CAAC,4BAA4B;IAqB3C,OAAO,CAAC,MAAM,CAAC,+BAA+B;IA8B9C,OAAO,CAAC,MAAM,CAAC,iBAAiB;IAIhC,OAAO,CAAC,MAAM,CAAC,iBAAiB;IAWhC,OAAO,CAAC,MAAM,CAAC,6BAA6B;IAiB5C,OAAO,CAAC,MAAM,CAAC,iBAAiB;IAIhC,OAAO,CAAC,MAAM,CAAC,2BAA2B;IAU1C;;OAEG;IACH,MAAM,CAAC,sBAAsB,CAAC,MAAM,EAAE,4BAA4B,GAAG,IAAI;IAiBzE;;OAEG;IACH,MAAM,CAAC,yBAAyB,CAAC,MAAM,EAAE,+BAA+B,GAAG,IAAI;IAoF/E;;OAEG;IACH,MAAM,CAAC,6BAA6B,CAAC,MAAM,EAAE,mCAAmC,GAAG,IAAI;CA8FxF"}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.EvmTransactionSafetyService = void 0;
|
|
4
4
|
const wrapped_native_1 = require("../../utils/wrapped-native");
|
|
5
|
+
const is_native_1 = require("../../utils/is-native");
|
|
5
6
|
/**
|
|
6
7
|
* Generic calldata fuzzing and transaction safety checks for EVM-based chains.
|
|
7
8
|
* This service can be extended to implement more specific safety checks on a
|
|
@@ -18,9 +19,12 @@ class EvmTransactionSafetyService {
|
|
|
18
19
|
}
|
|
19
20
|
return parsedValue;
|
|
20
21
|
}
|
|
21
|
-
static _normalizeAndValidateAddress(address, fieldName) {
|
|
22
|
+
static _normalizeAndValidateAddress(address, fieldName, options) {
|
|
22
23
|
const normalizedAddress = address.toLowerCase();
|
|
23
24
|
if (!/^0x[0-9a-f]{40}$/.test(normalizedAddress)) {
|
|
25
|
+
if (options?.allowNonEvm) {
|
|
26
|
+
return null;
|
|
27
|
+
}
|
|
24
28
|
throw new Error(`${fieldName} must be a valid EVM address`);
|
|
25
29
|
}
|
|
26
30
|
if (normalizedAddress === EvmTransactionSafetyService._zeroAddress) {
|
|
@@ -80,7 +84,9 @@ class EvmTransactionSafetyService {
|
|
|
80
84
|
* Wrapper function for both native and ERC20 input transactions
|
|
81
85
|
*/
|
|
82
86
|
static validateEvmTransaction(params) {
|
|
83
|
-
const hasTokenIn = 'tokenIn' in params &&
|
|
87
|
+
const hasTokenIn = 'tokenIn' in params &&
|
|
88
|
+
params.tokenIn !== undefined &&
|
|
89
|
+
!(0, is_native_1.isEvmNativePlaceholder)(params.tokenIn);
|
|
84
90
|
if (hasTokenIn) {
|
|
85
91
|
EvmTransactionSafetyService.validateErc20InputTransaction(params);
|
|
86
92
|
}
|
|
@@ -92,10 +98,13 @@ class EvmTransactionSafetyService {
|
|
|
92
98
|
* Validates the calldata for a native EVM transaction.
|
|
93
99
|
*/
|
|
94
100
|
static validateNativeTransaction(params) {
|
|
101
|
+
const isStrictCalldataValidation = (params.calldataValidationMode ?? 'strict') === 'strict';
|
|
95
102
|
EvmTransactionSafetyService._normalizeAndValidateAddress(params.from, 'From address');
|
|
96
|
-
const stdRecipient = EvmTransactionSafetyService._normalizeAndValidateAddress(params.recipient, 'Recipient address');
|
|
103
|
+
const stdRecipient = EvmTransactionSafetyService._normalizeAndValidateAddress(params.recipient, 'Recipient address', { allowNonEvm: params.allowNonEvmRecipient });
|
|
97
104
|
EvmTransactionSafetyService._normalizeAndValidateAddress(params.to, 'To address');
|
|
98
|
-
const stdTokenOut =
|
|
105
|
+
const stdTokenOut = isStrictCalldataValidation
|
|
106
|
+
? EvmTransactionSafetyService._resolveTokenAddressForCalldata(params.tokenOut, params.network, 'TokenOut address')
|
|
107
|
+
: null;
|
|
99
108
|
const amountIn = EvmTransactionSafetyService._parseUint256(params.amountIn, 'amountIn');
|
|
100
109
|
const minAmountOut = EvmTransactionSafetyService._parseUint256(params.minAmountOut, 'minAmountOut');
|
|
101
110
|
const value = EvmTransactionSafetyService._parseUint256(params.value, 'value');
|
|
@@ -116,28 +125,37 @@ class EvmTransactionSafetyService {
|
|
|
116
125
|
* Fuzz calldata to validate that minAmountOut is present in the calldata
|
|
117
126
|
*/
|
|
118
127
|
const calldataWords = EvmTransactionSafetyService._getCalldataWords(normalizedCalldata);
|
|
119
|
-
|
|
120
|
-
|
|
128
|
+
if (isStrictCalldataValidation) {
|
|
129
|
+
const paddedMinAmountOutHex = EvmTransactionSafetyService._toAbiUint256Word(minAmountOut);
|
|
130
|
+
EvmTransactionSafetyService._assertCalldataContainsWord(calldataWords, paddedMinAmountOutHex, 'minAmountOut');
|
|
131
|
+
}
|
|
121
132
|
/**
|
|
122
|
-
* Check that calldata includes the recipient address
|
|
133
|
+
* Check that calldata includes the recipient address (skip for non-EVM recipients in bridge txs)
|
|
123
134
|
*/
|
|
124
|
-
|
|
125
|
-
|
|
135
|
+
if (isStrictCalldataValidation && stdRecipient) {
|
|
136
|
+
const recipientWord = EvmTransactionSafetyService._toAbiAddressWord(stdRecipient);
|
|
137
|
+
EvmTransactionSafetyService._assertCalldataContainsWord(calldataWords, recipientWord, 'recipient address');
|
|
138
|
+
}
|
|
126
139
|
/**
|
|
127
140
|
* Check that calldata includes the tokenOut address
|
|
128
141
|
*/
|
|
129
|
-
|
|
130
|
-
|
|
142
|
+
if (isStrictCalldataValidation) {
|
|
143
|
+
const tokenOutWord = EvmTransactionSafetyService._toAbiAddressWord(stdTokenOut);
|
|
144
|
+
EvmTransactionSafetyService._assertCalldataContainsWord(calldataWords, tokenOutWord, 'tokenOut address');
|
|
145
|
+
}
|
|
131
146
|
}
|
|
132
147
|
/**
|
|
133
148
|
* Validates calldata for an ERC20-input EVM transaction.
|
|
134
149
|
*/
|
|
135
150
|
static validateErc20InputTransaction(params) {
|
|
151
|
+
const isStrictCalldataValidation = (params.calldataValidationMode ?? 'strict') === 'strict';
|
|
136
152
|
EvmTransactionSafetyService._normalizeAndValidateAddress(params.from, 'From address');
|
|
137
|
-
const stdRecipient = EvmTransactionSafetyService._normalizeAndValidateAddress(params.recipient, 'Recipient address');
|
|
153
|
+
const stdRecipient = EvmTransactionSafetyService._normalizeAndValidateAddress(params.recipient, 'Recipient address', { allowNonEvm: params.allowNonEvmRecipient });
|
|
138
154
|
EvmTransactionSafetyService._normalizeAndValidateAddress(params.to, 'To address');
|
|
139
155
|
const stdTokenIn = EvmTransactionSafetyService._resolveTokenAddressForCalldata(params.tokenIn, params.network, 'TokenIn address');
|
|
140
|
-
const stdTokenOut =
|
|
156
|
+
const stdTokenOut = isStrictCalldataValidation
|
|
157
|
+
? EvmTransactionSafetyService._resolveTokenAddressForCalldata(params.tokenOut, params.network, 'TokenOut address')
|
|
158
|
+
: null;
|
|
141
159
|
const amountIn = EvmTransactionSafetyService._parseUint256(params.amountIn, 'amountIn');
|
|
142
160
|
const minAmountOut = EvmTransactionSafetyService._parseUint256(params.minAmountOut, 'minAmountOut');
|
|
143
161
|
const value = EvmTransactionSafetyService._parseUint256(params.value, 'value');
|
|
@@ -159,18 +177,24 @@ class EvmTransactionSafetyService {
|
|
|
159
177
|
* Check that calldata includes amountIn and minAmountOut as uint256 words
|
|
160
178
|
*/
|
|
161
179
|
const amountInWord = EvmTransactionSafetyService._toAbiUint256Word(amountIn);
|
|
162
|
-
const minAmountOutWord = EvmTransactionSafetyService._toAbiUint256Word(minAmountOut);
|
|
163
180
|
EvmTransactionSafetyService._assertCalldataContainsWord(calldataWords, amountInWord, 'amountIn');
|
|
164
|
-
|
|
181
|
+
if (isStrictCalldataValidation) {
|
|
182
|
+
const minAmountOutWord = EvmTransactionSafetyService._toAbiUint256Word(minAmountOut);
|
|
183
|
+
EvmTransactionSafetyService._assertCalldataContainsWord(calldataWords, minAmountOutWord, 'minAmountOut');
|
|
184
|
+
}
|
|
165
185
|
/**
|
|
166
186
|
* Check that calldata includes recipient, tokenIn and tokenOut as ABI address words
|
|
167
187
|
*/
|
|
168
|
-
const recipientWord = EvmTransactionSafetyService._toAbiAddressWord(stdRecipient);
|
|
169
188
|
const tokenInWord = EvmTransactionSafetyService._toAbiAddressWord(stdTokenIn);
|
|
170
|
-
|
|
171
|
-
|
|
189
|
+
if (isStrictCalldataValidation && stdRecipient) {
|
|
190
|
+
const recipientWord = EvmTransactionSafetyService._toAbiAddressWord(stdRecipient);
|
|
191
|
+
EvmTransactionSafetyService._assertCalldataContainsWord(calldataWords, recipientWord, 'recipient address');
|
|
192
|
+
}
|
|
172
193
|
EvmTransactionSafetyService._assertCalldataContainsWord(calldataWords, tokenInWord, 'tokenIn address');
|
|
173
|
-
|
|
194
|
+
if (isStrictCalldataValidation) {
|
|
195
|
+
const tokenOutWord = EvmTransactionSafetyService._toAbiAddressWord(stdTokenOut);
|
|
196
|
+
EvmTransactionSafetyService._assertCalldataContainsWord(calldataWords, tokenOutWord, 'tokenOut address');
|
|
197
|
+
}
|
|
174
198
|
}
|
|
175
199
|
}
|
|
176
200
|
exports.EvmTransactionSafetyService = EvmTransactionSafetyService;
|