genius-intents 0.1.4

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.
Files changed (252) hide show
  1. package/CHANGELOG.md +45 -0
  2. package/LICENSE +21 -0
  3. package/README.md +376 -0
  4. package/dist/src/index.d.ts +27 -0
  5. package/dist/src/index.d.ts.map +1 -0
  6. package/dist/src/index.js +62 -0
  7. package/dist/src/index.js.map +1 -0
  8. package/dist/src/intents-protocols.d.ts +69 -0
  9. package/dist/src/intents-protocols.d.ts.map +1 -0
  10. package/dist/src/intents-protocols.js +371 -0
  11. package/dist/src/intents-protocols.js.map +1 -0
  12. package/dist/src/interfaces/intent-protocol.d.ts +21 -0
  13. package/dist/src/interfaces/intent-protocol.d.ts.map +1 -0
  14. package/dist/src/interfaces/intent-protocol.js +3 -0
  15. package/dist/src/interfaces/intent-protocol.js.map +1 -0
  16. package/dist/src/protocols/aftermath/aftermath.service.d.ts +28 -0
  17. package/dist/src/protocols/aftermath/aftermath.service.d.ts.map +1 -0
  18. package/dist/src/protocols/aftermath/aftermath.service.js +162 -0
  19. package/dist/src/protocols/aftermath/aftermath.service.js.map +1 -0
  20. package/dist/src/protocols/aftermath/aftermath.types.d.ts +100 -0
  21. package/dist/src/protocols/aftermath/aftermath.types.d.ts.map +1 -0
  22. package/dist/src/protocols/aftermath/aftermath.types.js +3 -0
  23. package/dist/src/protocols/aftermath/aftermath.types.js.map +1 -0
  24. package/dist/src/protocols/aftermath/index.d.ts +3 -0
  25. package/dist/src/protocols/aftermath/index.d.ts.map +1 -0
  26. package/dist/src/protocols/aftermath/index.js +7 -0
  27. package/dist/src/protocols/aftermath/index.js.map +1 -0
  28. package/dist/src/protocols/debridge/debridge.service.d.ts +157 -0
  29. package/dist/src/protocols/debridge/debridge.service.d.ts.map +1 -0
  30. package/dist/src/protocols/debridge/debridge.service.js +462 -0
  31. package/dist/src/protocols/debridge/debridge.service.js.map +1 -0
  32. package/dist/src/protocols/debridge/debridge.types.d.ts +82 -0
  33. package/dist/src/protocols/debridge/debridge.types.d.ts.map +1 -0
  34. package/dist/src/protocols/debridge/debridge.types.js +3 -0
  35. package/dist/src/protocols/debridge/debridge.types.js.map +1 -0
  36. package/dist/src/protocols/debridge/index.d.ts +3 -0
  37. package/dist/src/protocols/debridge/index.d.ts.map +1 -0
  38. package/dist/src/protocols/debridge/index.js +7 -0
  39. package/dist/src/protocols/debridge/index.js.map +1 -0
  40. package/dist/src/protocols/genius-bridge/genius-bridge.service.d.ts +36 -0
  41. package/dist/src/protocols/genius-bridge/genius-bridge.service.d.ts.map +1 -0
  42. package/dist/src/protocols/genius-bridge/genius-bridge.service.js +312 -0
  43. package/dist/src/protocols/genius-bridge/genius-bridge.service.js.map +1 -0
  44. package/dist/src/protocols/genius-bridge/genius-bridge.types.d.ts +100 -0
  45. package/dist/src/protocols/genius-bridge/genius-bridge.types.d.ts.map +1 -0
  46. package/dist/src/protocols/genius-bridge/genius-bridge.types.js +3 -0
  47. package/dist/src/protocols/genius-bridge/genius-bridge.types.js.map +1 -0
  48. package/dist/src/protocols/genius-bridge/index.d.ts +3 -0
  49. package/dist/src/protocols/genius-bridge/index.d.ts.map +1 -0
  50. package/dist/src/protocols/genius-bridge/index.js +7 -0
  51. package/dist/src/protocols/genius-bridge/index.js.map +1 -0
  52. package/dist/src/protocols/jupiter/index.d.ts +3 -0
  53. package/dist/src/protocols/jupiter/index.d.ts.map +1 -0
  54. package/dist/src/protocols/jupiter/index.js +7 -0
  55. package/dist/src/protocols/jupiter/index.js.map +1 -0
  56. package/dist/src/protocols/jupiter/jupiter.service.d.ts +37 -0
  57. package/dist/src/protocols/jupiter/jupiter.service.d.ts.map +1 -0
  58. package/dist/src/protocols/jupiter/jupiter.service.js +188 -0
  59. package/dist/src/protocols/jupiter/jupiter.service.js.map +1 -0
  60. package/dist/src/protocols/jupiter/jupiter.types.d.ts +272 -0
  61. package/dist/src/protocols/jupiter/jupiter.types.d.ts.map +1 -0
  62. package/dist/src/protocols/jupiter/jupiter.types.js +3 -0
  63. package/dist/src/protocols/jupiter/jupiter.types.js.map +1 -0
  64. package/dist/src/protocols/kyberswap/index.d.ts +3 -0
  65. package/dist/src/protocols/kyberswap/index.d.ts.map +1 -0
  66. package/dist/src/protocols/kyberswap/index.js +7 -0
  67. package/dist/src/protocols/kyberswap/index.js.map +1 -0
  68. package/dist/src/protocols/kyberswap/kyberswap.service.d.ts +34 -0
  69. package/dist/src/protocols/kyberswap/kyberswap.service.d.ts.map +1 -0
  70. package/dist/src/protocols/kyberswap/kyberswap.service.js +218 -0
  71. package/dist/src/protocols/kyberswap/kyberswap.service.js.map +1 -0
  72. package/dist/src/protocols/kyberswap/kyberswap.types.d.ts +114 -0
  73. package/dist/src/protocols/kyberswap/kyberswap.types.d.ts.map +1 -0
  74. package/dist/src/protocols/kyberswap/kyberswap.types.js +3 -0
  75. package/dist/src/protocols/kyberswap/kyberswap.types.js.map +1 -0
  76. package/dist/src/protocols/odos/index.d.ts +3 -0
  77. package/dist/src/protocols/odos/index.d.ts.map +1 -0
  78. package/dist/src/protocols/odos/index.js +7 -0
  79. package/dist/src/protocols/odos/index.js.map +1 -0
  80. package/dist/src/protocols/odos/odos.service.d.ts +39 -0
  81. package/dist/src/protocols/odos/odos.service.d.ts.map +1 -0
  82. package/dist/src/protocols/odos/odos.service.js +207 -0
  83. package/dist/src/protocols/odos/odos.service.js.map +1 -0
  84. package/dist/src/protocols/odos/odos.types.d.ts +114 -0
  85. package/dist/src/protocols/odos/odos.types.d.ts.map +1 -0
  86. package/dist/src/protocols/odos/odos.types.js +3 -0
  87. package/dist/src/protocols/odos/odos.types.js.map +1 -0
  88. package/dist/src/protocols/okx/index.d.ts +3 -0
  89. package/dist/src/protocols/okx/index.d.ts.map +1 -0
  90. package/dist/src/protocols/okx/index.js +7 -0
  91. package/dist/src/protocols/okx/index.js.map +1 -0
  92. package/dist/src/protocols/okx/okx.service.d.ts +36 -0
  93. package/dist/src/protocols/okx/okx.service.d.ts.map +1 -0
  94. package/dist/src/protocols/okx/okx.service.js +281 -0
  95. package/dist/src/protocols/okx/okx.service.js.map +1 -0
  96. package/dist/src/protocols/okx/okx.types.d.ts +119 -0
  97. package/dist/src/protocols/okx/okx.types.d.ts.map +1 -0
  98. package/dist/src/protocols/okx/okx.types.js +4 -0
  99. package/dist/src/protocols/okx/okx.types.js.map +1 -0
  100. package/dist/src/protocols/okx-bridge/okx-bridge.service.d.ts +1 -0
  101. package/dist/src/protocols/okx-bridge/okx-bridge.service.d.ts.map +1 -0
  102. package/dist/src/protocols/okx-bridge/okx-bridge.service.js +2 -0
  103. package/dist/src/protocols/okx-bridge/okx-bridge.service.js.map +1 -0
  104. package/dist/src/protocols/okx-bridge/okx-bridge.types.d.ts +1 -0
  105. package/dist/src/protocols/okx-bridge/okx-bridge.types.d.ts.map +1 -0
  106. package/dist/src/protocols/okx-bridge/okx-bridge.types.js +2 -0
  107. package/dist/src/protocols/okx-bridge/okx-bridge.types.js.map +1 -0
  108. package/dist/src/protocols/openocean/index.d.ts +3 -0
  109. package/dist/src/protocols/openocean/index.d.ts.map +1 -0
  110. package/dist/src/protocols/openocean/index.js +7 -0
  111. package/dist/src/protocols/openocean/index.js.map +1 -0
  112. package/dist/src/protocols/openocean/openocean.service.d.ts +29 -0
  113. package/dist/src/protocols/openocean/openocean.service.d.ts.map +1 -0
  114. package/dist/src/protocols/openocean/openocean.service.js +181 -0
  115. package/dist/src/protocols/openocean/openocean.service.js.map +1 -0
  116. package/dist/src/protocols/openocean/openocean.types.d.ts +68 -0
  117. package/dist/src/protocols/openocean/openocean.types.d.ts.map +1 -0
  118. package/dist/src/protocols/openocean/openocean.types.js +3 -0
  119. package/dist/src/protocols/openocean/openocean.types.js.map +1 -0
  120. package/dist/src/protocols/pumpfun/index.d.ts +3 -0
  121. package/dist/src/protocols/pumpfun/index.d.ts.map +1 -0
  122. package/dist/src/protocols/pumpfun/index.js +7 -0
  123. package/dist/src/protocols/pumpfun/index.js.map +1 -0
  124. package/dist/src/protocols/pumpfun/pumpfun.service.d.ts +45 -0
  125. package/dist/src/protocols/pumpfun/pumpfun.service.d.ts.map +1 -0
  126. package/dist/src/protocols/pumpfun/pumpfun.service.js +217 -0
  127. package/dist/src/protocols/pumpfun/pumpfun.service.js.map +1 -0
  128. package/dist/src/protocols/pumpfun/pumpfun.types.d.ts +14 -0
  129. package/dist/src/protocols/pumpfun/pumpfun.types.d.ts.map +1 -0
  130. package/dist/src/protocols/pumpfun/pumpfun.types.js +3 -0
  131. package/dist/src/protocols/pumpfun/pumpfun.types.js.map +1 -0
  132. package/dist/src/protocols/raydium/index.d.ts +3 -0
  133. package/dist/src/protocols/raydium/index.d.ts.map +1 -0
  134. package/dist/src/protocols/raydium/index.js +7 -0
  135. package/dist/src/protocols/raydium/index.js.map +1 -0
  136. package/dist/src/protocols/raydium/raydium-v2.service.d.ts +35 -0
  137. package/dist/src/protocols/raydium/raydium-v2.service.d.ts.map +1 -0
  138. package/dist/src/protocols/raydium/raydium-v2.service.js +301 -0
  139. package/dist/src/protocols/raydium/raydium-v2.service.js.map +1 -0
  140. package/dist/src/protocols/raydium/raydium-v2.types.d.ts +96 -0
  141. package/dist/src/protocols/raydium/raydium-v2.types.d.ts.map +1 -0
  142. package/dist/src/protocols/raydium/raydium-v2.types.js +3 -0
  143. package/dist/src/protocols/raydium/raydium-v2.types.js.map +1 -0
  144. package/dist/src/protocols/zeroX/index.d.ts +3 -0
  145. package/dist/src/protocols/zeroX/index.d.ts.map +1 -0
  146. package/dist/src/protocols/zeroX/index.js +7 -0
  147. package/dist/src/protocols/zeroX/index.js.map +1 -0
  148. package/dist/src/protocols/zeroX/zeroX.service.d.ts +37 -0
  149. package/dist/src/protocols/zeroX/zeroX.service.d.ts.map +1 -0
  150. package/dist/src/protocols/zeroX/zeroX.service.js +209 -0
  151. package/dist/src/protocols/zeroX/zeroX.service.js.map +1 -0
  152. package/dist/src/protocols/zeroX/zeroX.types.d.ts +120 -0
  153. package/dist/src/protocols/zeroX/zeroX.types.d.ts.map +1 -0
  154. package/dist/src/protocols/zeroX/zeroX.types.js +3 -0
  155. package/dist/src/protocols/zeroX/zeroX.types.js.map +1 -0
  156. package/dist/src/types/enums.d.ts +42 -0
  157. package/dist/src/types/enums.d.ts.map +1 -0
  158. package/dist/src/types/enums.js +49 -0
  159. package/dist/src/types/enums.js.map +1 -0
  160. package/dist/src/types/intents-protocols.d.ts +89 -0
  161. package/dist/src/types/intents-protocols.d.ts.map +1 -0
  162. package/dist/src/types/intents-protocols.js +3 -0
  163. package/dist/src/types/intents-protocols.js.map +1 -0
  164. package/dist/src/types/price-response.d.ts +26 -0
  165. package/dist/src/types/price-response.d.ts.map +1 -0
  166. package/dist/src/types/price-response.js +3 -0
  167. package/dist/src/types/price-response.js.map +1 -0
  168. package/dist/src/types/quote-response.d.ts +31 -0
  169. package/dist/src/types/quote-response.d.ts.map +1 -0
  170. package/dist/src/types/quote-response.js +3 -0
  171. package/dist/src/types/quote-response.js.map +1 -0
  172. package/dist/src/utils/address-validation.d.ts +9 -0
  173. package/dist/src/utils/address-validation.d.ts.map +1 -0
  174. package/dist/src/utils/address-validation.js +42 -0
  175. package/dist/src/utils/address-validation.js.map +1 -0
  176. package/dist/src/utils/address.d.ts +9 -0
  177. package/dist/src/utils/address.d.ts.map +1 -0
  178. package/dist/src/utils/address.js +74 -0
  179. package/dist/src/utils/address.js.map +1 -0
  180. package/dist/src/utils/base64-to-base58.d.ts +2 -0
  181. package/dist/src/utils/base64-to-base58.d.ts.map +1 -0
  182. package/dist/src/utils/base64-to-base58.js +22 -0
  183. package/dist/src/utils/base64-to-base58.js.map +1 -0
  184. package/dist/src/utils/chain-id-name.d.ts +3 -0
  185. package/dist/src/utils/chain-id-name.d.ts.map +1 -0
  186. package/dist/src/utils/chain-id-name.js +23 -0
  187. package/dist/src/utils/chain-id-name.js.map +1 -0
  188. package/dist/src/utils/check-vm.d.ts +8 -0
  189. package/dist/src/utils/check-vm.d.ts.map +1 -0
  190. package/dist/src/utils/check-vm.js +39 -0
  191. package/dist/src/utils/check-vm.js.map +1 -0
  192. package/dist/src/utils/constants.d.ts +7 -0
  193. package/dist/src/utils/constants.d.ts.map +1 -0
  194. package/dist/src/utils/constants.js +10 -0
  195. package/dist/src/utils/constants.js.map +1 -0
  196. package/dist/src/utils/create-error-message.d.ts +5 -0
  197. package/dist/src/utils/create-error-message.d.ts.map +1 -0
  198. package/dist/src/utils/create-error-message.js +42 -0
  199. package/dist/src/utils/create-error-message.js.map +1 -0
  200. package/dist/src/utils/fetch-spl-metadata.d.ts +4 -0
  201. package/dist/src/utils/fetch-spl-metadata.d.ts.map +1 -0
  202. package/dist/src/utils/fetch-spl-metadata.js +108 -0
  203. package/dist/src/utils/fetch-spl-metadata.js.map +1 -0
  204. package/dist/src/utils/is-native.d.ts +2 -0
  205. package/dist/src/utils/is-native.d.ts.map +1 -0
  206. package/dist/src/utils/is-native.js +23 -0
  207. package/dist/src/utils/is-native.js.map +1 -0
  208. package/dist/src/utils/logger.d.ts +56 -0
  209. package/dist/src/utils/logger.d.ts.map +1 -0
  210. package/dist/src/utils/logger.js +108 -0
  211. package/dist/src/utils/logger.js.map +1 -0
  212. package/dist/src/utils/throw-error.d.ts +3 -0
  213. package/dist/src/utils/throw-error.d.ts.map +1 -0
  214. package/dist/src/utils/throw-error.js +8 -0
  215. package/dist/src/utils/throw-error.js.map +1 -0
  216. package/dist/tests/core/intent-protocol-suite.test.d.ts +2 -0
  217. package/dist/tests/core/intent-protocol-suite.test.d.ts.map +1 -0
  218. package/dist/tests/core/intent-protocol-suite.test.js +485 -0
  219. package/dist/tests/core/intent-protocol-suite.test.js.map +1 -0
  220. package/dist/tests/core/intents-protocols.test.d.ts +2 -0
  221. package/dist/tests/core/intents-protocols.test.d.ts.map +1 -0
  222. package/dist/tests/core/intents-protocols.test.js +307 -0
  223. package/dist/tests/core/intents-protocols.test.js.map +1 -0
  224. package/dist/tests/core/protocol-test-runner.d.ts +62 -0
  225. package/dist/tests/core/protocol-test-runner.d.ts.map +1 -0
  226. package/dist/tests/core/protocol-test-runner.js +260 -0
  227. package/dist/tests/core/protocol-test-runner.js.map +1 -0
  228. package/dist/tests/core/setup.test.d.ts +1 -0
  229. package/dist/tests/core/setup.test.d.ts.map +1 -0
  230. package/dist/tests/core/setup.test.js +13 -0
  231. package/dist/tests/core/setup.test.js.map +1 -0
  232. package/dist/tests/fixtures/test-data.d.ts +84 -0
  233. package/dist/tests/fixtures/test-data.d.ts.map +1 -0
  234. package/dist/tests/fixtures/test-data.js +142 -0
  235. package/dist/tests/fixtures/test-data.js.map +1 -0
  236. package/dist/tests/integration/cross-chain.test.d.ts +2 -0
  237. package/dist/tests/integration/cross-chain.test.d.ts.map +1 -0
  238. package/dist/tests/integration/cross-chain.test.js +44 -0
  239. package/dist/tests/integration/cross-chain.test.js.map +1 -0
  240. package/dist/tests/protocols/simple-protocol.test.d.ts +2 -0
  241. package/dist/tests/protocols/simple-protocol.test.d.ts.map +1 -0
  242. package/dist/tests/protocols/simple-protocol.test.js +77 -0
  243. package/dist/tests/protocols/simple-protocol.test.js.map +1 -0
  244. package/dist/tests/setup.d.ts +24 -0
  245. package/dist/tests/setup.d.ts.map +1 -0
  246. package/dist/tests/setup.js +48 -0
  247. package/dist/tests/setup.js.map +1 -0
  248. package/dist/tests/utils/test-generator.d.ts +30 -0
  249. package/dist/tests/utils/test-generator.d.ts.map +1 -0
  250. package/dist/tests/utils/test-generator.js +153 -0
  251. package/dist/tests/utils/test-generator.js.map +1 -0
  252. package/package.json +102 -0
