genius-intents 0.22.1-develop.0 → 0.23.1-develop.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/CHANGELOG.md +49 -0
- package/dist/direct-pools/pool-info/pool-info-orchestrator.service.d.ts.map +1 -1
- package/dist/direct-pools/pool-info/pool-info-orchestrator.service.js +2 -0
- package/dist/direct-pools/pool-info/pool-info-orchestrator.service.js.map +1 -1
- package/dist/lib/dex/evm-direct-pool/evm-direct-pool.service.d.ts +5 -10
- package/dist/lib/dex/evm-direct-pool/evm-direct-pool.service.d.ts.map +1 -1
- package/dist/lib/dex/evm-direct-pool/evm-direct-pool.service.js +104 -56
- package/dist/lib/dex/evm-direct-pool/evm-direct-pool.service.js.map +1 -1
- package/dist/lib/dex/evm-direct-pool/evm-direct-pool.types.d.ts +10 -3
- package/dist/lib/dex/evm-direct-pool/evm-direct-pool.types.d.ts.map +1 -1
- package/dist/lib/genius-swap-router/genius-swap-router.abi.d.ts +3 -0
- package/dist/lib/genius-swap-router/genius-swap-router.abi.d.ts.map +1 -0
- package/dist/lib/genius-swap-router/genius-swap-router.abi.js +437 -0
- package/dist/lib/genius-swap-router/genius-swap-router.abi.js.map +1 -0
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,52 @@
|
|
|
1
|
+
## [0.23.1-develop.0] - 2025-11-19 (Beta)
|
|
2
|
+
|
|
3
|
+
🧪 **This is a beta release for testing purposes.**
|
|
4
|
+
|
|
5
|
+
### [0.23.1-develop.0](https://github.com/Genius-Foundation/genius-intents/compare/v0.23.0...v0.23.1-develop.0) (2025-11-19)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
### Documentation
|
|
9
|
+
|
|
10
|
+
* update CHANGELOG.md for v0.23.0 (beta) ([d865369](https://github.com/Genius-Foundation/genius-intents/commit/d865369e54951277679f39deec9038f053f33829))
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
⚠️ **Beta Release Notes:**
|
|
15
|
+
- This version is intended for testing and development
|
|
16
|
+
- May contain experimental features
|
|
17
|
+
- Not recommended for production use
|
|
18
|
+
- Feedback and bug reports are welcome
|
|
19
|
+
|
|
20
|
+
---
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
## [0.23.0] - 2025-11-19 (Beta)
|
|
24
|
+
|
|
25
|
+
🧪 **This is a beta release for testing purposes.**
|
|
26
|
+
|
|
27
|
+
## [0.23.0](https://github.com/Genius-Foundation/genius-intents/compare/v0.22.0...v0.23.0) (2025-11-19)
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
### Features
|
|
31
|
+
|
|
32
|
+
* reactivates whirlpools ([#165](https://github.com/Genius-Foundation/genius-intents/issues/165)) ([88e1d90](https://github.com/Genius-Foundation/genius-intents/commit/88e1d90ee6c72ac715a7e12528a16aef71d932f9))
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
### Documentation
|
|
36
|
+
|
|
37
|
+
* update CHANGELOG.md for v0.22.1-develop.0 (beta) ([4bd2559](https://github.com/Genius-Foundation/genius-intents/commit/4bd2559db88ccad878fea072acbfa979f651b56d))
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
⚠️ **Beta Release Notes:**
|
|
42
|
+
- This version is intended for testing and development
|
|
43
|
+
- May contain experimental features
|
|
44
|
+
- Not recommended for production use
|
|
45
|
+
- Feedback and bug reports are welcome
|
|
46
|
+
|
|
47
|
+
---
|
|
48
|
+
|
|
49
|
+
|
|
1
50
|
## [0.22.1-develop.0] - 2025-11-18 (Beta)
|
|
2
51
|
|
|
3
52
|
🧪 **This is a beta release for testing purposes.**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pool-info-orchestrator.service.d.ts","sourceRoot":"","sources":["../../../src/direct-pools/pool-info/pool-info-orchestrator.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AAQrD,OAAO,EACL,mBAAmB,EACnB,oBAAoB,EACpB,oBAAoB,EACpB,yBAAyB,EAC1B,MAAM,8CAA8C,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,4CAA4C,CAAC;AACjG,OAAO,EACL,sBAAsB,EACtB,sBAAsB,EACtB,mBAAmB,EACnB,oBAAoB,EACrB,MAAM,8CAA8C,CAAC;AAKtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,oDAAoD,CAAC;
|
|
1
|
+
{"version":3,"file":"pool-info-orchestrator.service.d.ts","sourceRoot":"","sources":["../../../src/direct-pools/pool-info/pool-info-orchestrator.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AAQrD,OAAO,EACL,mBAAmB,EACnB,oBAAoB,EACpB,oBAAoB,EACpB,yBAAyB,EAC1B,MAAM,8CAA8C,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,4CAA4C,CAAC;AACjG,OAAO,EACL,sBAAsB,EACtB,sBAAsB,EACtB,mBAAmB,EACnB,oBAAoB,EACrB,MAAM,8CAA8C,CAAC;AAKtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,oDAAoD,CAAC;AAGzF,MAAM,MAAM,QAAQ,GAChB,mBAAmB,GACnB,oBAAoB,GACpB,oBAAoB,GACpB,yBAAyB,GACzB,gBAAgB,GAChB,iBAAiB,GACjB,oBAAoB,GACpB,sBAAsB,GACtB,sBAAsB,GACtB,mBAAmB,GACnB,mBAAmB,CAAC;AAMxB,qBAAa,oBAAoB;IAM7B,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IALpC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA4B;gBAGxD,UAAU,EAAE,UAAU,EACtB,OAAO,EAAE,OAAO,EACC,iBAAiB,EAAE,MAAM;IAiBtC,eAAe,CACnB,SAAS,EAAE,SAAS,EACpB,OAAO,EAAE,MAAM,EACf,aAAa,GAAE,MAAU,EACzB,gBAAgB,GAAE,MAAU,GAC3B,OAAO,CAAC,QAAQ,EAAE,CAAC;IAiBhB,qBAAqB,CACzB,YAAY,EAAE,MAAM,EACpB,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,SAAS,GACnB,OAAO,CAAC,QAAQ,EAAE,CAAC;YAyBR,UAAU;YASV,mBAAmB;CAKlC"}
|
|
@@ -13,6 +13,7 @@ const meteora_dlmm_pool_info_service_1 = require("../meteora/pool-info/meteora-d
|
|
|
13
13
|
const meteora_damm_v2_pool_info_service_1 = require("../meteora/pool-info/meteora-damm-v2-pool-info.service");
|
|
14
14
|
const meteora_damm_v1_pool_info_service_1 = require("../meteora/pool-info/meteora-damm-v1-pool-info.service");
|
|
15
15
|
const meteora_dbc_pool_info_service_1 = require("../meteora/pool-info/meteora-dbc-pool-info.service");
|
|
16
|
+
const whirlpools_pool_info_service_1 = require("../whirlpools/pool-info/whirlpools-pool-info.service");
|
|
16
17
|
class PoolInfoOrchestrator {
|
|
17
18
|
constructor(connection, raydium, _definedClientKey) {
|
|
18
19
|
this._definedClientKey = _definedClientKey;
|
|
@@ -27,6 +28,7 @@ class PoolInfoOrchestrator {
|
|
|
27
28
|
['meteora damm v1', new meteora_damm_v1_pool_info_service_1.MeteoraDammV1PoolInfo(connection)],
|
|
28
29
|
['pumpswap', new pump_swap_amm_pool_info_service_1.PumpSwapPoolInfo(connection)],
|
|
29
30
|
['pumpfun', new pump_fun_pool_info_service_1.PumpFunPoolInfo(connection)],
|
|
31
|
+
['orca', new whirlpools_pool_info_service_1.WhirlpoolsPoolInfo(connection)],
|
|
30
32
|
]);
|
|
31
33
|
}
|
|
32
34
|
async getAllPoolsInfo(tokenMint, network, minimumVolume = 0, minimumLiquidity = 0) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pool-info-orchestrator.service.js","sourceRoot":"","sources":["../../../src/direct-pools/pool-info/pool-info-orchestrator.service.ts"],"names":[],"mappings":";;;AAAA,6CAAwD;AAExD,yEAAkF;AAClF,sGAAwF;AACxF,wGAA0F;AAC1F,wGAA0F;AAC1F,kHAAoG;AACpG,iGAAmF;AACnF,2GAAyF;AAczF,wGAA0F;AAC1F,8GAA+F;AAC/F,8GAA+F;AAC/F,sGAAwF;
|
|
1
|
+
{"version":3,"file":"pool-info-orchestrator.service.js","sourceRoot":"","sources":["../../../src/direct-pools/pool-info/pool-info-orchestrator.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { GeniusIntentsSDKConfig } from '../../../types/sdk-config';
|
|
2
|
-
import { PriceResponse } from '../../../types/price-response';
|
|
3
1
|
import { EvmDirectPoolConfig } from './evm-direct-pool.types';
|
|
4
2
|
import { IIntentProtocol } from '../../../interfaces/intent-protocol';
|
|
3
|
+
import { GeniusIntentsSDKConfig } from '../../../types/sdk-config';
|
|
5
4
|
import { ChainIdEnum, ProtocolEnum } from '../../../types/enums';
|
|
6
5
|
import { IntentPriceParams } from '../../../types/price-params';
|
|
7
6
|
import { IntentQuoteParams } from '../../../types/quote-params';
|
|
7
|
+
import { PriceResponse } from '../../../types/price-response';
|
|
8
8
|
import { QuoteResponse } from '../../../types/quote-response';
|
|
9
9
|
import { SupportedEvmDexes } from '../pair-discovery';
|
|
10
10
|
export declare class EvmDirectPoolService implements IIntentProtocol {
|
|
@@ -23,14 +23,11 @@ export declare class EvmDirectPoolService implements IIntentProtocol {
|
|
|
23
23
|
readonly chains: ChainIdEnum[];
|
|
24
24
|
readonly protocols: IIntentProtocol[];
|
|
25
25
|
readonly supportedDexes: SupportedEvmDexes[];
|
|
26
|
-
/**
|
|
27
|
-
* Gas limit for native token transfers
|
|
28
|
-
*/
|
|
29
|
-
private _nativeTransferGasLimit;
|
|
30
26
|
/**
|
|
31
27
|
* Mapping of protocol to override parameter keys
|
|
32
28
|
*/
|
|
33
29
|
private _overrideKeys;
|
|
30
|
+
private readonly _geniusSwapRouterDeployments;
|
|
34
31
|
/**
|
|
35
32
|
* Optimized protocol and override key mappings for O(1) lookups
|
|
36
33
|
*/
|
|
@@ -64,9 +61,7 @@ export declare class EvmDirectPoolService implements IIntentProtocol {
|
|
|
64
61
|
private _getProtocolAndKey;
|
|
65
62
|
fetchPrice(params: IntentPriceParams): Promise<PriceResponse>;
|
|
66
63
|
fetchQuote(params: IntentQuoteParams): Promise<QuoteResponse>;
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
*/
|
|
70
|
-
private _buildFeeTransfer;
|
|
64
|
+
private _buildWrappedSwapCalldata;
|
|
65
|
+
private _buildApprovalTransaction;
|
|
71
66
|
}
|
|
72
67
|
//# sourceMappingURL=evm-direct-pool.service.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"evm-direct-pool.service.d.ts","sourceRoot":"","sources":["../../../../src/lib/dex/evm-direct-pool/evm-direct-pool.service.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"evm-direct-pool.service.d.ts","sourceRoot":"","sources":["../../../../src/lib/dex/evm-direct-pool/evm-direct-pool.service.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,mBAAmB,EAIpB,MAAM,yBAAyB,CAAC;AAKjC,OAAO,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AACtE,OAAO,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAG9D,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAI9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAMtD,qBAAa,oBAAqB,YAAW,eAAe;IAC1D;;OAEG;IACH,SAAgB,QAAQ,gCAAgC;IAExD;;OAEG;IACH,SAAgB,WAAW,QAAQ;IACnC,SAAgB,UAAU,SAAS;IAEnC;;OAEG;IACH,SAAgB,MAAM,EAAE,WAAW,EAAE,CAAC;IACtC,SAAgB,SAAS,EAAE,eAAe,EAAE,CAAC;IAC7C,SAAgB,cAAc,EAAE,iBAAiB,EAAE,CAAC;IAEpD;;OAEG;IACH,OAAO,CAAC,aAAa,CAOlB;IAEH,OAAO,CAAC,QAAQ,CAAC,4BAA4B,CAU3C;IAEF;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAkD;IAC/E,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAyC;gBAE7D,MAAM,CAAC,EAAE,sBAAsB,GAAG,mBAAmB;IA2B1D,eAAe,CAAC,CAAC,SAAS;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,EAAE,MAAM,EAAE;QAClE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;KACvB,GAAG,MAAM,IAAI,CAAC;IAMf;;OAEG;IACH,OAAO,CAAC,yBAAyB;IAiBjC;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAY5B;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAqD/B;;OAEG;IACH,OAAO,CAAC,yBAAyB;IAkBjC;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAiBb,UAAU,CAAC,MAAM,EAAE,iBAAiB,GAAG,OAAO,CAAC,aAAa,CAAC;IAW7D,UAAU,CAAC,MAAM,EAAE,iBAAiB,GAAG,OAAO,CAAC,aAAa,CAAC;IAoF1E,OAAO,CAAC,yBAAyB;IAkBjC,OAAO,CAAC,yBAAyB;CAuClC"}
|
|
@@ -2,14 +2,16 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.EvmDirectPoolService = void 0;
|
|
4
4
|
const viem_1 = require("viem");
|
|
5
|
+
const genius_swap_router_abi_1 = require("../../genius-swap-router/genius-swap-router.abi");
|
|
5
6
|
const logger_1 = require("../../../utils/logger");
|
|
6
|
-
const
|
|
7
|
-
const
|
|
7
|
+
const constants_1 = require("../../../utils/constants");
|
|
8
|
+
const enums_1 = require("../../../types/enums");
|
|
8
9
|
const v2_dex_1 = require("../../../protocols/v2-dex");
|
|
9
10
|
const v3_dex_1 = require("../../../protocols/v3-dex");
|
|
11
|
+
const algebra_1 = require("../../../protocols/algebra");
|
|
10
12
|
const ve33_1 = require("../../../protocols/ve33");
|
|
11
|
-
const enums_1 = require("../../../types/enums");
|
|
12
13
|
const is_native_1 = require("../../../utils/is-native");
|
|
14
|
+
const lfj_1 = require("../../../protocols/lfj");
|
|
13
15
|
let logger;
|
|
14
16
|
class EvmDirectPoolService {
|
|
15
17
|
constructor(config) {
|
|
@@ -22,10 +24,6 @@ class EvmDirectPoolService {
|
|
|
22
24
|
*/
|
|
23
25
|
this.singleChain = true;
|
|
24
26
|
this.multiChain = false;
|
|
25
|
-
/**
|
|
26
|
-
* Gas limit for native token transfers
|
|
27
|
-
*/
|
|
28
|
-
this._nativeTransferGasLimit = '30000';
|
|
29
27
|
/**
|
|
30
28
|
* Mapping of protocol to override parameter keys
|
|
31
29
|
*/
|
|
@@ -37,6 +35,17 @@ class EvmDirectPoolService {
|
|
|
37
35
|
[enums_1.ProtocolEnum.LFJ, 'overrideParamsLfj'],
|
|
38
36
|
[enums_1.ProtocolEnum.FOUR_MEME, 'overrideParamsFourMeme'],
|
|
39
37
|
]);
|
|
38
|
+
this._geniusSwapRouterDeployments = {
|
|
39
|
+
[enums_1.ChainIdEnum.AVALANCHE]: '0x8ad9476c141A9030B91CF2d8718b835A2bD11B39',
|
|
40
|
+
[enums_1.ChainIdEnum.BSC]: '0x8ad9476c141A9030B91CF2d8718b835A2bD11B39',
|
|
41
|
+
[enums_1.ChainIdEnum.BASE]: '0x184D69899D3820Cc565AeF595d6281693a2a502D',
|
|
42
|
+
[enums_1.ChainIdEnum.OPTIMISM]: '0x184D69899D3820Cc565AeF595d6281693a2a502D',
|
|
43
|
+
[enums_1.ChainIdEnum.POLYGON]: '0x184D69899D3820Cc565AeF595d6281693a2a502D',
|
|
44
|
+
[enums_1.ChainIdEnum.ARBITRUM]: '0x184D69899D3820Cc565AeF595d6281693a2a502D',
|
|
45
|
+
[enums_1.ChainIdEnum.SONIC]: '0x184D69899D3820Cc565AeF595d6281693a2a502D',
|
|
46
|
+
[enums_1.ChainIdEnum.HYPEREVM]: '0x184D69899D3820Cc565AeF595d6281693a2a502D',
|
|
47
|
+
[enums_1.ChainIdEnum.ETHEREUM]: '0x8ad9476c141A9030B91CF2d8718b835A2bD11B39',
|
|
48
|
+
};
|
|
40
49
|
if (config?.debug) {
|
|
41
50
|
logger_1.LoggerFactory.configure(logger_1.LoggerFactory.createConsoleLogger({ level: logger_1.LogLevelEnum.DEBUG }));
|
|
42
51
|
}
|
|
@@ -136,7 +145,7 @@ class EvmDirectPoolService {
|
|
|
136
145
|
* Validates and extracts parameters with optimized error messages
|
|
137
146
|
*/
|
|
138
147
|
_validateAndExtractParams(p) {
|
|
139
|
-
const { params
|
|
148
|
+
const { params } = p;
|
|
140
149
|
const overrides = params?.overrideParamsEvmDirectPool;
|
|
141
150
|
if (!overrides) {
|
|
142
151
|
throw new Error('Missing override parameters for EVM direct pool');
|
|
@@ -145,17 +154,6 @@ class EvmDirectPoolService {
|
|
|
145
154
|
if (!pairCandidate) {
|
|
146
155
|
throw new Error('Missing pair candidate for EVM direct pool');
|
|
147
156
|
}
|
|
148
|
-
if (requireFeeParams) {
|
|
149
|
-
const feeAmount = overrides.feeAmount;
|
|
150
|
-
const feeCollector = overrides.feeCollector;
|
|
151
|
-
if (!feeAmount) {
|
|
152
|
-
throw new Error('Missing fee amount for EVM direct pool');
|
|
153
|
-
}
|
|
154
|
-
if (!feeCollector) {
|
|
155
|
-
throw new Error('Missing fee collector for EVM direct pool');
|
|
156
|
-
}
|
|
157
|
-
return { overrides, pairCandidate, feeAmount, feeCollector };
|
|
158
|
-
}
|
|
159
157
|
return { overrides, pairCandidate };
|
|
160
158
|
}
|
|
161
159
|
/**
|
|
@@ -176,74 +174,124 @@ class EvmDirectPoolService {
|
|
|
176
174
|
logger.debug('Fetching EVM direct pool price');
|
|
177
175
|
const { overrides, pairCandidate } = this._validateAndExtractParams({
|
|
178
176
|
params,
|
|
179
|
-
requireFeeParams: false,
|
|
180
177
|
});
|
|
181
178
|
const { protocol, overrideKey } = this._getProtocolAndKey(pairCandidate.dex);
|
|
182
179
|
return protocol.fetchPrice({ ...params, [overrideKey]: overrides });
|
|
183
180
|
}
|
|
184
181
|
async fetchQuote(params) {
|
|
185
|
-
const { overrides, pairCandidate
|
|
182
|
+
const { overrides, pairCandidate } = this._validateAndExtractParams({
|
|
186
183
|
params,
|
|
187
|
-
requireFeeParams: true,
|
|
188
184
|
});
|
|
189
185
|
const { protocol, overrideKey } = this._getProtocolAndKey(pairCandidate.dex);
|
|
186
|
+
const overrideFeeBps = overrides.feeBPS ?? 0;
|
|
187
|
+
const transferTaxBps = pairCandidate.tokenInTransferTax?.sellTaxBps ?? 0;
|
|
188
|
+
/**
|
|
189
|
+
* Based off of the feeBPS and transferTaxBps, we need to adjust the amountIn to reflect the net amount
|
|
190
|
+
*/
|
|
191
|
+
const routerFee = (BigInt(params.amountIn) * BigInt(overrideFeeBps)) / 10000n;
|
|
192
|
+
const amountAfterRouterFee = BigInt(params.amountIn) - routerFee;
|
|
193
|
+
const transferTax = (amountAfterRouterFee * BigInt(transferTaxBps)) / 10000n;
|
|
194
|
+
const amountThatWillReachPair = amountAfterRouterFee - transferTax;
|
|
190
195
|
// Get price response efficiently
|
|
191
|
-
const priceResponse = params.priceResponse ??
|
|
196
|
+
const priceResponse = params.priceResponse ??
|
|
197
|
+
(await this.fetchPrice({ ...params, amountIn: amountThatWillReachPair.toString() }));
|
|
192
198
|
logger.debug('Using price response for quote:', priceResponse);
|
|
193
199
|
const rawQuote = await protocol.fetchQuote({
|
|
194
200
|
...params,
|
|
201
|
+
amountIn: amountThatWillReachPair.toString(),
|
|
195
202
|
priceResponse,
|
|
196
203
|
[overrideKey]: overrides,
|
|
197
204
|
});
|
|
198
205
|
logger.debug('Raw quote received:', rawQuote);
|
|
199
206
|
const executionPayload = rawQuote.evmExecutionPayload;
|
|
200
|
-
|
|
207
|
+
const executionCalldata = executionPayload?.transactionData?.data;
|
|
208
|
+
const executionRouter = executionPayload?.transactionData?.to;
|
|
209
|
+
if (!executionPayload || !executionCalldata || !executionRouter) {
|
|
201
210
|
throw new Error('Missing execution payload for EVM direct pool quote');
|
|
202
211
|
}
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
212
|
+
let swapCalldata = undefined;
|
|
213
|
+
let to = undefined;
|
|
214
|
+
if (rawQuote.protocol === enums_1.ProtocolEnum.FOUR_MEME) {
|
|
215
|
+
/**
|
|
216
|
+
* Return the original calldata for 4meme since it has nuances surrounding
|
|
217
|
+
* not being able to transfer unbonded tokens
|
|
218
|
+
*/
|
|
219
|
+
to = executionRouter;
|
|
220
|
+
swapCalldata = executionCalldata;
|
|
221
|
+
}
|
|
222
|
+
else {
|
|
223
|
+
to = this._geniusSwapRouterDeployments[params.networkIn];
|
|
224
|
+
swapCalldata = this._buildWrappedSwapCalldata({
|
|
225
|
+
tokenIn: params.tokenIn,
|
|
226
|
+
tokenOut: params.tokenOut,
|
|
227
|
+
amountIn: params.amountIn,
|
|
228
|
+
network: params.networkIn,
|
|
229
|
+
swapCalldata: executionCalldata,
|
|
230
|
+
router: executionRouter,
|
|
231
|
+
});
|
|
232
|
+
}
|
|
233
|
+
/**
|
|
234
|
+
* Reconstruct the executionPayload with the wrappedSwapCalldata as .data and the Genius Swap Router as .to
|
|
235
|
+
*/
|
|
236
|
+
const formattedExecutionPayload = {
|
|
237
|
+
to,
|
|
238
|
+
data: swapCalldata,
|
|
239
|
+
value: executionPayload.transactionData.value,
|
|
240
|
+
gasLimit: executionPayload.transactionData.gasLimit,
|
|
241
|
+
};
|
|
242
|
+
const rawApproval = executionPayload?.approval;
|
|
210
243
|
return {
|
|
211
244
|
...rawQuote,
|
|
212
245
|
evmExecutionPayload: {
|
|
213
246
|
...executionPayload,
|
|
214
|
-
|
|
247
|
+
transactionData: formattedExecutionPayload,
|
|
248
|
+
approval: this._buildApprovalTransaction(params.networkIn, params.tokenIn, rawApproval),
|
|
215
249
|
},
|
|
216
250
|
};
|
|
217
251
|
}
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
252
|
+
_buildWrappedSwapCalldata(params) {
|
|
253
|
+
const { tokenIn, tokenOut, amountIn, network, swapCalldata, router } = params;
|
|
254
|
+
const geniusSwapRouter = this._geniusSwapRouterDeployments[network];
|
|
255
|
+
if (!geniusSwapRouter) {
|
|
256
|
+
throw new Error(`Genius Swap Router not deployed on chain ${network}`);
|
|
257
|
+
}
|
|
258
|
+
const fmtTokenIn = (0, is_native_1.isNative)(tokenIn) ? constants_1.NATIVE_ADDRESS : (0, viem_1.getAddress)(tokenIn);
|
|
259
|
+
const fmtTokenOut = (0, is_native_1.isNative)(tokenOut) ? constants_1.NATIVE_ADDRESS : (0, viem_1.getAddress)(tokenOut);
|
|
260
|
+
return (0, viem_1.encodeFunctionData)({
|
|
261
|
+
abi: genius_swap_router_abi_1.geniusSwapRouterAbi,
|
|
262
|
+
functionName: 'executeSwap',
|
|
263
|
+
args: [router, fmtTokenIn, fmtTokenOut, BigInt(amountIn), swapCalldata],
|
|
264
|
+
});
|
|
265
|
+
}
|
|
266
|
+
_buildApprovalTransaction(network, tokenIn, approval) {
|
|
267
|
+
const { token, amount } = approval;
|
|
224
268
|
const isNativeIn = (0, is_native_1.isNative)(tokenIn);
|
|
225
|
-
|
|
226
|
-
const useTokenIn = isNativeIn || !isNativeOut;
|
|
227
|
-
const tokenForFee = useTokenIn ? tokenIn : tokenOut;
|
|
228
|
-
if ((0, is_native_1.isNative)(tokenForFee)) {
|
|
229
|
-
logger.debug('Building native token fee transfer');
|
|
269
|
+
if (isNativeIn) {
|
|
230
270
|
return {
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
271
|
+
token: constants_1.NATIVE_ADDRESS,
|
|
272
|
+
spender: constants_1.ZERO_ADDRESS,
|
|
273
|
+
amount: '0',
|
|
274
|
+
required: false,
|
|
235
275
|
};
|
|
236
276
|
}
|
|
237
|
-
|
|
238
|
-
|
|
277
|
+
const spender = this._geniusSwapRouterDeployments[network];
|
|
278
|
+
if (!spender) {
|
|
279
|
+
throw new Error(`Genius Swap Router not deployed on chain ${network}`);
|
|
280
|
+
}
|
|
239
281
|
return {
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
282
|
+
token: (0, viem_1.getAddress)(token),
|
|
283
|
+
spender: (0, viem_1.getAddress)(spender),
|
|
284
|
+
amount,
|
|
285
|
+
required: true,
|
|
286
|
+
txnData: {
|
|
287
|
+
to: (0, viem_1.getAddress)(token),
|
|
288
|
+
data: (0, viem_1.encodeFunctionData)({
|
|
289
|
+
abi: viem_1.erc20Abi,
|
|
290
|
+
functionName: 'approve',
|
|
291
|
+
args: [(0, viem_1.getAddress)(spender), BigInt(amount)],
|
|
292
|
+
}),
|
|
293
|
+
value: '0',
|
|
294
|
+
},
|
|
247
295
|
};
|
|
248
296
|
}
|
|
249
297
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"evm-direct-pool.service.js","sourceRoot":"","sources":["../../../../src/lib/dex/evm-direct-pool/evm-direct-pool.service.ts"],"names":[],"mappings":";;;AAAA,+
|
|
1
|
+
{"version":3,"file":"evm-direct-pool.service.js","sourceRoot":"","sources":["../../../../src/lib/dex/evm-direct-pool/evm-direct-pool.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { ChainIdEnum } from '../../../types/enums';
|
|
1
2
|
import { IntentPriceParams } from '../../../types/price-params';
|
|
2
3
|
import { IntentQuoteParams } from '../../../types/quote-params';
|
|
3
4
|
import { EvmPairCandidate } from '../pair-discovery';
|
|
@@ -6,8 +7,7 @@ export type EvmDirectPoolConfig = {
|
|
|
6
7
|
};
|
|
7
8
|
export type EvmDirectPoolOverrideParams = {
|
|
8
9
|
pairCandidate?: EvmPairCandidate;
|
|
9
|
-
|
|
10
|
-
feeCollector?: string;
|
|
10
|
+
feeBPS?: number;
|
|
11
11
|
};
|
|
12
12
|
export type ValidatedEvmDirectPoolParams = {
|
|
13
13
|
overrides: EvmDirectPoolOverrideParams;
|
|
@@ -17,6 +17,13 @@ export type ValidatedEvmDirectPoolParams = {
|
|
|
17
17
|
};
|
|
18
18
|
export type ValidateAndExtractDirectPoolParamsParams = {
|
|
19
19
|
params: IntentPriceParams | IntentQuoteParams;
|
|
20
|
-
|
|
20
|
+
};
|
|
21
|
+
export type WrappedSwapCalldataParams = {
|
|
22
|
+
tokenIn: string;
|
|
23
|
+
tokenOut: string;
|
|
24
|
+
amountIn: string;
|
|
25
|
+
network: ChainIdEnum;
|
|
26
|
+
swapCalldata: string;
|
|
27
|
+
router: string;
|
|
21
28
|
};
|
|
22
29
|
//# sourceMappingURL=evm-direct-pool.types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"evm-direct-pool.types.d.ts","sourceRoot":"","sources":["../../../../src/lib/dex/evm-direct-pool/evm-direct-pool.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAErD,MAAM,MAAM,mBAAmB,GAAG;IAChC,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;CACvC,CAAC;AAEF,MAAM,MAAM,2BAA2B,GAAG;IACxC,aAAa,CAAC,EAAE,gBAAgB,CAAC;IACjC,
|
|
1
|
+
{"version":3,"file":"evm-direct-pool.types.d.ts","sourceRoot":"","sources":["../../../../src/lib/dex/evm-direct-pool/evm-direct-pool.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAErD,MAAM,MAAM,mBAAmB,GAAG;IAChC,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;CACvC,CAAC;AAEF,MAAM,MAAM,2BAA2B,GAAG;IACxC,aAAa,CAAC,EAAE,gBAAgB,CAAC;IACjC,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,4BAA4B,GAAG;IACzC,SAAS,EAAE,2BAA2B,CAAC;IACvC,aAAa,EAAE,gBAAgB,CAAC;IAChC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,wCAAwC,GAAG;IACrD,MAAM,EAAE,iBAAiB,GAAG,iBAAiB,CAAC;CAC/C,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG;IACtC,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,WAAW,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"genius-swap-router.abi.d.ts","sourceRoot":"","sources":["../../../src/lib/genius-swap-router/genius-swap-router.abi.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,MAAM,CAAC;AAE3B,eAAO,MAAM,mBAAmB,EAAE,GAgbxB,CAAC"}
|
|
@@ -0,0 +1,437 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.geniusSwapRouterAbi = void 0;
|
|
4
|
+
exports.geniusSwapRouterAbi = [
|
|
5
|
+
{
|
|
6
|
+
inputs: [
|
|
7
|
+
{
|
|
8
|
+
internalType: 'address',
|
|
9
|
+
name: '_feeCollector',
|
|
10
|
+
type: 'address',
|
|
11
|
+
},
|
|
12
|
+
],
|
|
13
|
+
stateMutability: 'nonpayable',
|
|
14
|
+
type: 'constructor',
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
inputs: [],
|
|
18
|
+
name: 'AmountMustBeGreaterThanZero',
|
|
19
|
+
type: 'error',
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
inputs: [],
|
|
23
|
+
name: 'DirectETHTransfersNotAllowed',
|
|
24
|
+
type: 'error',
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
inputs: [],
|
|
28
|
+
name: 'ETHAmountMismatch',
|
|
29
|
+
type: 'error',
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
inputs: [],
|
|
33
|
+
name: 'ETHSentForTokenSwap',
|
|
34
|
+
type: 'error',
|
|
35
|
+
},
|
|
36
|
+
{
|
|
37
|
+
inputs: [],
|
|
38
|
+
name: 'ETHTransferFailed',
|
|
39
|
+
type: 'error',
|
|
40
|
+
},
|
|
41
|
+
{
|
|
42
|
+
inputs: [],
|
|
43
|
+
name: 'FeeCollectorNotSet',
|
|
44
|
+
type: 'error',
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
inputs: [],
|
|
48
|
+
name: 'FeeRateExceedsMaximum',
|
|
49
|
+
type: 'error',
|
|
50
|
+
},
|
|
51
|
+
{
|
|
52
|
+
inputs: [],
|
|
53
|
+
name: 'FeeTransferFailed',
|
|
54
|
+
type: 'error',
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
inputs: [],
|
|
58
|
+
name: 'FunctionDoesNotExist',
|
|
59
|
+
type: 'error',
|
|
60
|
+
},
|
|
61
|
+
{
|
|
62
|
+
inputs: [],
|
|
63
|
+
name: 'InvalidAddress',
|
|
64
|
+
type: 'error',
|
|
65
|
+
},
|
|
66
|
+
{
|
|
67
|
+
inputs: [],
|
|
68
|
+
name: 'InvalidFeeCollectorAddress',
|
|
69
|
+
type: 'error',
|
|
70
|
+
},
|
|
71
|
+
{
|
|
72
|
+
inputs: [],
|
|
73
|
+
name: 'InvalidRouterAddress',
|
|
74
|
+
type: 'error',
|
|
75
|
+
},
|
|
76
|
+
{
|
|
77
|
+
inputs: [],
|
|
78
|
+
name: 'InvalidUserAddress',
|
|
79
|
+
type: 'error',
|
|
80
|
+
},
|
|
81
|
+
{
|
|
82
|
+
inputs: [],
|
|
83
|
+
name: 'NoTokensReceived',
|
|
84
|
+
type: 'error',
|
|
85
|
+
},
|
|
86
|
+
{
|
|
87
|
+
inputs: [
|
|
88
|
+
{
|
|
89
|
+
internalType: 'address',
|
|
90
|
+
name: 'owner',
|
|
91
|
+
type: 'address',
|
|
92
|
+
},
|
|
93
|
+
],
|
|
94
|
+
name: 'OwnableInvalidOwner',
|
|
95
|
+
type: 'error',
|
|
96
|
+
},
|
|
97
|
+
{
|
|
98
|
+
inputs: [
|
|
99
|
+
{
|
|
100
|
+
internalType: 'address',
|
|
101
|
+
name: 'account',
|
|
102
|
+
type: 'address',
|
|
103
|
+
},
|
|
104
|
+
],
|
|
105
|
+
name: 'OwnableUnauthorizedAccount',
|
|
106
|
+
type: 'error',
|
|
107
|
+
},
|
|
108
|
+
{
|
|
109
|
+
inputs: [],
|
|
110
|
+
name: 'ReentrancyGuardReentrantCall',
|
|
111
|
+
type: 'error',
|
|
112
|
+
},
|
|
113
|
+
{
|
|
114
|
+
inputs: [],
|
|
115
|
+
name: 'RouterCallFailed',
|
|
116
|
+
type: 'error',
|
|
117
|
+
},
|
|
118
|
+
{
|
|
119
|
+
inputs: [],
|
|
120
|
+
name: 'TokenApprovalFailed',
|
|
121
|
+
type: 'error',
|
|
122
|
+
},
|
|
123
|
+
{
|
|
124
|
+
inputs: [],
|
|
125
|
+
name: 'TokenTransferFailed',
|
|
126
|
+
type: 'error',
|
|
127
|
+
},
|
|
128
|
+
{
|
|
129
|
+
anonymous: false,
|
|
130
|
+
inputs: [
|
|
131
|
+
{
|
|
132
|
+
indexed: false,
|
|
133
|
+
internalType: 'uint256',
|
|
134
|
+
name: 'feeRate',
|
|
135
|
+
type: 'uint256',
|
|
136
|
+
},
|
|
137
|
+
],
|
|
138
|
+
name: 'DefaultFeeRateUpdated',
|
|
139
|
+
type: 'event',
|
|
140
|
+
},
|
|
141
|
+
{
|
|
142
|
+
anonymous: false,
|
|
143
|
+
inputs: [
|
|
144
|
+
{
|
|
145
|
+
indexed: true,
|
|
146
|
+
internalType: 'address',
|
|
147
|
+
name: 'oldCollector',
|
|
148
|
+
type: 'address',
|
|
149
|
+
},
|
|
150
|
+
{
|
|
151
|
+
indexed: true,
|
|
152
|
+
internalType: 'address',
|
|
153
|
+
name: 'newCollector',
|
|
154
|
+
type: 'address',
|
|
155
|
+
},
|
|
156
|
+
],
|
|
157
|
+
name: 'FeeCollectorUpdated',
|
|
158
|
+
type: 'event',
|
|
159
|
+
},
|
|
160
|
+
{
|
|
161
|
+
anonymous: false,
|
|
162
|
+
inputs: [
|
|
163
|
+
{
|
|
164
|
+
indexed: true,
|
|
165
|
+
internalType: 'address',
|
|
166
|
+
name: 'user',
|
|
167
|
+
type: 'address',
|
|
168
|
+
},
|
|
169
|
+
{
|
|
170
|
+
indexed: false,
|
|
171
|
+
internalType: 'uint256',
|
|
172
|
+
name: 'feeRate',
|
|
173
|
+
type: 'uint256',
|
|
174
|
+
},
|
|
175
|
+
],
|
|
176
|
+
name: 'FeeRateUpdated',
|
|
177
|
+
type: 'event',
|
|
178
|
+
},
|
|
179
|
+
{
|
|
180
|
+
anonymous: false,
|
|
181
|
+
inputs: [
|
|
182
|
+
{
|
|
183
|
+
indexed: true,
|
|
184
|
+
internalType: 'address',
|
|
185
|
+
name: 'previousOwner',
|
|
186
|
+
type: 'address',
|
|
187
|
+
},
|
|
188
|
+
{
|
|
189
|
+
indexed: true,
|
|
190
|
+
internalType: 'address',
|
|
191
|
+
name: 'newOwner',
|
|
192
|
+
type: 'address',
|
|
193
|
+
},
|
|
194
|
+
],
|
|
195
|
+
name: 'OwnershipTransferred',
|
|
196
|
+
type: 'event',
|
|
197
|
+
},
|
|
198
|
+
{
|
|
199
|
+
anonymous: false,
|
|
200
|
+
inputs: [
|
|
201
|
+
{
|
|
202
|
+
indexed: true,
|
|
203
|
+
internalType: 'address',
|
|
204
|
+
name: 'user',
|
|
205
|
+
type: 'address',
|
|
206
|
+
},
|
|
207
|
+
{
|
|
208
|
+
indexed: true,
|
|
209
|
+
internalType: 'address',
|
|
210
|
+
name: 'router',
|
|
211
|
+
type: 'address',
|
|
212
|
+
},
|
|
213
|
+
{
|
|
214
|
+
indexed: true,
|
|
215
|
+
internalType: 'address',
|
|
216
|
+
name: 'tokenIn',
|
|
217
|
+
type: 'address',
|
|
218
|
+
},
|
|
219
|
+
{
|
|
220
|
+
indexed: false,
|
|
221
|
+
internalType: 'uint256',
|
|
222
|
+
name: 'amountIn',
|
|
223
|
+
type: 'uint256',
|
|
224
|
+
},
|
|
225
|
+
{
|
|
226
|
+
indexed: false,
|
|
227
|
+
internalType: 'uint256',
|
|
228
|
+
name: 'actualReceived',
|
|
229
|
+
type: 'uint256',
|
|
230
|
+
},
|
|
231
|
+
{
|
|
232
|
+
indexed: false,
|
|
233
|
+
internalType: 'uint256',
|
|
234
|
+
name: 'fee',
|
|
235
|
+
type: 'uint256',
|
|
236
|
+
},
|
|
237
|
+
],
|
|
238
|
+
name: 'SwapExecuted',
|
|
239
|
+
type: 'event',
|
|
240
|
+
},
|
|
241
|
+
{
|
|
242
|
+
stateMutability: 'payable',
|
|
243
|
+
type: 'fallback',
|
|
244
|
+
},
|
|
245
|
+
{
|
|
246
|
+
inputs: [],
|
|
247
|
+
name: 'FEE_DENOMINATOR',
|
|
248
|
+
outputs: [
|
|
249
|
+
{
|
|
250
|
+
internalType: 'uint256',
|
|
251
|
+
name: '',
|
|
252
|
+
type: 'uint256',
|
|
253
|
+
},
|
|
254
|
+
],
|
|
255
|
+
stateMutability: 'view',
|
|
256
|
+
type: 'function',
|
|
257
|
+
},
|
|
258
|
+
{
|
|
259
|
+
inputs: [],
|
|
260
|
+
name: 'NATIVE_PLACEHOLDER',
|
|
261
|
+
outputs: [
|
|
262
|
+
{
|
|
263
|
+
internalType: 'address',
|
|
264
|
+
name: '',
|
|
265
|
+
type: 'address',
|
|
266
|
+
},
|
|
267
|
+
],
|
|
268
|
+
stateMutability: 'view',
|
|
269
|
+
type: 'function',
|
|
270
|
+
},
|
|
271
|
+
{
|
|
272
|
+
inputs: [],
|
|
273
|
+
name: 'defaultFeeRate',
|
|
274
|
+
outputs: [
|
|
275
|
+
{
|
|
276
|
+
internalType: 'uint256',
|
|
277
|
+
name: '',
|
|
278
|
+
type: 'uint256',
|
|
279
|
+
},
|
|
280
|
+
],
|
|
281
|
+
stateMutability: 'view',
|
|
282
|
+
type: 'function',
|
|
283
|
+
},
|
|
284
|
+
{
|
|
285
|
+
inputs: [
|
|
286
|
+
{
|
|
287
|
+
internalType: 'address',
|
|
288
|
+
name: 'router',
|
|
289
|
+
type: 'address',
|
|
290
|
+
},
|
|
291
|
+
{
|
|
292
|
+
internalType: 'address',
|
|
293
|
+
name: 'tokenIn',
|
|
294
|
+
type: 'address',
|
|
295
|
+
},
|
|
296
|
+
{
|
|
297
|
+
internalType: 'address',
|
|
298
|
+
name: 'tokenOut',
|
|
299
|
+
type: 'address',
|
|
300
|
+
},
|
|
301
|
+
{
|
|
302
|
+
internalType: 'uint256',
|
|
303
|
+
name: 'amountIn',
|
|
304
|
+
type: 'uint256',
|
|
305
|
+
},
|
|
306
|
+
{
|
|
307
|
+
internalType: 'bytes',
|
|
308
|
+
name: 'swapCalldata',
|
|
309
|
+
type: 'bytes',
|
|
310
|
+
},
|
|
311
|
+
],
|
|
312
|
+
name: 'executeSwap',
|
|
313
|
+
outputs: [
|
|
314
|
+
{
|
|
315
|
+
internalType: 'bytes',
|
|
316
|
+
name: 'result',
|
|
317
|
+
type: 'bytes',
|
|
318
|
+
},
|
|
319
|
+
],
|
|
320
|
+
stateMutability: 'payable',
|
|
321
|
+
type: 'function',
|
|
322
|
+
},
|
|
323
|
+
{
|
|
324
|
+
inputs: [],
|
|
325
|
+
name: 'feeCollector',
|
|
326
|
+
outputs: [
|
|
327
|
+
{
|
|
328
|
+
internalType: 'address',
|
|
329
|
+
name: '',
|
|
330
|
+
type: 'address',
|
|
331
|
+
},
|
|
332
|
+
],
|
|
333
|
+
stateMutability: 'view',
|
|
334
|
+
type: 'function',
|
|
335
|
+
},
|
|
336
|
+
{
|
|
337
|
+
inputs: [],
|
|
338
|
+
name: 'owner',
|
|
339
|
+
outputs: [
|
|
340
|
+
{
|
|
341
|
+
internalType: 'address',
|
|
342
|
+
name: '',
|
|
343
|
+
type: 'address',
|
|
344
|
+
},
|
|
345
|
+
],
|
|
346
|
+
stateMutability: 'view',
|
|
347
|
+
type: 'function',
|
|
348
|
+
},
|
|
349
|
+
{
|
|
350
|
+
inputs: [],
|
|
351
|
+
name: 'renounceOwnership',
|
|
352
|
+
outputs: [],
|
|
353
|
+
stateMutability: 'nonpayable',
|
|
354
|
+
type: 'function',
|
|
355
|
+
},
|
|
356
|
+
{
|
|
357
|
+
inputs: [
|
|
358
|
+
{
|
|
359
|
+
internalType: 'uint256',
|
|
360
|
+
name: 'feeRate',
|
|
361
|
+
type: 'uint256',
|
|
362
|
+
},
|
|
363
|
+
],
|
|
364
|
+
name: 'setDefaultFeeRate',
|
|
365
|
+
outputs: [],
|
|
366
|
+
stateMutability: 'nonpayable',
|
|
367
|
+
type: 'function',
|
|
368
|
+
},
|
|
369
|
+
{
|
|
370
|
+
inputs: [
|
|
371
|
+
{
|
|
372
|
+
internalType: 'address',
|
|
373
|
+
name: 'newFeeCollector',
|
|
374
|
+
type: 'address',
|
|
375
|
+
},
|
|
376
|
+
],
|
|
377
|
+
name: 'setFeeCollector',
|
|
378
|
+
outputs: [],
|
|
379
|
+
stateMutability: 'nonpayable',
|
|
380
|
+
type: 'function',
|
|
381
|
+
},
|
|
382
|
+
{
|
|
383
|
+
inputs: [
|
|
384
|
+
{
|
|
385
|
+
internalType: 'address',
|
|
386
|
+
name: 'user',
|
|
387
|
+
type: 'address',
|
|
388
|
+
},
|
|
389
|
+
{
|
|
390
|
+
internalType: 'uint256',
|
|
391
|
+
name: 'feeRate',
|
|
392
|
+
type: 'uint256',
|
|
393
|
+
},
|
|
394
|
+
],
|
|
395
|
+
name: 'setUserFeeRate',
|
|
396
|
+
outputs: [],
|
|
397
|
+
stateMutability: 'nonpayable',
|
|
398
|
+
type: 'function',
|
|
399
|
+
},
|
|
400
|
+
{
|
|
401
|
+
inputs: [
|
|
402
|
+
{
|
|
403
|
+
internalType: 'address',
|
|
404
|
+
name: 'newOwner',
|
|
405
|
+
type: 'address',
|
|
406
|
+
},
|
|
407
|
+
],
|
|
408
|
+
name: 'transferOwnership',
|
|
409
|
+
outputs: [],
|
|
410
|
+
stateMutability: 'nonpayable',
|
|
411
|
+
type: 'function',
|
|
412
|
+
},
|
|
413
|
+
{
|
|
414
|
+
inputs: [
|
|
415
|
+
{
|
|
416
|
+
internalType: 'address',
|
|
417
|
+
name: '',
|
|
418
|
+
type: 'address',
|
|
419
|
+
},
|
|
420
|
+
],
|
|
421
|
+
name: 'userFeeRate',
|
|
422
|
+
outputs: [
|
|
423
|
+
{
|
|
424
|
+
internalType: 'uint256',
|
|
425
|
+
name: '',
|
|
426
|
+
type: 'uint256',
|
|
427
|
+
},
|
|
428
|
+
],
|
|
429
|
+
stateMutability: 'view',
|
|
430
|
+
type: 'function',
|
|
431
|
+
},
|
|
432
|
+
{
|
|
433
|
+
stateMutability: 'payable',
|
|
434
|
+
type: 'receive',
|
|
435
|
+
},
|
|
436
|
+
];
|
|
437
|
+
//# sourceMappingURL=genius-swap-router.abi.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"genius-swap-router.abi.js","sourceRoot":"","sources":["../../../src/lib/genius-swap-router/genius-swap-router.abi.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "genius-intents",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.23.1-develop.0",
|
|
4
4
|
"description": "A unified SDK for interacting with intents-based protocols across multiple blockchains including Solana, Ethereum, and Sui",
|
|
5
5
|
"license": "GNU",
|
|
6
6
|
"author": "Samuel Videau <samuel@videau.io>, AltLoot <@altloot>, Satyam Kumar <skdbsp123@gmail.com>",
|