@shogun-sdk/intents-sdk 1.2.6-test.12 → 1.2.6-test.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +43 -23
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +23 -12
- package/dist/index.d.ts +23 -12
- package/dist/index.js +43 -23
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
- package/src/auth/siwe.ts +8 -2
- package/src/constants.ts +4 -0
- package/src/core/evm/intent-helpers.ts +11 -6
- package/src/core/orders/api/fetch.ts +6 -2
- package/src/core/orders/common.ts +2 -0
- package/src/core/orders/cross-chain.ts +12 -8
- package/src/core/orders/single-chain.ts +10 -6
- package/src/core/sdk.ts +6 -2
- package/src/core/solana/intent-helpers.ts +5 -3
- package/src/core/sui/intent-helpers.ts +8 -5
- package/src/utils/quote/aggregator.ts +10 -24
package/dist/index.cjs
CHANGED
|
@@ -144,7 +144,7 @@ function isNativeEvmToken(tokenAddress) {
|
|
|
144
144
|
const normalizedAddress = tokenAddress.toLowerCase();
|
|
145
145
|
return NATIVE_EVM_ETH_ADDRESSES.some((addr) => addr.toLowerCase() === normalizedAddress);
|
|
146
146
|
}
|
|
147
|
-
var import_kit, useProdConfig, IntentsOrderType, PERMIT2_ADDRESS, PROD_CROSS_CHAIN_GUARD_ADDRESSES, TEST_CROSS_CHAIN_GUARD_ADDRESSES, PROD_SINGLE_CHAIN_GUARD_ADDRESSES, TEST_SINGLE_CHAIN_GUARD_ADDRESSES, PROD_DCA_SINGLE_CHAIN_GUARD_ADDRESSES, PROD_DCA_CROSS_CHAIN_GUARD_ADDRESSES, TEST_DCA_SINGLE_CHAIN_GUARD_ADDRESSES, CROSS_CHAIN_GUARD_ADDRESSES, SINGLE_CHAIN_GUARD_ADDRESSES, DCA_SINGLE_CHAIN_GUARD_ADDRESSES, NATIVE_SOLANA_TOKEN_ADDRESS, WRAPPED_SOL_MINT_ADDRESS, SOLANA_USDC_MINT, SOLANA_MINT_TOKEN, PROD_SUI_PACKAGE_ID, TEST_SUI_PACKAGE_ID, SUI_PACKAGE_ID, SUI_GUARD_COLLATERAL_TYPE, SUI_GUARD_STABLECOIN_TYPE, AUCTIONEER_URL, MAX_UINT_32, MAX_UINT_64, MAX_UINT_128, MAX_UINT_256, NATIVE_EVM_ETH_ADDRESSES, WRAPPED_ETH_ADDRESSES, NATIVE_SUI_TOKEN_ADDRESS, TOKEN_SEARCH_API_BASE_URL;
|
|
147
|
+
var import_kit, useProdConfig, IntentsOrderType, PERMIT2_ADDRESS, PROD_CROSS_CHAIN_GUARD_ADDRESSES, TEST_CROSS_CHAIN_GUARD_ADDRESSES, PROD_SINGLE_CHAIN_GUARD_ADDRESSES, TEST_SINGLE_CHAIN_GUARD_ADDRESSES, PROD_DCA_SINGLE_CHAIN_GUARD_ADDRESSES, PROD_DCA_CROSS_CHAIN_GUARD_ADDRESSES, TEST_DCA_SINGLE_CHAIN_GUARD_ADDRESSES, CROSS_CHAIN_GUARD_ADDRESSES, SINGLE_CHAIN_GUARD_ADDRESSES, DCA_SINGLE_CHAIN_GUARD_ADDRESSES, NATIVE_SOLANA_TOKEN_ADDRESS, WRAPPED_SOL_MINT_ADDRESS, SOLANA_USDC_MINT, SOLANA_MINT_TOKEN, PROD_SUI_PACKAGE_ID, TEST_SUI_PACKAGE_ID, SUI_PACKAGE_ID, SUI_GUARD_COLLATERAL_TYPE, SUI_GUARD_STABLECOIN_TYPE, AUCTIONEER_URL, MAX_UINT_32, MAX_UINT_64, MAX_UINT_128, MAX_UINT_256, NATIVE_EVM_ETH_ADDRESSES, WRAPPED_ETH_ADDRESSES, NATIVE_SUI_TOKEN_ADDRESS, TOKEN_SEARCH_API_BASE_URL, DEV_ACCESS_KEY;
|
|
148
148
|
var init_constants = __esm({
|
|
149
149
|
"src/constants.ts"() {
|
|
150
150
|
"use strict";
|
|
@@ -260,6 +260,7 @@ var init_constants = __esm({
|
|
|
260
260
|
};
|
|
261
261
|
NATIVE_SUI_TOKEN_ADDRESS = "0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI";
|
|
262
262
|
TOKEN_SEARCH_API_BASE_URL = "https://shogun-token-search-api-825534211396.europe-west4.run.app";
|
|
263
|
+
DEV_ACCESS_KEY = typeof window !== "undefined" ? localStorage.getItem("x-dev-access") : null;
|
|
263
264
|
}
|
|
264
265
|
});
|
|
265
266
|
|
|
@@ -375,6 +376,7 @@ __export(index_exports, {
|
|
|
375
376
|
ChainType: () => ChainType,
|
|
376
377
|
CrossChainOrder: () => CrossChainOrder,
|
|
377
378
|
DCA_SINGLE_CHAIN_GUARD_ADDRESSES: () => DCA_SINGLE_CHAIN_GUARD_ADDRESSES,
|
|
379
|
+
DEV_ACCESS_KEY: () => DEV_ACCESS_KEY,
|
|
378
380
|
DcaSingleChainOrder: () => DcaSingleChainOrder,
|
|
379
381
|
EVMSDK: () => EVMSDK,
|
|
380
382
|
IntentsOrderType: () => IntentsOrderType,
|
|
@@ -6370,8 +6372,9 @@ var CrossChainOrder = class _CrossChainOrder {
|
|
|
6370
6372
|
__publicField(this, "deadline");
|
|
6371
6373
|
/** Extra transfers to be made */
|
|
6372
6374
|
__publicField(this, "extraTransfers");
|
|
6373
|
-
/** Stop loss
|
|
6374
|
-
__publicField(this, "
|
|
6375
|
+
/** Stop loss */
|
|
6376
|
+
__publicField(this, "stopLossType");
|
|
6377
|
+
__publicField(this, "stopLossTriggerPrice");
|
|
6375
6378
|
/** Take profit min out */
|
|
6376
6379
|
__publicField(this, "takeProfitMinOut");
|
|
6377
6380
|
this.user = params.user;
|
|
@@ -6385,7 +6388,8 @@ var CrossChainOrder = class _CrossChainOrder {
|
|
|
6385
6388
|
this.minStablecoinAmount = params.minStablecoinAmount ?? 1n;
|
|
6386
6389
|
this.deadline = params.deadline;
|
|
6387
6390
|
this.extraTransfers = params.extraTransfers;
|
|
6388
|
-
this.
|
|
6391
|
+
this.stopLossType = params.stopLossType;
|
|
6392
|
+
this.stopLossTriggerPrice = params.stopLossTriggerPrice;
|
|
6389
6393
|
this.takeProfitMinOut = params.takeProfitMinOut;
|
|
6390
6394
|
}
|
|
6391
6395
|
/**
|
|
@@ -6437,8 +6441,8 @@ var CrossChainOrder = class _CrossChainOrder {
|
|
|
6437
6441
|
}
|
|
6438
6442
|
}
|
|
6439
6443
|
static async calculateAmountOutMin(input) {
|
|
6440
|
-
const { destinationTokenMinAmount,
|
|
6441
|
-
if (
|
|
6444
|
+
const { destinationTokenMinAmount, stopLossType, stopLossTriggerPrice, minStablecoinAmount } = input;
|
|
6445
|
+
if (stopLossType !== void 0 && stopLossTriggerPrice !== void 0) {
|
|
6442
6446
|
return {
|
|
6443
6447
|
destinationTokenMinAmount: 1n,
|
|
6444
6448
|
minStablecoinAmount: 1n
|
|
@@ -6591,7 +6595,8 @@ var SingleChainOrder = class _SingleChainOrder {
|
|
|
6591
6595
|
__publicField(this, "destinationAddress");
|
|
6592
6596
|
__publicField(this, "extraTransfers");
|
|
6593
6597
|
__publicField(this, "deadline");
|
|
6594
|
-
__publicField(this, "
|
|
6598
|
+
__publicField(this, "stopLossType");
|
|
6599
|
+
__publicField(this, "stopLossTriggerPrice");
|
|
6595
6600
|
__publicField(this, "takeProfitMinOut");
|
|
6596
6601
|
this.user = params.user;
|
|
6597
6602
|
this.chainId = params.chainId;
|
|
@@ -6602,7 +6607,8 @@ var SingleChainOrder = class _SingleChainOrder {
|
|
|
6602
6607
|
this.destinationAddress = params.destinationAddress;
|
|
6603
6608
|
this.extraTransfers = params.extraTransfers;
|
|
6604
6609
|
this.deadline = params.deadline;
|
|
6605
|
-
this.
|
|
6610
|
+
this.stopLossType = params.stopLossType;
|
|
6611
|
+
this.stopLossTriggerPrice = params.stopLossTriggerPrice;
|
|
6606
6612
|
this.takeProfitMinOut = params.takeProfitMinOut;
|
|
6607
6613
|
}
|
|
6608
6614
|
static async create(input) {
|
|
@@ -6645,10 +6651,10 @@ var SingleChainOrder = class _SingleChainOrder {
|
|
|
6645
6651
|
}
|
|
6646
6652
|
}
|
|
6647
6653
|
static async calculateAmountOutMin(input) {
|
|
6648
|
-
const { amountOutMin,
|
|
6654
|
+
const { amountOutMin, stopLossType, stopLossTriggerPrice } = input;
|
|
6649
6655
|
const scenario = this.getSingleChainOrderScenario({
|
|
6650
6656
|
hasAmountOutMin: !!amountOutMin,
|
|
6651
|
-
hasStopLoss: !!
|
|
6657
|
+
hasStopLoss: !!stopLossType && !!stopLossTriggerPrice
|
|
6652
6658
|
});
|
|
6653
6659
|
switch (scenario) {
|
|
6654
6660
|
case "QUOTE_REQUIRED": {
|
|
@@ -6718,7 +6724,10 @@ var BaseSDK = class _BaseSDK {
|
|
|
6718
6724
|
static async makeRequest(url, body) {
|
|
6719
6725
|
const response = await fetch(url, {
|
|
6720
6726
|
method: "POST",
|
|
6721
|
-
headers: {
|
|
6727
|
+
headers: {
|
|
6728
|
+
"Content-Type": "application/json",
|
|
6729
|
+
...DEV_ACCESS_KEY ? { "x-dev-access": DEV_ACCESS_KEY } : {}
|
|
6730
|
+
},
|
|
6722
6731
|
body
|
|
6723
6732
|
});
|
|
6724
6733
|
console.debug(`url`, url, `body`, body);
|
|
@@ -6992,7 +7001,11 @@ init_constants();
|
|
|
6992
7001
|
init_constants();
|
|
6993
7002
|
async function fetchSiweMessage(params) {
|
|
6994
7003
|
const url = `${AUCTIONEER_URL}/siwe?wallet=${params.wallet}&chainId=${params.chainId}`;
|
|
6995
|
-
const response = await fetch(url
|
|
7004
|
+
const response = await fetch(url, {
|
|
7005
|
+
headers: {
|
|
7006
|
+
...DEV_ACCESS_KEY ? { "x-dev-access": DEV_ACCESS_KEY } : {}
|
|
7007
|
+
}
|
|
7008
|
+
});
|
|
6996
7009
|
if (!response.ok) {
|
|
6997
7010
|
throw new Error(`Failed to fetch SIWE message: ${response.status} ${response.statusText}`);
|
|
6998
7011
|
}
|
|
@@ -7772,7 +7785,10 @@ async function fetchUserOrders(evmAddress, solAddress, suiAddress) {
|
|
|
7772
7785
|
const url = `${AUCTIONEER_URL}/user_intent?${params.toString()}`;
|
|
7773
7786
|
const response = await fetch(url, {
|
|
7774
7787
|
method: "GET",
|
|
7775
|
-
headers: {
|
|
7788
|
+
headers: {
|
|
7789
|
+
"Content-Type": "application/json",
|
|
7790
|
+
...DEV_ACCESS_KEY ? { "x-dev-access": DEV_ACCESS_KEY } : {}
|
|
7791
|
+
}
|
|
7776
7792
|
});
|
|
7777
7793
|
if (!response.ok) {
|
|
7778
7794
|
throw new Error(`Failed to fetch user orders: ${response.status} ${response.statusText}`);
|
|
@@ -8279,7 +8295,6 @@ function createSuiSingleChainLimitOrderIntentRequest(params) {
|
|
|
8279
8295
|
destinationAddress: params.destinationAddress,
|
|
8280
8296
|
extraTransfers: params.extraTransfers,
|
|
8281
8297
|
deadline: params.deadline,
|
|
8282
|
-
stopLossMaxOut: params.stopLossMaxOut,
|
|
8283
8298
|
takeProfitMinOut: params.takeProfitMinOut
|
|
8284
8299
|
};
|
|
8285
8300
|
return {
|
|
@@ -8324,8 +8339,9 @@ function createSuiCrossChainOrderIntentRequest(params) {
|
|
|
8324
8339
|
tokenOut: params.tokenOut,
|
|
8325
8340
|
amountOutMin: params.amountOutMin.toString(),
|
|
8326
8341
|
destinationAddress: params.destinationAddress,
|
|
8327
|
-
stopLossMaxOut: params.stopLossMaxOut?.toString(),
|
|
8328
8342
|
takeProfitMinOut: params.takeProfitMinOut?.toString(),
|
|
8343
|
+
stopLossType: params.stopLossType,
|
|
8344
|
+
stopLossTriggerPrice: params.stopLossTriggerPrice,
|
|
8329
8345
|
extraTransfers: params.extraTransfers
|
|
8330
8346
|
};
|
|
8331
8347
|
const executionDetailsString = JSON.stringify(executionDetails, Parsers.bigIntReplacer);
|
|
@@ -8569,8 +8585,9 @@ function createEvmSingleChainLimitOrderIntentRequest(params) {
|
|
|
8569
8585
|
destinationAddress: params.destinationAddress,
|
|
8570
8586
|
extraTransfers: params.extraTransfers,
|
|
8571
8587
|
deadline: params.deadline,
|
|
8572
|
-
|
|
8573
|
-
|
|
8588
|
+
takeProfitMinOut: params.takeProfitMinOut,
|
|
8589
|
+
stopLossType: params.stopLossType,
|
|
8590
|
+
stopLossTriggerPrice: params.stopLossTriggerPrice
|
|
8574
8591
|
};
|
|
8575
8592
|
return {
|
|
8576
8593
|
genericData: order,
|
|
@@ -8614,8 +8631,9 @@ function createEvmCrossChainOrderIntentRequest(params) {
|
|
|
8614
8631
|
amountOutMin: params.destinationTokenMinAmount?.toString() || "1",
|
|
8615
8632
|
destinationAddress: params.destinationAddress,
|
|
8616
8633
|
extraTransfers: params.extraTransfers,
|
|
8617
|
-
|
|
8618
|
-
|
|
8634
|
+
takeProfitMinOut: params.takeProfitMinOut?.toString(),
|
|
8635
|
+
stopLossType: params.stopLossType,
|
|
8636
|
+
stopLossTriggerPrice: params.stopLossTriggerPrice
|
|
8619
8637
|
};
|
|
8620
8638
|
const executionDetailsString = JSON.stringify(executionDetails, Parsers.bigIntReplacer);
|
|
8621
8639
|
const executionDetailsHash = generateExecutionDetailsHash(executionDetails);
|
|
@@ -8628,8 +8646,9 @@ function createEvmCrossChainOrderIntentRequest(params) {
|
|
|
8628
8646
|
deadline: params.deadline,
|
|
8629
8647
|
executionDetailsHash,
|
|
8630
8648
|
extraTransfers: params.extraTransfers,
|
|
8631
|
-
|
|
8632
|
-
|
|
8649
|
+
takeProfitMinOut: params.takeProfitMinOut,
|
|
8650
|
+
stopLossType: params.stopLossType,
|
|
8651
|
+
stopLossTriggerPrice: params.stopLossTriggerPrice
|
|
8633
8652
|
};
|
|
8634
8653
|
return {
|
|
8635
8654
|
genericData,
|
|
@@ -8668,8 +8687,9 @@ function createSolanaSingleChainLimitOrderIntentRequest(params) {
|
|
|
8668
8687
|
destinationAddress: params.destinationAddress,
|
|
8669
8688
|
extraTransfers: params.extraTransfers,
|
|
8670
8689
|
deadline: params.deadline,
|
|
8671
|
-
|
|
8672
|
-
|
|
8690
|
+
takeProfitMinOut: params.takeProfitMinOut,
|
|
8691
|
+
stopLossType: params.stopLossType,
|
|
8692
|
+
stopLossTriggerPrice: params.stopLossTriggerPrice
|
|
8673
8693
|
};
|
|
8674
8694
|
return {
|
|
8675
8695
|
genericData: order,
|