@@ -0,0 +1,312 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.GeniusBridgeService = void 0;
7
+ const enums_1 = require("../../types/enums");
8
+ const is_native_1 = require("../../utils/is-native");
9
+ const logger_1 = require("../../utils/logger");
10
+ const throw_error_1 = require("../../utils/throw-error");
11
+ const check_vm_1 = require("../../utils/check-vm");
12
+ const create_error_message_1 = require("../../utils/create-error-message");
13
+ const address_validation_1 = require("../../utils/address-validation");
14
+ const constants_1 = require("../../utils/constants");
15
+ const axios_1 = __importDefault(require("axios"));
16
+ let logger;
17
+ class GeniusBridgeService {
18
+ constructor(config) {
19
+ this.protocol = enums_1.ProtocolEnum.GENIUS_BRIDGE;
20
+ this.chains = [
21
+ enums_1.ChainIdEnum.ETHEREUM,
22
+ enums_1.ChainIdEnum.ARBITRUM,
23
+ enums_1.ChainIdEnum.OPTIMISM,
24
+ enums_1.ChainIdEnum.POLYGON,
25
+ enums_1.ChainIdEnum.BSC,
26
+ enums_1.ChainIdEnum.AVALANCHE,
27
+ enums_1.ChainIdEnum.BASE,
28
+ enums_1.ChainIdEnum.SOLANA,
29
+ // Add other supported chains
30
+ ];
31
+ this.singleChain = false;
32
+ this.multiChain = true;
33
+ if (config?.debug) {
34
+ logger_1.LoggerFactory.configure(logger_1.LoggerFactory.createConsoleLogger({ level: logger_1.LogLevelEnum.DEBUG }));
35
+ }
36
+ // Use custom logger if provided
37
+ else if (config?.logger) {
38
+ logger_1.LoggerFactory.configure(config.logger);
39
+ }
40
+ logger = logger_1.LoggerFactory.getLogger();
41
+ // Apply configuration with defaults
42
+ this.baseUrl =
43
+ config?.geniusBridgeBaseUrl ||
44
+ 'http://genius-bridge-staging-894762848.us-east-2.elb.amazonaws.com';
45
+ this.priceEndpoint = '/quoting/price';
46
+ this.quoteEndpoint = '/quoting/quote';
47
+ }
48
+ isCorrectConfig(_config) {
49
+ // GeniusBridge has no required config fields, all are optional
50
+ return true;
51
+ }
52
+ async fetchPrice(params) {
53
+ try {
54
+ this.validatePriceParams(params);
55
+ const transformedParams = this.transformPriceParams(params);
56
+ const response = await this.makeGeniusBridgePriceRequest(transformedParams);
57
+ if (response instanceof Error) {
58
+ throw response;
59
+ }
60
+ logger.debug('Successfully received price info from GeniusBridge', {
61
+ amountOut: response.amountOut,
62
+ tokenIn: response.tokenIn,
63
+ tokenOut: response.tokenOut,
64
+ });
65
+ return {
66
+ protocol: this.protocol,
67
+ networkIn: params.networkIn,
68
+ networkOut: params.networkOut,
69
+ tokenIn: params.tokenIn,
70
+ tokenOut: params.tokenOut,
71
+ amountIn: params.amountIn,
72
+ amountOut: response.amountOut,
73
+ estimatedGas: '0', // GeniusBridge doesn't provide gas estimates in price response
74
+ slippage: params.slippage,
75
+ priceImpact: undefined, // GeniusBridge doesn't provide price impact
76
+ protocolResponse: response,
77
+ };
78
+ }
79
+ catch (error) {
80
+ const { errorMessage, errorMessageError } = (0, create_error_message_1.createErrorMessage)(error);
81
+ logger.error(`Failed to fetch price from ${this.protocol}`, errorMessageError);
82
+ throw (0, throw_error_1.sdkError)(enums_1.SdkErrorEnum.PRICE_NOT_FOUND, `Failed to fetch GeniusBridge price, error: ${errorMessage}`);
83
+ }
84
+ }
85
+ async fetchQuote(params) {
86
+ try {
87
+ this.validateQuoteParams(params);
88
+ const transformedParams = this.transformQuoteParams(params);
89
+ const priceResponse = await this.makeGeniusBridgePriceRequest(transformedParams);
90
+ if (priceResponse instanceof Error) {
91
+ throw priceResponse;
92
+ }
93
+ const response = await this.makeGeniusBridgeQuoteRequest({
94
+ ...transformedParams,
95
+ priceResponse,
96
+ });
97
+ if (response instanceof Error) {
98
+ throw response;
99
+ }
100
+ let approvalRequired = false;
101
+ if (response.approvalRequired) {
102
+ approvalRequired = {
103
+ spender: response.approvalRequired.spender,
104
+ amount: response.approvalRequired.amount,
105
+ };
106
+ }
107
+ logger.debug('Successfully received quote info from GeniusBridge', {
108
+ amountOut: response.amountOut,
109
+ minAmountOut: response.minAmountOut,
110
+ fee: response.fee,
111
+ });
112
+ let evmTransactionData = undefined;
113
+ let svmTransactionData = undefined;
114
+ if (response.evmExecutionPayload) {
115
+ evmTransactionData = {
116
+ from: params.from,
117
+ to: response.evmExecutionPayload?.to || '',
118
+ data: response.evmExecutionPayload?.data || '',
119
+ value: response.evmExecutionPayload?.value || '0',
120
+ gasPrice: response.evmExecutionPayload?.gasPrice || '0',
121
+ gasLimit: response.evmExecutionPayload?.gasLimit || '0',
122
+ };
123
+ }
124
+ if (response.svmExecutionPayload) {
125
+ svmTransactionData = response.svmExecutionPayload || [];
126
+ }
127
+ if ((!svmTransactionData || !svmTransactionData.length) && !evmTransactionData) {
128
+ logger.error('GeniusBridge execution payload is missing');
129
+ throw (0, throw_error_1.sdkError)(enums_1.SdkErrorEnum.QUOTE_NOT_FOUND, 'GeniusBridge execution payload is missing in the quote response');
130
+ }
131
+ return {
132
+ protocol: this.protocol,
133
+ networkIn: params.networkIn,
134
+ networkOut: params.networkOut,
135
+ tokenIn: params.tokenIn,
136
+ tokenOut: params.tokenOut,
137
+ amountIn: params.amountIn,
138
+ amountOut: response.amountOut,
139
+ slippage: params.slippage,
140
+ priceImpact: undefined, // GeniusBridge doesn't provide price impact
141
+ from: params.from,
142
+ receiver: params.receiver || params.from,
143
+ executionPayload: evmTransactionData
144
+ ? {
145
+ transactionData: evmTransactionData,
146
+ approvalRequired,
147
+ }
148
+ : { transactionData: svmTransactionData || [] },
149
+ protocolResponse: response,
150
+ };
151
+ }
152
+ catch (error) {
153
+ const { errorMessage, errorMessageError } = (0, create_error_message_1.createErrorMessage)(error);
154
+ logger.error(`Failed to fetch quote from ${this.protocol}`, errorMessageError);
155
+ throw (0, throw_error_1.sdkError)(enums_1.SdkErrorEnum.QUOTE_NOT_FOUND, `Failed to fetch GeniusBridge quote, error: ${errorMessage}`);
156
+ }
157
+ }
158
+ async makeGeniusBridgePriceRequest(params) {
159
+ const url = `${this.baseUrl}${this.priceEndpoint}`;
160
+ logger.debug('Making GeniusBridge price request', {
161
+ networkIn: params.networkIn,
162
+ networkOut: params.networkOut,
163
+ tokenIn: params.tokenIn,
164
+ tokenOut: params.tokenOut,
165
+ amountIn: params.amountIn,
166
+ });
167
+ try {
168
+ const response = await axios_1.default.post(url, params);
169
+ return response.data;
170
+ }
171
+ catch (error) {
172
+ const { errorMessage, errorMessageError } = (0, create_error_message_1.createErrorMessage)(error);
173
+ logger.error('Failed to fetch price from GeniusBridge', errorMessageError);
174
+ throw (0, throw_error_1.sdkError)(enums_1.SdkErrorEnum.PRICE_NOT_FOUND, `Failed to fetch GeniusBridge price: ${errorMessage}`);
175
+ }
176
+ }
177
+ async makeGeniusBridgeQuoteRequest(params) {
178
+ const url = `${this.baseUrl}${this.quoteEndpoint}`;
179
+ try {
180
+ const response = await axios_1.default.post(url, params);
181
+ return response.data;
182
+ }
183
+ catch (error) {
184
+ const { errorMessage, errorMessageError } = (0, create_error_message_1.createErrorMessage)(error);
185
+ logger.error('Failed to fetch quote from GeniusBridge', errorMessageError);
186
+ throw (0, throw_error_1.sdkError)(enums_1.SdkErrorEnum.QUOTE_NOT_FOUND, `Failed to fetch GeniusBridge quote: ${errorMessage}`);
187
+ }
188
+ }
189
+ validatePriceParams(params) {
190
+ const { networkIn, networkOut, tokenIn, tokenOut, amountIn } = params;
191
+ if (networkIn === networkOut) {
192
+ logger.error('Single chain swaps are not supported by GeniusBridge');
193
+ throw (0, throw_error_1.sdkError)(enums_1.SdkErrorEnum.INVALID_PARAMS, 'Single chain swaps are not supported by GeniusBridge');
194
+ }
195
+ if (!this.chains.includes(networkIn)) {
196
+ logger.error(`Network ${networkIn} not supported by GeniusBridge`);
197
+ throw (0, throw_error_1.sdkError)(enums_1.SdkErrorEnum.INVALID_PARAMS, `Network ${networkIn} not supported by GeniusBridge`);
198
+ }
199
+ if (!this.chains.includes(networkOut)) {
200
+ logger.error(`Network ${networkOut} not supported by GeniusBridge`);
201
+ throw (0, throw_error_1.sdkError)(enums_1.SdkErrorEnum.INVALID_PARAMS, `Network ${networkOut} not supported by GeniusBridge`);
202
+ }
203
+ if (amountIn === '0') {
204
+ logger.error('Amount in must be greater than 0');
205
+ throw (0, throw_error_1.sdkError)(enums_1.SdkErrorEnum.INVALID_PARAMS, 'Amount in must be greater than 0');
206
+ }
207
+ // Validate token addresses based on network type
208
+ if ((0, check_vm_1.isSolanaNetwork)(networkIn)) {
209
+ try {
210
+ (0, address_validation_1.validateSolanaAddress)(tokenIn);
211
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
212
+ }
213
+ catch (error) {
214
+ logger.error(`Invalid Solana token address: ${tokenIn}`);
215
+ throw (0, throw_error_1.sdkError)(enums_1.SdkErrorEnum.INVALID_PARAMS, `Invalid Solana token address: ${tokenIn}`);
216
+ }
217
+ }
218
+ else if ((0, check_vm_1.isEVMNetwork)(networkIn) && !(0, is_native_1.isNative)(tokenIn)) {
219
+ try {
220
+ (0, address_validation_1.validateAndChecksumEvmAddress)(tokenIn);
221
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
222
+ }
223
+ catch (error) {
224
+ logger.error(`Invalid EVM token address: ${tokenIn}`);
225
+ throw (0, throw_error_1.sdkError)(enums_1.SdkErrorEnum.INVALID_PARAMS, `Invalid EVM token address: ${tokenIn}`);
226
+ }
227
+ }
228
+ if ((0, check_vm_1.isSolanaNetwork)(networkOut)) {
229
+ try {
230
+ (0, address_validation_1.validateSolanaAddress)(tokenOut);
231
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
232
+ }
233
+ catch (error) {
234
+ logger.error(`Invalid Solana token address: ${tokenOut}`);
235
+ throw (0, throw_error_1.sdkError)(enums_1.SdkErrorEnum.INVALID_PARAMS, `Invalid Solana token address: ${tokenOut}`);
236
+ }
237
+ }
238
+ else if ((0, check_vm_1.isEVMNetwork)(networkOut) && !(0, is_native_1.isNative)(tokenOut)) {
239
+ try {
240
+ (0, address_validation_1.validateAndChecksumEvmAddress)(tokenOut);
241
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
242
+ }
243
+ catch (error) {
244
+ logger.error(`Invalid EVM token address: ${tokenOut}`);
245
+ throw (0, throw_error_1.sdkError)(enums_1.SdkErrorEnum.INVALID_PARAMS, `Invalid EVM token address: ${tokenOut}`);
246
+ }
247
+ }
248
+ }
249
+ validateQuoteParams(params) {
250
+ this.validatePriceParams(params);
251
+ if (!params.from) {
252
+ logger.error('From address is required for quote');
253
+ throw (0, throw_error_1.sdkError)(enums_1.SdkErrorEnum.INVALID_PARAMS, 'From address is required for quote');
254
+ }
255
+ // Verify 'to' address if provided
256
+ if (params.receiver) {
257
+ if ((0, check_vm_1.isSolanaNetwork)(params.networkOut)) {
258
+ try {
259
+ (0, address_validation_1.validateSolanaAddress)(params.receiver);
260
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
261
+ }
262
+ catch (error) {
263
+ logger.error(`Invalid Solana receiver address: ${params.receiver}`);
264
+ throw (0, throw_error_1.sdkError)(enums_1.SdkErrorEnum.INVALID_PARAMS, `Invalid Solana receiver address: ${params.receiver}`);
265
+ }
266
+ }
267
+ else if ((0, check_vm_1.isEVMNetwork)(params.networkOut)) {
268
+ try {
269
+ (0, address_validation_1.validateAndChecksumEvmAddress)(params.receiver);
270
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
271
+ }
272
+ catch (error) {
273
+ logger.error(`Invalid EVM receiver address: ${params.receiver}`);
274
+ throw (0, throw_error_1.sdkError)(enums_1.SdkErrorEnum.INVALID_PARAMS, `Invalid EVM receiver address: ${params.receiver}`);
275
+ }
276
+ }
277
+ }
278
+ }
279
+ transformPriceParams(params) {
280
+ let { networkIn, networkOut, tokenIn, tokenOut } = params;
281
+ const { amountIn, slippage, from } = params;
282
+ // Handle token address transformation
283
+ if ((0, check_vm_1.isEVMNetwork)(networkIn) && (0, is_native_1.isNative)(tokenIn)) {
284
+ tokenIn = constants_1.NATIVE_ADDRESS;
285
+ }
286
+ if ((0, check_vm_1.isEVMNetwork)(networkOut) && (0, is_native_1.isNative)(tokenOut)) {
287
+ tokenOut = constants_1.NATIVE_ADDRESS;
288
+ }
289
+ return {
290
+ networkIn,
291
+ networkOut,
292
+ tokenIn,
293
+ tokenOut,
294
+ amountIn,
295
+ slippage,
296
+ from,
297
+ };
298
+ }
299
+ transformQuoteParams(params) {
300
+ const transformedPriceParams = this.transformPriceParams(params);
301
+ return {
302
+ ...transformedPriceParams,
303
+ to: params.receiver || params.from,
304
+ authority: {
305
+ networkInAddress: params.from,
306
+ networkOutAddress: params.receiver || params.from,
307
+ },
308
+ };
309
+ }
310
+ }
311
+ exports.GeniusBridgeService = GeniusBridgeService;
312
+ //# sourceMappingURL=genius-bridge.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"genius-bridge.service.js","sourceRoot":"","sources":["../../../../src/protocols/genius-bridge/genius-bridge.service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,100 @@
1
+ import { ChainIdEnum } from '../../types/enums';
2
+ export type GeniusBridgeConfig = {
3
+ geniusBridgeBaseUrl?: string;
4
+ };
5
+ export type PermitDetails = {
6
+ token: string;
7
+ amount: string;
8
+ expiration: number;
9
+ nonce: number;
10
+ };
11
+ export type PermitSingle = {
12
+ details: PermitDetails;
13
+ spender: string;
14
+ sigDeadline: string;
15
+ };
16
+ export type PermitBatch = {
17
+ details: PermitDetails[];
18
+ spender: string;
19
+ sigDeadline: string;
20
+ };
21
+ export type PermitSignatureParams = {
22
+ types: unknown;
23
+ domain: {
24
+ name: string;
25
+ number: number;
26
+ verifyingContract: string;
27
+ };
28
+ message: PermitBatch;
29
+ };
30
+ export type Permit = {
31
+ signature: string;
32
+ permitBatch: PermitBatch;
33
+ };
34
+ export type Authority = {
35
+ networkInAddress: string;
36
+ networkOutAddress: string;
37
+ };
38
+ export type GeniusBridgePriceParams = {
39
+ networkIn: number;
40
+ networkOut: number;
41
+ tokenIn: string;
42
+ tokenOut: string;
43
+ amountIn: string;
44
+ slippage: number;
45
+ from: string;
46
+ callTarget?: string;
47
+ callData?: string;
48
+ };
49
+ export type GeniusBridgeQuoteParams = GeniusBridgePriceParams & {
50
+ priceResponse?: GeniusBridgePriceResponse;
51
+ to: string;
52
+ authority?: Authority;
53
+ permit?: Permit;
54
+ };
55
+ export type EvmArbitraryCall = {
56
+ from?: string;
57
+ to: string;
58
+ data: string;
59
+ value: string;
60
+ gasPrice?: string;
61
+ gasLimit?: string;
62
+ };
63
+ export type GeniusBridgeFeesBreakdown = {
64
+ base: string;
65
+ bps: string;
66
+ insurance: string;
67
+ swapOut?: string;
68
+ call?: string;
69
+ total: string;
70
+ };
71
+ export type ApprovalRequired = {
72
+ spender: string;
73
+ amount: string;
74
+ payload: EvmArbitraryCall;
75
+ };
76
+ export type GeniusBaseBridgeResponse = {
77
+ tokenIn: string;
78
+ tokenOut: string;
79
+ networkIn: ChainIdEnum;
80
+ networkOut: ChainIdEnum;
81
+ amountIn: string;
82
+ amountOut: string;
83
+ minAmountOut: string;
84
+ slippage: number;
85
+ fee: string;
86
+ feesDetails: GeniusBridgeFeesBreakdown;
87
+ arbitraryCall?: EvmArbitraryCall;
88
+ };
89
+ export type GeniusBridgePriceResponse = GeniusBaseBridgeResponse & {
90
+ swapInAmountOut?: string;
91
+ swapOutAmountOut?: string;
92
+ permit2ToSign?: PermitSignatureParams;
93
+ };
94
+ export type GeniusBridgeQuoteResponse = GeniusBaseBridgeResponse & {
95
+ seed: string;
96
+ evmExecutionPayload?: EvmArbitraryCall;
97
+ svmExecutionPayload?: string[];
98
+ approvalRequired?: ApprovalRequired | null;
99
+ };
100
+ //# sourceMappingURL=genius-bridge.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"genius-bridge.types.d.ts","sourceRoot":"","sources":["../../../../src/protocols/genius-bridge/genius-bridge.types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=genius-bridge.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"genius-bridge.types.js","sourceRoot":"","sources":["../../../../src/protocols/genius-bridge/genius-bridge.types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,3 @@
1
+ export { GeniusBridgeService } from './genius-bridge.service';
2
+ export type { GeniusBridgeConfig, PermitDetails, PermitSingle, PermitBatch, PermitSignatureParams, Permit, Authority, GeniusBridgePriceParams, GeniusBridgeQuoteParams, EvmArbitraryCall, GeniusBridgeFeesBreakdown, ApprovalRequired, GeniusBaseBridgeResponse, GeniusBridgePriceResponse, GeniusBridgeQuoteResponse, } from './genius-bridge.types';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/protocols/genius-bridge/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,YAAY,EACV,kBAAkB,EAClB,aAAa,EACb,YAAY,EACZ,WAAW,EACX,qBAAqB,EACrB,MAAM,EACN,SAAS,EACT,uBAAuB,EACvB,uBAAuB,EACvB,gBAAgB,EAChB,yBAAyB,EACzB,gBAAgB,EAChB,wBAAwB,EACxB,yBAAyB,EACzB,yBAAyB,GAC1B,MAAM,uBAAuB,CAAC"}
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.GeniusBridgeService = void 0;
4
+ // Genius Bridge Protocol - All exports
5
+ var genius_bridge_service_1 = require("./genius-bridge.service");
6
+ Object.defineProperty(exports, "GeniusBridgeService", { enumerable: true, get: function () { return genius_bridge_service_1.GeniusBridgeService; } });
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/protocols/genius-bridge/index.ts"],"names":[],"mappings":";;;AAAA,uCAAuC;AACvC,iEAA8D;AAArD,4HAAA,mBAAmB,OAAA"}
@@ -0,0 +1,3 @@
1
+ export { JupiterService } from './jupiter.service';
2
+ export type { JupiterConfig, JupiterSwapPlatformFee, JupiterSwapRoutePlanSwapInfo, JupiterSwapRoutePlan, JupiterPriceResponse, ComputeBudgetInstruction, SetupInstruction, Instructions, JupiterPriceUrlParams, JupiterSwapUrlParams, JupiterTransactionData, JupiterQuoteResponses, } from './jupiter.types';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/protocols/jupiter/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,YAAY,EACV,aAAa,EACb,sBAAsB,EACtB,4BAA4B,EAC5B,oBAAoB,EACpB,oBAAoB,EACpB,wBAAwB,EACxB,gBAAgB,EAChB,YAAY,EACZ,qBAAqB,EACrB,oBAAoB,EACpB,sBAAsB,EACtB,qBAAqB,GACtB,MAAM,iBAAiB,CAAC"}
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.JupiterService = void 0;
4
+ // Jupiter Protocol - All exports
5
+ var jupiter_service_1 = require("./jupiter.service");
6
+ Object.defineProperty(exports, "JupiterService", { enumerable: true, get: function () { return jupiter_service_1.JupiterService; } });
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/protocols/jupiter/index.ts"],"names":[],"mappings":";;;AAAA,iCAAiC;AACjC,qDAAmD;AAA1C,iHAAA,cAAc,OAAA"}
@@ -0,0 +1,37 @@
1
+ import { IIntentProtocol } from '../../interfaces/intent-protocol';
2
+ import { ChainIdEnum, ProtocolEnum } from '../../types/enums';
3
+ import { IntentPriceParams } from '../../types/price-params';
4
+ import { PriceResponse, RawProtocolPriceResponse } from '../../types/price-response';
5
+ import { IntentQuoteParams } from '../../types/quote-params';
6
+ import { QuoteResponse } from '../../types/quote-response';
7
+ import { IntentsSDKConfig } from '../../types/sdk-config';
8
+ import { JupiterConfig, JupiterPriceResponse, JupiterPriceUrlParams, JupiterSwapUrlParams } from './jupiter.types';
9
+ export declare class JupiterService implements IIntentProtocol {
10
+ readonly protocol = ProtocolEnum.JUPITER;
11
+ readonly chains: ChainIdEnum[];
12
+ readonly singleChain = true;
13
+ readonly multiChain = false;
14
+ protected readonly priceParamOverrides: Partial<JupiterPriceUrlParams>;
15
+ protected readonly quoteParamOverrides: Partial<JupiterSwapUrlParams>;
16
+ readonly priceEndpoint: string;
17
+ readonly quoteEndpoint: string;
18
+ readonly assemblyEndpoint: string;
19
+ baseUrl: string;
20
+ constructor(config?: IntentsSDKConfig & JupiterConfig);
21
+ isCorrectConfig<T extends {
22
+ [key: string]: string;
23
+ }>(_config: {
24
+ [key: string]: string;
25
+ }): _config is T;
26
+ fetchPrice(params: IntentPriceParams): Promise<PriceResponse>;
27
+ fetchQuote(params: IntentQuoteParams): Promise<QuoteResponse>;
28
+ protected priceParamsToRequestParams(params: {
29
+ tokenIn: string;
30
+ tokenOut: string;
31
+ amountIn: string;
32
+ slippage: number;
33
+ from?: string;
34
+ }): JupiterPriceUrlParams;
35
+ protected isJupiterPriceResponse(response: RawProtocolPriceResponse): response is JupiterPriceResponse;
36
+ }
37
+ //# sourceMappingURL=jupiter.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jupiter.service.d.ts","sourceRoot":"","sources":["../../../../src/protocols/jupiter/jupiter.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,YAAY,EAAgB,MAAM,mBAAmB,CAAC;AAC5E,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACrF,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAK1D,OAAO,EACL,aAAa,EACb,oBAAoB,EACpB,qBAAqB,EACrB,oBAAoB,EAErB,MAAM,iBAAiB,CAAC;AAMzB,qBAAa,cAAe,YAAW,eAAe;IACpD,SAAgB,QAAQ,wBAAwB;IAChD,SAAgB,MAAM,gBAAwB;IAC9C,SAAgB,WAAW,QAAQ;IACnC,SAAgB,UAAU,SAAS;IAEnC,SAAS,CAAC,QAAQ,CAAC,mBAAmB,EAAE,OAAO,CAAC,qBAAqB,CAAC,CAIpE;IACF,SAAS,CAAC,QAAQ,CAAC,mBAAmB,EAAE,OAAO,CAAC,oBAAoB,CAAC,CAKnE;IACF,SAAgB,aAAa,EAAE,MAAM,CAAY;IACjD,SAAgB,aAAa,EAAE,MAAM,CAAwB;IAC7D,SAAgB,gBAAgB,EAAE,MAAM,CAAW;IAE5C,OAAO,EAAE,MAAM,CAAC;gBAEX,MAAM,CAAC,EAAE,gBAAgB,GAAG,aAAa;IAcrD,eAAe,CAAC,CAAC,SAAS;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,EAAE,OAAO,EAAE;QAC5D,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;KACvB,GAAG,OAAO,IAAI,CAAC;IAKH,UAAU,CAAC,MAAM,EAAE,iBAAiB,GAAG,OAAO,CAAC,aAAa,CAAC;IAmE7D,UAAU,CAAC,MAAM,EAAE,iBAAiB,GAAG,OAAO,CAAC,aAAa,CAAC;IAmG1E,SAAS,CAAC,0BAA0B,CAAC,MAAM,EAAE;QAC3C,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,EAAE,MAAM,CAAC;QACjB,QAAQ,EAAE,MAAM,CAAC;QACjB,QAAQ,EAAE,MAAM,CAAC;QACjB,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,GAAG,qBAAqB;IAWzB,SAAS,CAAC,sBAAsB,CAC9B,QAAQ,EAAE,wBAAwB,GACjC,QAAQ,IAAI,oBAAoB;CAKpC"}