@myx-trade/sdk 0.1.2 → 0.1.6
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.d.mts +363 -9
- package/dist/index.d.ts +363 -9
- package/dist/index.js +495 -146
- package/dist/index.mjs +463 -137
- package/package.json +12 -2
package/dist/index.js
CHANGED
|
@@ -32,43 +32,66 @@ var index_exports = {};
|
|
|
32
32
|
__export(index_exports, {
|
|
33
33
|
COMMON_LP_AMOUNT_DECIMALS: () => COMMON_LP_AMOUNT_DECIMALS,
|
|
34
34
|
COMMON_PRICE_DECIMALS: () => COMMON_PRICE_DECIMALS,
|
|
35
|
+
ChainId: () => ChainId,
|
|
35
36
|
Direction: () => Direction,
|
|
37
|
+
DirectionEnum: () => DirectionEnum,
|
|
36
38
|
ErrorCode: () => ErrorCode2,
|
|
39
|
+
ExecTypeEnum: () => ExecTypeEnum,
|
|
37
40
|
HttpKlineIntervalEnum: () => HttpKlineIntervalEnum,
|
|
38
41
|
Market: () => Market,
|
|
42
|
+
MarketCapType: () => MarketCapType,
|
|
39
43
|
MarketPoolState: () => MarketPoolState,
|
|
44
|
+
MarketType: () => MarketType,
|
|
40
45
|
MyxClient: () => MyxClient,
|
|
46
|
+
OperationEnum: () => OperationEnum,
|
|
41
47
|
OperationType: () => OperationType,
|
|
42
48
|
OracleType: () => OracleType,
|
|
43
49
|
OrderStatus: () => OrderStatus,
|
|
50
|
+
OrderStatusEnum: () => OrderStatusEnum,
|
|
44
51
|
OrderType: () => OrderType,
|
|
52
|
+
OrderTypeEnum: () => OrderTypeEnum,
|
|
53
|
+
SearchSecondTypeEnum: () => SearchSecondTypeEnum,
|
|
54
|
+
SearchTypeEnum: () => SearchTypeEnum,
|
|
45
55
|
TimeInForce: () => TimeInForce2,
|
|
46
56
|
TriggerType: () => TriggerType2,
|
|
57
|
+
TriggerTypeEnum: () => TriggerTypeEnum,
|
|
58
|
+
addFavorite: () => addFavorite,
|
|
47
59
|
approve: () => approve,
|
|
48
60
|
base: () => base_exports,
|
|
61
|
+
baseUrl: () => baseUrl,
|
|
49
62
|
bigintAmountSlipperCalculator: () => bigintAmountSlipperCalculator,
|
|
50
63
|
bigintTradingGasPriceWithRatio: () => bigintTradingGasPriceWithRatio,
|
|
51
64
|
bigintTradingGasToRatioCalculator: () => bigintTradingGasToRatioCalculator,
|
|
52
|
-
formatUnits: () =>
|
|
65
|
+
formatUnits: () => import_ethers24.formatUnits,
|
|
53
66
|
getAllTickers: () => getAllTickers,
|
|
54
67
|
getAllowanceApproved: () => getAllowanceApproved,
|
|
55
68
|
getBalanceOf: () => getBalanceOf,
|
|
69
|
+
getBaseDetail: () => getBaseDetail,
|
|
70
|
+
getFavoritesList: () => getFavoritesList,
|
|
71
|
+
getHistoryOrders: () => getHistoryOrders,
|
|
56
72
|
getKlineData: () => getKlineData,
|
|
57
73
|
getKlineLatestBar: () => getKlineLatestBar,
|
|
74
|
+
getMarketDetail: () => getMarketDetail,
|
|
58
75
|
getOraclePrice: () => getOraclePrice,
|
|
59
76
|
getOrders: () => getOrders,
|
|
60
77
|
getPoolDetail: () => getPoolDetail,
|
|
61
78
|
getPoolLevelConfig: () => getPoolLevelConfig,
|
|
62
79
|
getPoolOpenOrders: () => getPoolOpenOrders,
|
|
63
80
|
getPools: () => getPools,
|
|
81
|
+
getPositionHistory: () => getPositionHistory,
|
|
64
82
|
getPositions: () => getPositions,
|
|
65
83
|
getPriceData: () => getPriceData,
|
|
66
84
|
getPricesData: () => getPricesData,
|
|
67
85
|
getTickerData: () => getTickerData,
|
|
86
|
+
getTokenInfo: () => getTokenInfo,
|
|
87
|
+
getTradeFlow: () => getTradeFlow,
|
|
68
88
|
market: () => market_exports,
|
|
69
|
-
parseUnits: () =>
|
|
89
|
+
parseUnits: () => import_ethers24.parseUnits,
|
|
70
90
|
pool: () => pool_exports,
|
|
71
|
-
quote: () => quote_exports
|
|
91
|
+
quote: () => quote_exports,
|
|
92
|
+
removeFavorite: () => removeFavorite,
|
|
93
|
+
searchMarket: () => searchMarket,
|
|
94
|
+
searchMarketAuth: () => searchMarketAuth
|
|
72
95
|
});
|
|
73
96
|
module.exports = __toCommonJS(index_exports);
|
|
74
97
|
|
|
@@ -1424,6 +1447,18 @@ var LiquidityRouter_default = [
|
|
|
1424
1447
|
];
|
|
1425
1448
|
|
|
1426
1449
|
// src/config/chain.ts
|
|
1450
|
+
var ChainId = /* @__PURE__ */ ((ChainId3) => {
|
|
1451
|
+
ChainId3[ChainId3["LINEA_SEPOLIA"] = 59141] = "LINEA_SEPOLIA";
|
|
1452
|
+
ChainId3[ChainId3["LINEA_MAINNET"] = 59144] = "LINEA_MAINNET";
|
|
1453
|
+
ChainId3[ChainId3["ARB_TESTNET"] = 421614] = "ARB_TESTNET";
|
|
1454
|
+
ChainId3[ChainId3["ARB_MAINNET"] = 42161] = "ARB_MAINNET";
|
|
1455
|
+
ChainId3[ChainId3["OPBNB_TESTNET"] = 5611] = "OPBNB_TESTNET";
|
|
1456
|
+
ChainId3[ChainId3["OPBNB_MAINNET"] = 204] = "OPBNB_MAINNET";
|
|
1457
|
+
ChainId3[ChainId3["SCROLL_MAINNET"] = 534352] = "SCROLL_MAINNET";
|
|
1458
|
+
ChainId3[ChainId3["BSC_TESTNET"] = 97] = "BSC_TESTNET";
|
|
1459
|
+
ChainId3[ChainId3["BSC_MAINNET"] = 56] = "BSC_MAINNET";
|
|
1460
|
+
return ChainId3;
|
|
1461
|
+
})(ChainId || {});
|
|
1427
1462
|
var SupportedChainIds = [421614 /* ARB_TESTNET */];
|
|
1428
1463
|
function isSupportedChainFn(chainId2) {
|
|
1429
1464
|
return !!chainId2 && SupportedChainIds.includes(chainId2);
|
|
@@ -1791,8 +1826,12 @@ var RotationProvider = class extends import_providers.BaseProvider {
|
|
|
1791
1826
|
|
|
1792
1827
|
// package.json
|
|
1793
1828
|
var package_default = {
|
|
1794
|
-
name: "@myx-trade/sdk
|
|
1795
|
-
version: "1.
|
|
1829
|
+
name: "@myx-trade/sdk",
|
|
1830
|
+
version: "0.1.6",
|
|
1831
|
+
private: false,
|
|
1832
|
+
publishConfig: {
|
|
1833
|
+
access: "public"
|
|
1834
|
+
},
|
|
1796
1835
|
description: "MYX Trade SDK for trading operations",
|
|
1797
1836
|
main: "dist/index.js",
|
|
1798
1837
|
module: "dist/index.mjs",
|
|
@@ -1812,7 +1851,17 @@ var package_default = {
|
|
|
1812
1851
|
dev: "tsup src/index.ts --format cjs,esm --dts --watch",
|
|
1813
1852
|
clean: "rm -rf dist",
|
|
1814
1853
|
prebuild: "npm run clean",
|
|
1815
|
-
"gen:abi": "typechain --target ethers-v6 --out-dir ./src/abi/types './src/abi/**/*.json'"
|
|
1854
|
+
"gen:abi": "typechain --target ethers-v6 --out-dir ./src/abi/types './src/abi/**/*.json'",
|
|
1855
|
+
"version:bump": "node scripts/bump-version.js",
|
|
1856
|
+
"version:patch": "node scripts/bump-version.js patch",
|
|
1857
|
+
"version:minor": "node scripts/bump-version.js minor",
|
|
1858
|
+
"version:major": "node scripts/bump-version.js major",
|
|
1859
|
+
prepublishOnly: "npm run build",
|
|
1860
|
+
publish: "node scripts/publish.js patch",
|
|
1861
|
+
"publish:patch": "node scripts/publish.js patch",
|
|
1862
|
+
"publish:minor": "node scripts/publish.js minor",
|
|
1863
|
+
"publish:major": "node scripts/publish.js major",
|
|
1864
|
+
"publish:no-bump": "npm run build && npm publish --access public"
|
|
1816
1865
|
},
|
|
1817
1866
|
keywords: [
|
|
1818
1867
|
"trading",
|
|
@@ -4885,6 +4934,11 @@ var BasePool_default = [
|
|
|
4885
4934
|
|
|
4886
4935
|
// src/abi/Broker.json
|
|
4887
4936
|
var Broker_default = [
|
|
4937
|
+
{
|
|
4938
|
+
type: "constructor",
|
|
4939
|
+
payable: false,
|
|
4940
|
+
inputs: []
|
|
4941
|
+
},
|
|
4888
4942
|
{
|
|
4889
4943
|
type: "error",
|
|
4890
4944
|
name: "ECDSAInvalidSignature",
|
|
@@ -4920,11 +4974,6 @@ var Broker_default = [
|
|
|
4920
4974
|
name: "InvalidFeeRate",
|
|
4921
4975
|
inputs: []
|
|
4922
4976
|
},
|
|
4923
|
-
{
|
|
4924
|
-
type: "error",
|
|
4925
|
-
name: "InvalidFeeTier",
|
|
4926
|
-
inputs: []
|
|
4927
|
-
},
|
|
4928
4977
|
{
|
|
4929
4978
|
type: "error",
|
|
4930
4979
|
name: "InvalidInitialization",
|
|
@@ -5223,19 +5272,6 @@ var Broker_default = [
|
|
|
5223
5272
|
}
|
|
5224
5273
|
]
|
|
5225
5274
|
},
|
|
5226
|
-
{
|
|
5227
|
-
type: "function",
|
|
5228
|
-
name: "activeSpecialFeeTierList",
|
|
5229
|
-
constant: true,
|
|
5230
|
-
stateMutability: "view",
|
|
5231
|
-
payable: false,
|
|
5232
|
-
inputs: [],
|
|
5233
|
-
outputs: [
|
|
5234
|
-
{
|
|
5235
|
-
type: "uint256[]"
|
|
5236
|
-
}
|
|
5237
|
-
]
|
|
5238
|
-
},
|
|
5239
5275
|
{
|
|
5240
5276
|
type: "function",
|
|
5241
5277
|
name: "addressManager",
|
|
@@ -5412,29 +5448,6 @@ var Broker_default = [
|
|
|
5412
5448
|
}
|
|
5413
5449
|
]
|
|
5414
5450
|
},
|
|
5415
|
-
{
|
|
5416
|
-
type: "function",
|
|
5417
|
-
name: "getSpecialFeeTier",
|
|
5418
|
-
constant: true,
|
|
5419
|
-
stateMutability: "view",
|
|
5420
|
-
payable: false,
|
|
5421
|
-
inputs: [
|
|
5422
|
-
{
|
|
5423
|
-
type: "uint8",
|
|
5424
|
-
name: "feeTier"
|
|
5425
|
-
}
|
|
5426
|
-
],
|
|
5427
|
-
outputs: [
|
|
5428
|
-
{
|
|
5429
|
-
type: "int32",
|
|
5430
|
-
name: "makerFeeRate"
|
|
5431
|
-
},
|
|
5432
|
-
{
|
|
5433
|
-
type: "uint32",
|
|
5434
|
-
name: "takerFeeRate"
|
|
5435
|
-
}
|
|
5436
|
-
]
|
|
5437
|
-
},
|
|
5438
5451
|
{
|
|
5439
5452
|
type: "function",
|
|
5440
5453
|
name: "getUserFeeRate",
|
|
@@ -5820,27 +5833,6 @@ var Broker_default = [
|
|
|
5820
5833
|
],
|
|
5821
5834
|
outputs: []
|
|
5822
5835
|
},
|
|
5823
|
-
{
|
|
5824
|
-
type: "function",
|
|
5825
|
-
name: "setSpecialFeeTier",
|
|
5826
|
-
constant: false,
|
|
5827
|
-
payable: false,
|
|
5828
|
-
inputs: [
|
|
5829
|
-
{
|
|
5830
|
-
type: "uint8",
|
|
5831
|
-
name: "feeTier"
|
|
5832
|
-
},
|
|
5833
|
-
{
|
|
5834
|
-
type: "int32",
|
|
5835
|
-
name: "makerFeeRate"
|
|
5836
|
-
},
|
|
5837
|
-
{
|
|
5838
|
-
type: "uint32",
|
|
5839
|
-
name: "takerFeeRate"
|
|
5840
|
-
}
|
|
5841
|
-
],
|
|
5842
|
-
outputs: []
|
|
5843
|
-
},
|
|
5844
5836
|
{
|
|
5845
5837
|
type: "function",
|
|
5846
5838
|
name: "setUserFeeData",
|
|
@@ -5884,23 +5876,6 @@ var Broker_default = [
|
|
|
5884
5876
|
],
|
|
5885
5877
|
outputs: []
|
|
5886
5878
|
},
|
|
5887
|
-
{
|
|
5888
|
-
type: "function",
|
|
5889
|
-
name: "setUserSpecialFeeTier",
|
|
5890
|
-
constant: false,
|
|
5891
|
-
payable: false,
|
|
5892
|
-
inputs: [
|
|
5893
|
-
{
|
|
5894
|
-
type: "address",
|
|
5895
|
-
name: "user"
|
|
5896
|
-
},
|
|
5897
|
-
{
|
|
5898
|
-
type: "uint8",
|
|
5899
|
-
name: "feeTier"
|
|
5900
|
-
}
|
|
5901
|
-
],
|
|
5902
|
-
outputs: []
|
|
5903
|
-
},
|
|
5904
5879
|
{
|
|
5905
5880
|
type: "function",
|
|
5906
5881
|
name: "supportedAssetClasses",
|
|
@@ -6072,12 +6047,8 @@ var Broker_default = [
|
|
|
6072
6047
|
name: "executionFeeToken"
|
|
6073
6048
|
},
|
|
6074
6049
|
{
|
|
6075
|
-
type: "
|
|
6076
|
-
name: "
|
|
6077
|
-
},
|
|
6078
|
-
{
|
|
6079
|
-
type: "bool",
|
|
6080
|
-
name: "useAccountBalance"
|
|
6050
|
+
type: "uint8",
|
|
6051
|
+
name: "paymentType"
|
|
6081
6052
|
}
|
|
6082
6053
|
]
|
|
6083
6054
|
}
|
|
@@ -6101,6 +6072,10 @@ var Broker_default = [
|
|
|
6101
6072
|
type: "bytes32",
|
|
6102
6073
|
name: "poolId"
|
|
6103
6074
|
},
|
|
6075
|
+
{
|
|
6076
|
+
type: "uint8",
|
|
6077
|
+
name: "oracleType"
|
|
6078
|
+
},
|
|
6104
6079
|
{
|
|
6105
6080
|
type: "uint256",
|
|
6106
6081
|
name: "referencePrice"
|
|
@@ -9191,6 +9166,10 @@ var DataProvider_default = [
|
|
|
9191
9166
|
];
|
|
9192
9167
|
|
|
9193
9168
|
// src/web3/providers.ts
|
|
9169
|
+
var getTokenContract = async (chainId2, tokenAddress) => {
|
|
9170
|
+
const provider = getJSONProvider(chainId2);
|
|
9171
|
+
return getContract(tokenAddress, IERC20Metadata_default, provider);
|
|
9172
|
+
};
|
|
9194
9173
|
var getERC20Contract = async (chainId2, tokenAddress) => {
|
|
9195
9174
|
const provider = await getSignerProvider(chainId2);
|
|
9196
9175
|
return getContract(tokenAddress, IERC20Metadata_default, provider);
|
|
@@ -9732,6 +9711,110 @@ var HttpKlineIntervalEnum = /* @__PURE__ */ ((HttpKlineIntervalEnum2) => {
|
|
|
9732
9711
|
HttpKlineIntervalEnum2[HttpKlineIntervalEnum2["Month1"] = 40320] = "Month1";
|
|
9733
9712
|
return HttpKlineIntervalEnum2;
|
|
9734
9713
|
})(HttpKlineIntervalEnum || {});
|
|
9714
|
+
var MarketType = /* @__PURE__ */ ((MarketType2) => {
|
|
9715
|
+
MarketType2[MarketType2["Contract"] = 1] = "Contract";
|
|
9716
|
+
MarketType2[MarketType2["Cook"] = 2] = "Cook";
|
|
9717
|
+
MarketType2[MarketType2["Earn"] = 3] = "Earn";
|
|
9718
|
+
return MarketType2;
|
|
9719
|
+
})(MarketType || {});
|
|
9720
|
+
var SearchTypeEnum = /* @__PURE__ */ ((SearchTypeEnum2) => {
|
|
9721
|
+
SearchTypeEnum2[SearchTypeEnum2["All"] = 0] = "All";
|
|
9722
|
+
SearchTypeEnum2[SearchTypeEnum2["Contract"] = 1 /* Contract */] = "Contract";
|
|
9723
|
+
SearchTypeEnum2[SearchTypeEnum2["Cook"] = 2 /* Cook */] = "Cook";
|
|
9724
|
+
SearchTypeEnum2[SearchTypeEnum2["Earn"] = 3 /* Earn */] = "Earn";
|
|
9725
|
+
return SearchTypeEnum2;
|
|
9726
|
+
})(SearchTypeEnum || {});
|
|
9727
|
+
var MarketCapType = /* @__PURE__ */ ((MarketCapType2) => {
|
|
9728
|
+
MarketCapType2[MarketCapType2["BlueChips"] = 1] = "BlueChips";
|
|
9729
|
+
MarketCapType2[MarketCapType2["Alpha"] = 2] = "Alpha";
|
|
9730
|
+
return MarketCapType2;
|
|
9731
|
+
})(MarketCapType || {});
|
|
9732
|
+
var SearchSecondTypeEnum = /* @__PURE__ */ ((SearchSecondTypeEnum2) => {
|
|
9733
|
+
SearchSecondTypeEnum2[SearchSecondTypeEnum2["BlueChips"] = 1 /* BlueChips */] = "BlueChips";
|
|
9734
|
+
SearchSecondTypeEnum2[SearchSecondTypeEnum2["Alpha"] = 2 /* Alpha */] = "Alpha";
|
|
9735
|
+
SearchSecondTypeEnum2[SearchSecondTypeEnum2["Favorite"] = 3] = "Favorite";
|
|
9736
|
+
return SearchSecondTypeEnum2;
|
|
9737
|
+
})(SearchSecondTypeEnum || {});
|
|
9738
|
+
|
|
9739
|
+
// src/api/account/index.ts
|
|
9740
|
+
var OrderTypeEnum = /* @__PURE__ */ ((OrderTypeEnum2) => {
|
|
9741
|
+
OrderTypeEnum2[OrderTypeEnum2["Market"] = 0] = "Market";
|
|
9742
|
+
OrderTypeEnum2[OrderTypeEnum2["Limit"] = 1] = "Limit";
|
|
9743
|
+
OrderTypeEnum2[OrderTypeEnum2["Stop"] = 2] = "Stop";
|
|
9744
|
+
OrderTypeEnum2[OrderTypeEnum2["Conditional"] = 3] = "Conditional";
|
|
9745
|
+
return OrderTypeEnum2;
|
|
9746
|
+
})(OrderTypeEnum || {});
|
|
9747
|
+
var OperationEnum = /* @__PURE__ */ ((OperationEnum2) => {
|
|
9748
|
+
OperationEnum2[OperationEnum2["Increase"] = 0] = "Increase";
|
|
9749
|
+
OperationEnum2[OperationEnum2["Decrease"] = 1] = "Decrease";
|
|
9750
|
+
return OperationEnum2;
|
|
9751
|
+
})(OperationEnum || {});
|
|
9752
|
+
var TriggerTypeEnum = /* @__PURE__ */ ((TriggerTypeEnum2) => {
|
|
9753
|
+
TriggerTypeEnum2[TriggerTypeEnum2["Unknown"] = 0] = "Unknown";
|
|
9754
|
+
TriggerTypeEnum2[TriggerTypeEnum2["GTE"] = 1] = "GTE";
|
|
9755
|
+
TriggerTypeEnum2[TriggerTypeEnum2["LTE"] = 2] = "LTE";
|
|
9756
|
+
return TriggerTypeEnum2;
|
|
9757
|
+
})(TriggerTypeEnum || {});
|
|
9758
|
+
var DirectionEnum = /* @__PURE__ */ ((DirectionEnum2) => {
|
|
9759
|
+
DirectionEnum2[DirectionEnum2["Long"] = 0] = "Long";
|
|
9760
|
+
DirectionEnum2[DirectionEnum2["Short"] = 1] = "Short";
|
|
9761
|
+
return DirectionEnum2;
|
|
9762
|
+
})(DirectionEnum || {});
|
|
9763
|
+
var OrderStatusEnum = /* @__PURE__ */ ((OrderStatusEnum2) => {
|
|
9764
|
+
OrderStatusEnum2[OrderStatusEnum2["Cancelled"] = 1] = "Cancelled";
|
|
9765
|
+
OrderStatusEnum2[OrderStatusEnum2["Expired"] = 2] = "Expired";
|
|
9766
|
+
OrderStatusEnum2[OrderStatusEnum2["Successful"] = 9] = "Successful";
|
|
9767
|
+
return OrderStatusEnum2;
|
|
9768
|
+
})(OrderStatusEnum || {});
|
|
9769
|
+
var ExecTypeEnum = /* @__PURE__ */ ((ExecTypeEnum2) => {
|
|
9770
|
+
ExecTypeEnum2[ExecTypeEnum2["UserEntrust"] = 0] = "UserEntrust";
|
|
9771
|
+
ExecTypeEnum2[ExecTypeEnum2["Liquidation"] = 1] = "Liquidation";
|
|
9772
|
+
ExecTypeEnum2[ExecTypeEnum2["Adl"] = 2] = "Adl";
|
|
9773
|
+
ExecTypeEnum2[ExecTypeEnum2["AdlTrigger"] = 3] = "AdlTrigger";
|
|
9774
|
+
return ExecTypeEnum2;
|
|
9775
|
+
})(ExecTypeEnum || {});
|
|
9776
|
+
var getHistoryOrders = async ({
|
|
9777
|
+
accessToken,
|
|
9778
|
+
...params
|
|
9779
|
+
}) => {
|
|
9780
|
+
return http.get(
|
|
9781
|
+
`${baseUrl}/openapi/gateway/scan/order/closed`,
|
|
9782
|
+
params,
|
|
9783
|
+
{
|
|
9784
|
+
headers: {
|
|
9785
|
+
myx_openapi_access_token: accessToken
|
|
9786
|
+
}
|
|
9787
|
+
}
|
|
9788
|
+
);
|
|
9789
|
+
};
|
|
9790
|
+
var getPositionHistory = async ({
|
|
9791
|
+
accessToken,
|
|
9792
|
+
...params
|
|
9793
|
+
}) => {
|
|
9794
|
+
return http.get(
|
|
9795
|
+
`${baseUrl}/openapi/gateway/scan/position/closed`,
|
|
9796
|
+
params,
|
|
9797
|
+
{
|
|
9798
|
+
headers: {
|
|
9799
|
+
myx_openapi_access_token: accessToken
|
|
9800
|
+
}
|
|
9801
|
+
}
|
|
9802
|
+
);
|
|
9803
|
+
};
|
|
9804
|
+
var getTradeFlow = async ({
|
|
9805
|
+
accessToken,
|
|
9806
|
+
...params
|
|
9807
|
+
}) => {
|
|
9808
|
+
return http.get(
|
|
9809
|
+
`${baseUrl}/openapi/gateway/scan/trade/flow`,
|
|
9810
|
+
params,
|
|
9811
|
+
{
|
|
9812
|
+
headers: {
|
|
9813
|
+
myx_openapi_access_token: accessToken
|
|
9814
|
+
}
|
|
9815
|
+
}
|
|
9816
|
+
);
|
|
9817
|
+
};
|
|
9735
9818
|
|
|
9736
9819
|
// src/api/index.ts
|
|
9737
9820
|
var baseUrl = "https://api-test.myx.cash";
|
|
@@ -9830,6 +9913,80 @@ var getAllTickers = async () => {
|
|
|
9830
9913
|
`${baseUrl}/v2/mx-gateway/quote/candle/all_tickers`
|
|
9831
9914
|
);
|
|
9832
9915
|
};
|
|
9916
|
+
var searchMarketAuth = async ({
|
|
9917
|
+
accessToken,
|
|
9918
|
+
...params
|
|
9919
|
+
}) => {
|
|
9920
|
+
return http.get(
|
|
9921
|
+
`${baseUrl}/openapi/gateway/scan/market/ac-search`,
|
|
9922
|
+
params,
|
|
9923
|
+
{
|
|
9924
|
+
headers: {
|
|
9925
|
+
myx_openapi_access_token: accessToken
|
|
9926
|
+
}
|
|
9927
|
+
}
|
|
9928
|
+
);
|
|
9929
|
+
};
|
|
9930
|
+
var searchMarket = async ({ ...params }) => {
|
|
9931
|
+
return http.get(
|
|
9932
|
+
`${baseUrl}/openapi/gateway/scan/market/search`,
|
|
9933
|
+
params
|
|
9934
|
+
);
|
|
9935
|
+
};
|
|
9936
|
+
var addFavorite = async ({
|
|
9937
|
+
accessToken,
|
|
9938
|
+
...params
|
|
9939
|
+
}) => {
|
|
9940
|
+
return http.get(
|
|
9941
|
+
`${baseUrl}/openapi/gateway/scan/market/add-favorites`,
|
|
9942
|
+
params,
|
|
9943
|
+
{
|
|
9944
|
+
headers: {
|
|
9945
|
+
myx_openapi_access_token: accessToken
|
|
9946
|
+
}
|
|
9947
|
+
}
|
|
9948
|
+
);
|
|
9949
|
+
};
|
|
9950
|
+
var removeFavorite = async ({
|
|
9951
|
+
accessToken,
|
|
9952
|
+
...params
|
|
9953
|
+
}) => {
|
|
9954
|
+
return http.get(
|
|
9955
|
+
`${baseUrl}/openapi/gateway/scan/market/cancel-favorites`,
|
|
9956
|
+
params,
|
|
9957
|
+
{
|
|
9958
|
+
headers: {
|
|
9959
|
+
myx_openapi_access_token: accessToken
|
|
9960
|
+
}
|
|
9961
|
+
}
|
|
9962
|
+
);
|
|
9963
|
+
};
|
|
9964
|
+
var getFavoritesList = async ({
|
|
9965
|
+
accessToken,
|
|
9966
|
+
...params
|
|
9967
|
+
}) => {
|
|
9968
|
+
return http.get(
|
|
9969
|
+
`${baseUrl}/openapi/gateway/scan/market/favorites`,
|
|
9970
|
+
params,
|
|
9971
|
+
{
|
|
9972
|
+
headers: {
|
|
9973
|
+
myx_openapi_access_token: accessToken
|
|
9974
|
+
}
|
|
9975
|
+
}
|
|
9976
|
+
);
|
|
9977
|
+
};
|
|
9978
|
+
var getBaseDetail = async (params) => {
|
|
9979
|
+
return http.get(
|
|
9980
|
+
`${baseUrl}/openapi/gateway/scan/market/base-details`,
|
|
9981
|
+
params
|
|
9982
|
+
);
|
|
9983
|
+
};
|
|
9984
|
+
var getMarketDetail = async (params) => {
|
|
9985
|
+
return http.get(
|
|
9986
|
+
`${baseUrl}/openapi/gateway/scan/market/detail`,
|
|
9987
|
+
params
|
|
9988
|
+
);
|
|
9989
|
+
};
|
|
9833
9990
|
|
|
9834
9991
|
// src/common/price.ts
|
|
9835
9992
|
var import_lodash_es2 = require("lodash-es");
|
|
@@ -10720,7 +10877,10 @@ var getMarketInfo = (chainId2) => {
|
|
|
10720
10877
|
const marketId2 = Market[chainId2].marketId;
|
|
10721
10878
|
return marketId2;
|
|
10722
10879
|
};
|
|
10723
|
-
var getMarketPoolId = async ({
|
|
10880
|
+
var getMarketPoolId = async ({
|
|
10881
|
+
chainId: chainId2,
|
|
10882
|
+
baseToken
|
|
10883
|
+
}) => {
|
|
10724
10884
|
try {
|
|
10725
10885
|
const marketId2 = getMarketInfo(chainId2);
|
|
10726
10886
|
if (!baseToken) {
|
|
@@ -10752,7 +10912,6 @@ var getMarketPools = async (chainId2) => {
|
|
|
10752
10912
|
var getPoolInfo2 = async (chainId2, poolId, marketPrice = 0n) => {
|
|
10753
10913
|
try {
|
|
10754
10914
|
const contract = await getDataProviderContract(chainId2);
|
|
10755
|
-
console.log("DataProvider.getPoolInfo,", poolId, marketPrice);
|
|
10756
10915
|
const request = await contract.getPoolInfo(poolId, marketPrice);
|
|
10757
10916
|
const info = {
|
|
10758
10917
|
quotePool: {
|
|
@@ -10777,6 +10936,12 @@ var getPoolInfo2 = async (chainId2, poolId, marketPrice = 0n) => {
|
|
|
10777
10936
|
nextFundingRate: request.fundingInfo.nextFundingRate,
|
|
10778
10937
|
lastFundingFeeTracker: request.fundingInfo.lastFundingFeeTracker,
|
|
10779
10938
|
nextEpochTime: request.fundingInfo.nextEpochTime
|
|
10939
|
+
},
|
|
10940
|
+
ioTracker: {
|
|
10941
|
+
tracker: request.oi.tracker,
|
|
10942
|
+
longSize: request.oi.longSize,
|
|
10943
|
+
shortSize: request.oi.shortSize,
|
|
10944
|
+
poolEntryPrice: request.oi.poolEntryPrice
|
|
10780
10945
|
}
|
|
10781
10946
|
};
|
|
10782
10947
|
console.log(info);
|
|
@@ -10896,6 +11061,51 @@ var cancelTpSl = async (params) => {
|
|
|
10896
11061
|
}
|
|
10897
11062
|
};
|
|
10898
11063
|
|
|
11064
|
+
// src/common/tokenInfo.ts
|
|
11065
|
+
var import_ethers22 = require("ethers");
|
|
11066
|
+
async function checkImageExists(url) {
|
|
11067
|
+
try {
|
|
11068
|
+
const res = await fetch(url, { method: "HEAD" });
|
|
11069
|
+
return res.ok;
|
|
11070
|
+
} catch {
|
|
11071
|
+
return false;
|
|
11072
|
+
}
|
|
11073
|
+
}
|
|
11074
|
+
var getTokenInfo = async (chainId2, tokenAddress, account) => {
|
|
11075
|
+
try {
|
|
11076
|
+
const token = await getTokenContract(chainId2, tokenAddress);
|
|
11077
|
+
const _name = await token.name();
|
|
11078
|
+
console.log(_name);
|
|
11079
|
+
const [name, symbol, decimals, totalSupply] = await Promise.all([
|
|
11080
|
+
token.name(),
|
|
11081
|
+
token.symbol(),
|
|
11082
|
+
token.decimals(),
|
|
11083
|
+
token.totalSupply()
|
|
11084
|
+
]);
|
|
11085
|
+
const normalized = import_ethers22.ethers.getAddress(tokenAddress);
|
|
11086
|
+
const iconUrl = `https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/${chainId2}/assets/${normalized}/logo.png`;
|
|
11087
|
+
const fallbackIcon = "";
|
|
11088
|
+
const icon = await checkImageExists(iconUrl) ? iconUrl : fallbackIcon;
|
|
11089
|
+
let balance;
|
|
11090
|
+
if (account) {
|
|
11091
|
+
const rawBalance = await token.balanceOf(account);
|
|
11092
|
+
balance = Number(import_ethers22.ethers.formatUnits(rawBalance, decimals));
|
|
11093
|
+
}
|
|
11094
|
+
return {
|
|
11095
|
+
address: tokenAddress,
|
|
11096
|
+
name,
|
|
11097
|
+
symbol,
|
|
11098
|
+
decimals,
|
|
11099
|
+
icon,
|
|
11100
|
+
totalSupply: Number(import_ethers22.ethers.formatUnits(totalSupply, decimals)),
|
|
11101
|
+
...account ? { balance } : {}
|
|
11102
|
+
};
|
|
11103
|
+
} catch (e) {
|
|
11104
|
+
console.error(e);
|
|
11105
|
+
throw e;
|
|
11106
|
+
}
|
|
11107
|
+
};
|
|
11108
|
+
|
|
10899
11109
|
// src/lp/market/index.ts
|
|
10900
11110
|
var market_exports = {};
|
|
10901
11111
|
__export(market_exports, {
|
|
@@ -10934,7 +11144,7 @@ var getOracleFee = async (chainId2, marketId2) => {
|
|
|
10934
11144
|
};
|
|
10935
11145
|
|
|
10936
11146
|
// src/lp/pool/reprime.ts
|
|
10937
|
-
var
|
|
11147
|
+
var import_ethers23 = require("ethers");
|
|
10938
11148
|
var reprime = async (chainId2, poolId) => {
|
|
10939
11149
|
try {
|
|
10940
11150
|
await checkParams({ chainId: chainId2 });
|
|
@@ -10948,14 +11158,14 @@ var reprime = async (chainId2, poolId) => {
|
|
|
10948
11158
|
if (!_amount) {
|
|
10949
11159
|
throw new Error("Invalid Market");
|
|
10950
11160
|
}
|
|
10951
|
-
console.log(Number((0,
|
|
11161
|
+
console.log(Number((0, import_ethers23.formatUnits)(_amount, pool.quoteDecimals)));
|
|
10952
11162
|
await checkParams({
|
|
10953
11163
|
tokenAddress: pool.quoteToken,
|
|
10954
11164
|
contractAddress: address_default[chainId2].ORACLE_RESERVE,
|
|
10955
11165
|
decimals: pool.quoteDecimals,
|
|
10956
11166
|
account,
|
|
10957
11167
|
chainId: chainId2,
|
|
10958
|
-
amount: Number((0,
|
|
11168
|
+
amount: Number((0, import_ethers23.formatUnits)(_amount, pool.quoteDecimals))
|
|
10959
11169
|
});
|
|
10960
11170
|
const chainInfo = CHAIN_INFO[chainId2];
|
|
10961
11171
|
const contract = await getPoolManagerContract(chainId2);
|
|
@@ -11005,7 +11215,7 @@ var TriggerType = /* @__PURE__ */ ((TriggerType3) => {
|
|
|
11005
11215
|
})(TriggerType || {});
|
|
11006
11216
|
|
|
11007
11217
|
// src/lp/index.ts
|
|
11008
|
-
var
|
|
11218
|
+
var import_ethers24 = require("ethers");
|
|
11009
11219
|
|
|
11010
11220
|
// src/manager/subscription/websocket/socket.ts
|
|
11011
11221
|
var import_mitt = __toESM(require("mitt"));
|
|
@@ -11913,6 +12123,88 @@ var Markets = class {
|
|
|
11913
12123
|
/**
|
|
11914
12124
|
* ticker end
|
|
11915
12125
|
*/
|
|
12126
|
+
/**
|
|
12127
|
+
* search by access token
|
|
12128
|
+
* (only for authenticated users)
|
|
12129
|
+
*
|
|
12130
|
+
*/
|
|
12131
|
+
async searchMarketAuth(params) {
|
|
12132
|
+
const accessToken = await this.configManager.getAccessToken();
|
|
12133
|
+
if (!accessToken) {
|
|
12134
|
+
throw new MyxSDKError(
|
|
12135
|
+
"INVALID_ACCESS_TOKEN" /* InvalidAccessToken */,
|
|
12136
|
+
"Invalid access token"
|
|
12137
|
+
);
|
|
12138
|
+
}
|
|
12139
|
+
return (await searchMarketAuth({
|
|
12140
|
+
...params,
|
|
12141
|
+
accessToken
|
|
12142
|
+
})).data;
|
|
12143
|
+
}
|
|
12144
|
+
/**
|
|
12145
|
+
* search by unauthenticated users
|
|
12146
|
+
*/
|
|
12147
|
+
async searchMarket(params) {
|
|
12148
|
+
return (await searchMarket(params)).data;
|
|
12149
|
+
}
|
|
12150
|
+
/**
|
|
12151
|
+
* get favorites list
|
|
12152
|
+
* (only for authenticated users)
|
|
12153
|
+
*/
|
|
12154
|
+
async getFavoritesList(params) {
|
|
12155
|
+
const accessToken = await this.configManager.getAccessToken();
|
|
12156
|
+
if (!accessToken) {
|
|
12157
|
+
throw new MyxSDKError(
|
|
12158
|
+
"INVALID_ACCESS_TOKEN" /* InvalidAccessToken */,
|
|
12159
|
+
"Invalid access token"
|
|
12160
|
+
);
|
|
12161
|
+
}
|
|
12162
|
+
return (await getFavoritesList({
|
|
12163
|
+
...params,
|
|
12164
|
+
accessToken
|
|
12165
|
+
})).data;
|
|
12166
|
+
}
|
|
12167
|
+
/**
|
|
12168
|
+
* favorite
|
|
12169
|
+
*/
|
|
12170
|
+
async addFavorite(params) {
|
|
12171
|
+
const accessToken = await this.configManager.getAccessToken();
|
|
12172
|
+
if (!accessToken) {
|
|
12173
|
+
throw new MyxSDKError(
|
|
12174
|
+
"INVALID_ACCESS_TOKEN" /* InvalidAccessToken */,
|
|
12175
|
+
"Invalid access token"
|
|
12176
|
+
);
|
|
12177
|
+
}
|
|
12178
|
+
return (await addFavorite({
|
|
12179
|
+
...params,
|
|
12180
|
+
accessToken
|
|
12181
|
+
})).data;
|
|
12182
|
+
}
|
|
12183
|
+
async removeFavorite(params) {
|
|
12184
|
+
const accessToken = await this.configManager.getAccessToken();
|
|
12185
|
+
if (!accessToken) {
|
|
12186
|
+
throw new MyxSDKError(
|
|
12187
|
+
"INVALID_ACCESS_TOKEN" /* InvalidAccessToken */,
|
|
12188
|
+
"Invalid access token"
|
|
12189
|
+
);
|
|
12190
|
+
}
|
|
12191
|
+
return (await removeFavorite({
|
|
12192
|
+
...params,
|
|
12193
|
+
accessToken
|
|
12194
|
+
})).data;
|
|
12195
|
+
}
|
|
12196
|
+
/**
|
|
12197
|
+
* base detail
|
|
12198
|
+
*/
|
|
12199
|
+
async getBaseDetail(params) {
|
|
12200
|
+
return (await getBaseDetail(params)).data;
|
|
12201
|
+
}
|
|
12202
|
+
/**
|
|
12203
|
+
* get market detail
|
|
12204
|
+
*/
|
|
12205
|
+
async getMarketDetail(params) {
|
|
12206
|
+
return (await getMarketDetail(params)).data;
|
|
12207
|
+
}
|
|
11916
12208
|
};
|
|
11917
12209
|
|
|
11918
12210
|
// src/config/address/index.ts
|
|
@@ -11926,7 +12218,7 @@ var getContractAddressByChainId = (chainId2) => {
|
|
|
11926
12218
|
};
|
|
11927
12219
|
|
|
11928
12220
|
// src/manager/position/index.ts
|
|
11929
|
-
var
|
|
12221
|
+
var import_ethers25 = require("ethers");
|
|
11930
12222
|
var Position = class {
|
|
11931
12223
|
constructor(configManager, logger, utils) {
|
|
11932
12224
|
this.configManager = configManager;
|
|
@@ -11956,6 +12248,20 @@ var Position = class {
|
|
|
11956
12248
|
};
|
|
11957
12249
|
}
|
|
11958
12250
|
}
|
|
12251
|
+
async getPositionHistory(params) {
|
|
12252
|
+
const accessToken = await this.configManager.getAccessToken();
|
|
12253
|
+
if (!accessToken) {
|
|
12254
|
+
throw new MyxSDKError(
|
|
12255
|
+
"INVALID_ACCESS_TOKEN" /* InvalidAccessToken */,
|
|
12256
|
+
"Invalid access token"
|
|
12257
|
+
);
|
|
12258
|
+
}
|
|
12259
|
+
const res = await getPositionHistory({ accessToken, ...params });
|
|
12260
|
+
return {
|
|
12261
|
+
code: 0,
|
|
12262
|
+
data: res.data
|
|
12263
|
+
};
|
|
12264
|
+
}
|
|
11959
12265
|
/**
|
|
11960
12266
|
* @desc temp skip eip7702
|
|
11961
12267
|
* @todo adjustCollateral 调整保证金
|
|
@@ -12097,7 +12403,7 @@ var Position = class {
|
|
|
12097
12403
|
}
|
|
12098
12404
|
const updateParams = {
|
|
12099
12405
|
poolId,
|
|
12100
|
-
referencePrice:
|
|
12406
|
+
referencePrice: import_ethers25.ethers.parseUnits(priceData?.price ?? "0", 30),
|
|
12101
12407
|
oracleUpdateData: priceData?.vaa ?? "0",
|
|
12102
12408
|
publishTime: priceData.publishTime
|
|
12103
12409
|
};
|
|
@@ -12119,12 +12425,12 @@ var Position = class {
|
|
|
12119
12425
|
if (needsApproval) {
|
|
12120
12426
|
this.logger.debug("adjust collateral approve-->", {
|
|
12121
12427
|
quoteToken,
|
|
12122
|
-
amount:
|
|
12428
|
+
amount: import_ethers25.ethers.MaxUint256.toString(),
|
|
12123
12429
|
spenderAddress: contractAddress.POSITION_MANAGER
|
|
12124
12430
|
});
|
|
12125
12431
|
const approvalResult = await this.utils.approveAuthorization({
|
|
12126
12432
|
quoteAddress: quoteToken,
|
|
12127
|
-
amount:
|
|
12433
|
+
amount: import_ethers25.ethers.MaxUint256.toString(),
|
|
12128
12434
|
spenderAddress: contractAddress.POSITION_MANAGER
|
|
12129
12435
|
});
|
|
12130
12436
|
if (approvalResult.code !== 0) {
|
|
@@ -12240,7 +12546,9 @@ var Order = class {
|
|
|
12240
12546
|
params.chainId,
|
|
12241
12547
|
config.signer
|
|
12242
12548
|
);
|
|
12243
|
-
const networkFee = await this.utils.getNetworkFee(
|
|
12549
|
+
const networkFee = await this.utils.getNetworkFee(
|
|
12550
|
+
params.executionFeeToken
|
|
12551
|
+
);
|
|
12244
12552
|
const collateralWithNetworkFee = BigInt(params.collateralAmount) + BigInt(networkFee);
|
|
12245
12553
|
console.log("createIncreaseOrder params--->", {
|
|
12246
12554
|
user: params.address,
|
|
@@ -12354,7 +12662,9 @@ var Order = class {
|
|
|
12354
12662
|
params.chainId,
|
|
12355
12663
|
config.signer
|
|
12356
12664
|
);
|
|
12357
|
-
const networkFee = await this.utils.getNetworkFee(
|
|
12665
|
+
const networkFee = await this.utils.getNetworkFee(
|
|
12666
|
+
params.executionFeeToken
|
|
12667
|
+
);
|
|
12358
12668
|
const collateralWithNetworkFee = BigInt(params.collateralAmount) + BigInt(networkFee);
|
|
12359
12669
|
console.log("createDecreaseOrder", params);
|
|
12360
12670
|
console.log("createDecreaseOrder params--->", {
|
|
@@ -12465,7 +12775,9 @@ var Order = class {
|
|
|
12465
12775
|
config.signer
|
|
12466
12776
|
);
|
|
12467
12777
|
try {
|
|
12468
|
-
const networkFee = await this.utils.getNetworkFee(
|
|
12778
|
+
const networkFee = await this.utils.getNetworkFee(
|
|
12779
|
+
params.executionFeeToken
|
|
12780
|
+
);
|
|
12469
12781
|
if (params.tpSize !== "0" && params.slSize !== "0") {
|
|
12470
12782
|
const data2 = [
|
|
12471
12783
|
{
|
|
@@ -12515,16 +12827,16 @@ var Order = class {
|
|
|
12515
12827
|
];
|
|
12516
12828
|
console.log("createPositionTpSlOrder data--->", data2);
|
|
12517
12829
|
const gasLimit2 = await brokerContract.placeOrders.estimateGas(data2);
|
|
12518
|
-
const transaction2 = await brokerContract.placeOrders(
|
|
12519
|
-
|
|
12520
|
-
|
|
12521
|
-
gasLimit: gasLimit2 * 120n / 100n
|
|
12522
|
-
}
|
|
12523
|
-
);
|
|
12830
|
+
const transaction2 = await brokerContract.placeOrders(data2, {
|
|
12831
|
+
gasLimit: gasLimit2 * 120n / 100n
|
|
12832
|
+
});
|
|
12524
12833
|
this.logger.info("Transaction sent:", transaction2.hash);
|
|
12525
12834
|
this.logger.info("Waiting for confirmation...");
|
|
12526
12835
|
const receipt2 = await transaction2.wait();
|
|
12527
|
-
this.logger.info(
|
|
12836
|
+
this.logger.info(
|
|
12837
|
+
"Transaction confirmed in block:",
|
|
12838
|
+
receipt2?.blockNumber
|
|
12839
|
+
);
|
|
12528
12840
|
this.logger.info("createDecreaseOrder receipt--->", receipt2);
|
|
12529
12841
|
const orderId2 = this.utils.getOrderIdFromTransaction(receipt2);
|
|
12530
12842
|
const result2 = {
|
|
@@ -12572,16 +12884,16 @@ var Order = class {
|
|
|
12572
12884
|
};
|
|
12573
12885
|
console.log("createPositionTpSlOrder data--->", data);
|
|
12574
12886
|
const gasLimit = await brokerContract.placeOrder.estimateGas(data);
|
|
12575
|
-
const transaction = await brokerContract.placeOrder(
|
|
12576
|
-
|
|
12577
|
-
|
|
12578
|
-
gasLimit: gasLimit * 120n / 100n
|
|
12579
|
-
}
|
|
12580
|
-
);
|
|
12887
|
+
const transaction = await brokerContract.placeOrder(data, {
|
|
12888
|
+
gasLimit: gasLimit * 120n / 100n
|
|
12889
|
+
});
|
|
12581
12890
|
this.logger.info("Transaction sent:", transaction.hash);
|
|
12582
12891
|
this.logger.info("Waiting for confirmation...");
|
|
12583
12892
|
const receipt = await transaction.wait();
|
|
12584
|
-
this.logger.info(
|
|
12893
|
+
this.logger.info(
|
|
12894
|
+
"Transaction confirmed in block:",
|
|
12895
|
+
receipt?.blockNumber
|
|
12896
|
+
);
|
|
12585
12897
|
this.logger.info("createDecreaseOrder receipt--->", receipt);
|
|
12586
12898
|
const orderId = this.utils.getOrderIdFromTransaction(receipt);
|
|
12587
12899
|
const result = {
|
|
@@ -12724,10 +13036,24 @@ var Order = class {
|
|
|
12724
13036
|
};
|
|
12725
13037
|
}
|
|
12726
13038
|
}
|
|
13039
|
+
async getOrderHistory(params) {
|
|
13040
|
+
const accessToken = await this.configManager.getAccessToken();
|
|
13041
|
+
if (!accessToken) {
|
|
13042
|
+
throw new MyxSDKError(
|
|
13043
|
+
"INVALID_ACCESS_TOKEN" /* InvalidAccessToken */,
|
|
13044
|
+
"Invalid access token"
|
|
13045
|
+
);
|
|
13046
|
+
}
|
|
13047
|
+
const res = await getHistoryOrders({ accessToken, ...params });
|
|
13048
|
+
return {
|
|
13049
|
+
code: 0,
|
|
13050
|
+
data: res.data
|
|
13051
|
+
};
|
|
13052
|
+
}
|
|
12727
13053
|
};
|
|
12728
13054
|
|
|
12729
13055
|
// src/manager/utils/index.ts
|
|
12730
|
-
var
|
|
13056
|
+
var import_ethers26 = require("ethers");
|
|
12731
13057
|
|
|
12732
13058
|
// src/abi/Emiter.json
|
|
12733
13059
|
var Emiter_default = [
|
|
@@ -16409,7 +16735,7 @@ var Utils = class {
|
|
|
16409
16735
|
if (!receipt || !receipt.logs) {
|
|
16410
16736
|
return null;
|
|
16411
16737
|
}
|
|
16412
|
-
const emiterInterface = new
|
|
16738
|
+
const emiterInterface = new import_ethers26.ethers.Interface(Emiter_default);
|
|
16413
16739
|
const orderPlacedEvent = Emiter_default.find(
|
|
16414
16740
|
(item) => item.type === "event" && item.name === "OrderPlaced"
|
|
16415
16741
|
);
|
|
@@ -16417,7 +16743,7 @@ var Utils = class {
|
|
|
16417
16743
|
this.logger.error("OrderPlaced event not found in Emiter ABI");
|
|
16418
16744
|
return null;
|
|
16419
16745
|
}
|
|
16420
|
-
const eventTopic =
|
|
16746
|
+
const eventTopic = import_ethers26.ethers.id(
|
|
16421
16747
|
"OrderPlaced(address,address,bytes32,uint256,uint256,uint8,uint8,uint8,uint8,uint256,uint256,uint256,uint8,bool,uint16,address,uint256,uint16)"
|
|
16422
16748
|
);
|
|
16423
16749
|
this.logger.info("Looking for OrderPlaced events with topic:", eventTopic);
|
|
@@ -16461,7 +16787,7 @@ var Utils = class {
|
|
|
16461
16787
|
const config = this.configManager.getConfig();
|
|
16462
16788
|
const owner = await config.signer.getAddress();
|
|
16463
16789
|
const spender = spenderAddress ?? getContractAddressByChainId(config.chainId).ORDER_MANAGER;
|
|
16464
|
-
const tokenContract = new
|
|
16790
|
+
const tokenContract = new import_ethers26.ethers.Contract(
|
|
16465
16791
|
quoteAddress,
|
|
16466
16792
|
erc20Abi,
|
|
16467
16793
|
config.signer
|
|
@@ -16483,8 +16809,8 @@ var Utils = class {
|
|
|
16483
16809
|
spenderAddress
|
|
16484
16810
|
);
|
|
16485
16811
|
const currentAllowance = currentAllowanceRes.data;
|
|
16486
|
-
const allowanceBigInt =
|
|
16487
|
-
const requiredBigInt =
|
|
16812
|
+
const allowanceBigInt = import_ethers26.ethers.getBigInt(currentAllowance);
|
|
16813
|
+
const requiredBigInt = import_ethers26.ethers.getBigInt(requiredAmount);
|
|
16488
16814
|
const needsApproval = allowanceBigInt < requiredBigInt;
|
|
16489
16815
|
return needsApproval;
|
|
16490
16816
|
} catch (error) {
|
|
@@ -16502,12 +16828,12 @@ var Utils = class {
|
|
|
16502
16828
|
"function approve(address spender, uint256 amount) external returns (bool)"
|
|
16503
16829
|
];
|
|
16504
16830
|
const config = this.configManager.getConfig();
|
|
16505
|
-
const usdcContract = new
|
|
16831
|
+
const usdcContract = new import_ethers26.ethers.Contract(
|
|
16506
16832
|
quoteAddress,
|
|
16507
16833
|
erc20Abi,
|
|
16508
16834
|
config.signer
|
|
16509
16835
|
);
|
|
16510
|
-
const approveAmount = amount ??
|
|
16836
|
+
const approveAmount = amount ?? import_ethers26.ethers.MaxUint256;
|
|
16511
16837
|
const spender = spenderAddress ?? getContractAddressByChainId(config.chainId).ORDER_MANAGER;
|
|
16512
16838
|
const tx = await usdcContract.approve(spender, approveAmount);
|
|
16513
16839
|
await tx.wait();
|
|
@@ -16529,7 +16855,7 @@ var Utils = class {
|
|
|
16529
16855
|
const orderManagerAddress = getContractAddressByChainId(
|
|
16530
16856
|
config.chainId
|
|
16531
16857
|
).ORDER_MANAGER;
|
|
16532
|
-
const orderManagerContract = new
|
|
16858
|
+
const orderManagerContract = new import_ethers26.ethers.Contract(
|
|
16533
16859
|
orderManagerAddress,
|
|
16534
16860
|
OrderManager_default,
|
|
16535
16861
|
config.signer
|
|
@@ -16609,7 +16935,7 @@ var Utils = class {
|
|
|
16609
16935
|
};
|
|
16610
16936
|
|
|
16611
16937
|
// src/manager/account/index.ts
|
|
16612
|
-
var
|
|
16938
|
+
var import_ethers27 = require("ethers");
|
|
16613
16939
|
|
|
16614
16940
|
// src/abi/Account.json
|
|
16615
16941
|
var Account_default = [
|
|
@@ -17242,27 +17568,13 @@ var Account = class {
|
|
|
17242
17568
|
this.logger = logger;
|
|
17243
17569
|
this.utils = utils;
|
|
17244
17570
|
}
|
|
17245
|
-
/**
|
|
17246
|
-
* get locked assets
|
|
17247
|
-
*/
|
|
17248
|
-
async getUserAssets() {
|
|
17249
|
-
const config = this.configManager.getConfig();
|
|
17250
|
-
const contractAddress = getContractAddressByChainId(config.chainId);
|
|
17251
|
-
const accountContract = new import_ethers26.ethers.Contract(
|
|
17252
|
-
contractAddress.Account,
|
|
17253
|
-
Account_default,
|
|
17254
|
-
config.signer
|
|
17255
|
-
);
|
|
17256
|
-
const assets = await accountContract.getUserAssets(config.signer.getAddress());
|
|
17257
|
-
return assets;
|
|
17258
|
-
}
|
|
17259
17571
|
/**
|
|
17260
17572
|
* get tradable amount
|
|
17261
17573
|
*/
|
|
17262
17574
|
async getTradableAmount({ poolId }) {
|
|
17263
17575
|
const config = this.configManager.getConfig();
|
|
17264
17576
|
const contractAddress = getContractAddressByChainId(config.chainId);
|
|
17265
|
-
const accountContract = new
|
|
17577
|
+
const accountContract = new import_ethers27.ethers.Contract(
|
|
17266
17578
|
contractAddress.Account,
|
|
17267
17579
|
Account_default,
|
|
17268
17580
|
config.signer
|
|
@@ -17270,10 +17582,24 @@ var Account = class {
|
|
|
17270
17582
|
const assets = await accountContract.getTradableAmount(config.signer.getAddress(), poolId);
|
|
17271
17583
|
return assets;
|
|
17272
17584
|
}
|
|
17585
|
+
async getTradeFlow(params) {
|
|
17586
|
+
const accessToken = await this.configManager.getAccessToken();
|
|
17587
|
+
if (!accessToken) {
|
|
17588
|
+
throw new MyxSDKError(
|
|
17589
|
+
"INVALID_ACCESS_TOKEN" /* InvalidAccessToken */,
|
|
17590
|
+
"Invalid access token"
|
|
17591
|
+
);
|
|
17592
|
+
}
|
|
17593
|
+
const res = await getTradeFlow({ accessToken, ...params });
|
|
17594
|
+
return {
|
|
17595
|
+
code: 0,
|
|
17596
|
+
data: res.data
|
|
17597
|
+
};
|
|
17598
|
+
}
|
|
17273
17599
|
};
|
|
17274
17600
|
|
|
17275
17601
|
// src/manager/index.ts
|
|
17276
|
-
var
|
|
17602
|
+
var import_ethers28 = require("ethers");
|
|
17277
17603
|
var MyxClient = class {
|
|
17278
17604
|
/**
|
|
17279
17605
|
* 获取配置管理器(用于访问 accessToken 相关方法)
|
|
@@ -17294,7 +17620,7 @@ var MyxClient = class {
|
|
|
17294
17620
|
this.subscription = new SubScription(this.configManager, this.logger);
|
|
17295
17621
|
const lp = MxSDK.getInstance();
|
|
17296
17622
|
if (options.walletClient?.transport) {
|
|
17297
|
-
const provider = new
|
|
17623
|
+
const provider = new import_ethers28.BrowserProvider(options.walletClient?.transport);
|
|
17298
17624
|
if (provider) {
|
|
17299
17625
|
lp.setProvider(provider);
|
|
17300
17626
|
}
|
|
@@ -17306,20 +17632,33 @@ var MyxClient = class {
|
|
|
17306
17632
|
0 && (module.exports = {
|
|
17307
17633
|
COMMON_LP_AMOUNT_DECIMALS,
|
|
17308
17634
|
COMMON_PRICE_DECIMALS,
|
|
17635
|
+
ChainId,
|
|
17309
17636
|
Direction,
|
|
17637
|
+
DirectionEnum,
|
|
17310
17638
|
ErrorCode,
|
|
17639
|
+
ExecTypeEnum,
|
|
17311
17640
|
HttpKlineIntervalEnum,
|
|
17312
17641
|
Market,
|
|
17642
|
+
MarketCapType,
|
|
17313
17643
|
MarketPoolState,
|
|
17644
|
+
MarketType,
|
|
17314
17645
|
MyxClient,
|
|
17646
|
+
OperationEnum,
|
|
17315
17647
|
OperationType,
|
|
17316
17648
|
OracleType,
|
|
17317
17649
|
OrderStatus,
|
|
17650
|
+
OrderStatusEnum,
|
|
17318
17651
|
OrderType,
|
|
17652
|
+
OrderTypeEnum,
|
|
17653
|
+
SearchSecondTypeEnum,
|
|
17654
|
+
SearchTypeEnum,
|
|
17319
17655
|
TimeInForce,
|
|
17320
17656
|
TriggerType,
|
|
17657
|
+
TriggerTypeEnum,
|
|
17658
|
+
addFavorite,
|
|
17321
17659
|
approve,
|
|
17322
17660
|
base,
|
|
17661
|
+
baseUrl,
|
|
17323
17662
|
bigintAmountSlipperCalculator,
|
|
17324
17663
|
bigintTradingGasPriceWithRatio,
|
|
17325
17664
|
bigintTradingGasToRatioCalculator,
|
|
@@ -17327,22 +17666,32 @@ var MyxClient = class {
|
|
|
17327
17666
|
getAllTickers,
|
|
17328
17667
|
getAllowanceApproved,
|
|
17329
17668
|
getBalanceOf,
|
|
17669
|
+
getBaseDetail,
|
|
17670
|
+
getFavoritesList,
|
|
17671
|
+
getHistoryOrders,
|
|
17330
17672
|
getKlineData,
|
|
17331
17673
|
getKlineLatestBar,
|
|
17674
|
+
getMarketDetail,
|
|
17332
17675
|
getOraclePrice,
|
|
17333
17676
|
getOrders,
|
|
17334
17677
|
getPoolDetail,
|
|
17335
17678
|
getPoolLevelConfig,
|
|
17336
17679
|
getPoolOpenOrders,
|
|
17337
17680
|
getPools,
|
|
17681
|
+
getPositionHistory,
|
|
17338
17682
|
getPositions,
|
|
17339
17683
|
getPriceData,
|
|
17340
17684
|
getPricesData,
|
|
17341
17685
|
getTickerData,
|
|
17686
|
+
getTokenInfo,
|
|
17687
|
+
getTradeFlow,
|
|
17342
17688
|
market,
|
|
17343
17689
|
parseUnits,
|
|
17344
17690
|
pool,
|
|
17345
|
-
quote
|
|
17691
|
+
quote,
|
|
17692
|
+
removeFavorite,
|
|
17693
|
+
searchMarket,
|
|
17694
|
+
searchMarketAuth
|
|
17346
17695
|
});
|
|
17347
17696
|
/**
|
|
17348
17697
|
* MyxLogger
|