@reyaxyz/sdk 0.16.1 → 0.17.1
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/abis/Periphery.json +700 -0
- package/dist/services/encode.js +9 -5
- package/dist/services/encode.js.map +1 -1
- package/dist/services/executeTransaction.js +4 -7
- package/dist/services/executeTransaction.js.map +1 -1
- package/dist/services/lp/encode.js +30 -1
- package/dist/services/lp/encode.js.map +1 -1
- package/dist/services/lp/lp.js +3 -3
- package/dist/services/lp/lp.js.map +1 -1
- package/dist/services/lp/transferFromMAToPool.js +70 -0
- package/dist/services/lp/transferFromMAToPool.js.map +1 -0
- package/dist/services/lp/types.js.map +1 -1
- package/dist/services/lp/withdrawPassivePoolAndBridge.js +75 -0
- package/dist/services/lp/withdrawPassivePoolAndBridge.js.map +1 -0
- package/dist/services/margin-accounts/account.js +2 -2
- package/dist/services/margin-accounts/account.js.map +1 -1
- package/dist/services/margin-accounts/deposit.js +4 -6
- package/dist/services/margin-accounts/deposit.js.map +1 -1
- package/dist/services/margin-accounts/encode.js +33 -5
- package/dist/services/margin-accounts/encode.js.map +1 -1
- package/dist/services/margin-accounts/transferMarginBetweenAccounts.js +67 -0
- package/dist/services/margin-accounts/transferMarginBetweenAccounts.js.map +1 -0
- package/dist/services/margin-accounts/types.js.map +1 -1
- package/dist/services/margin-accounts/withdraw.js +4 -6
- package/dist/services/margin-accounts/withdraw.js.map +1 -1
- package/dist/services/margin-accounts/withdrawMAAndBridge.js +77 -0
- package/dist/services/margin-accounts/withdrawMAAndBridge.js.map +1 -0
- package/dist/services/orders/order.js +3 -3
- package/dist/services/orders/order.js.map +1 -1
- package/dist/services/sign.js +124 -0
- package/dist/services/sign.js.map +1 -0
- package/dist/services/token/approve.js +2 -2
- package/dist/services/token/approve.js.map +1 -1
- package/dist/services/token/getAllowance.js +2 -2
- package/dist/services/token/getAllowance.js.map +1 -1
- package/dist/types/services/encode.d.ts +3 -2
- package/dist/types/services/encode.d.ts.map +1 -1
- package/dist/types/services/executeTransaction.d.ts +3 -3
- package/dist/types/services/executeTransaction.d.ts.map +1 -1
- package/dist/types/services/lp/encode.d.ts +3 -0
- package/dist/types/services/lp/encode.d.ts.map +1 -1
- package/dist/types/services/lp/transferFromMAToPool.d.ts +3 -0
- package/dist/types/services/lp/transferFromMAToPool.d.ts.map +1 -0
- package/dist/types/services/lp/types.d.ts +28 -1
- package/dist/types/services/lp/types.d.ts.map +1 -1
- package/dist/types/services/lp/withdrawPassivePoolAndBridge.d.ts +3 -0
- package/dist/types/services/lp/withdrawPassivePoolAndBridge.d.ts.map +1 -0
- package/dist/types/services/margin-accounts/deposit.d.ts.map +1 -1
- package/dist/types/services/margin-accounts/encode.d.ts +5 -2
- package/dist/types/services/margin-accounts/encode.d.ts.map +1 -1
- package/dist/types/services/margin-accounts/transferMarginBetweenAccounts.d.ts +3 -0
- package/dist/types/services/margin-accounts/transferMarginBetweenAccounts.d.ts.map +1 -0
- package/dist/types/services/margin-accounts/types.d.ts +23 -0
- package/dist/types/services/margin-accounts/types.d.ts.map +1 -1
- package/dist/types/services/margin-accounts/withdraw.d.ts.map +1 -1
- package/dist/types/services/margin-accounts/withdrawMAAndBridge.d.ts +3 -0
- package/dist/types/services/margin-accounts/withdrawMAAndBridge.d.ts.map +1 -0
- package/dist/types/services/sign.d.ts +10 -0
- package/dist/types/services/sign.d.ts.map +1 -0
- package/dist/types/utils/contractAddresses.d.ts +5 -1
- package/dist/types/utils/contractAddresses.d.ts.map +1 -1
- package/dist/types/utils/routerCommands.d.ts +2 -1
- package/dist/types/utils/routerCommands.d.ts.map +1 -1
- package/dist/utils/contractAddresses.js +23 -14
- package/dist/utils/contractAddresses.js.map +1 -1
- package/dist/utils/routerCommands.js +2 -0
- package/dist/utils/routerCommands.js.map +1 -1
- package/package.json +3 -3
- package/src/abis/Periphery.json +700 -0
- package/src/services/encode.ts +17 -7
- package/src/services/executeTransaction.ts +5 -9
- package/src/services/lp/encode.ts +47 -0
- package/src/services/lp/lp.ts +3 -3
- package/src/services/lp/transferFromMAToPool.ts +48 -0
- package/src/services/lp/types.ts +32 -1
- package/src/services/lp/withdrawPassivePoolAndBridge.ts +56 -0
- package/src/services/margin-accounts/account.ts +2 -2
- package/src/services/margin-accounts/deposit.ts +2 -6
- package/src/services/margin-accounts/encode.ts +52 -6
- package/src/services/margin-accounts/transferMarginBetweenAccounts.ts +36 -0
- package/src/services/margin-accounts/types.ts +27 -0
- package/src/services/margin-accounts/withdraw.ts +2 -6
- package/src/services/margin-accounts/withdrawMAAndBridge.ts +56 -0
- package/src/services/orders/order.ts +3 -3
- package/src/services/sign.ts +110 -0
- package/src/services/token/approve.ts +3 -3
- package/src/services/token/getAllowance.ts +3 -3
- package/src/utils/contractAddresses.ts +17 -7
- package/src/utils/routerCommands.ts +2 -0
- package/dist/types/utils/consts.d.ts +0 -8
- package/dist/types/utils/consts.d.ts.map +0 -1
- package/dist/utils/consts.js +0 -12
- package/dist/utils/consts.js.map +0 -1
- package/src/utils/consts.ts +0 -7
package/dist/services/encode.js
CHANGED
|
@@ -1,21 +1,25 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
//////////////////// ENCODE SINGLE ////////////////////
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
exports.encodeRouterCall = exports.encodeSingleTrade = exports.encodeSingleWithdraw = exports.encodeSingleDeposit = void 0;
|
|
4
|
+
exports.encodeRouterCall = exports.encodeSingleTrade = exports.encodeSingleTransferMargin = exports.encodeSingleWithdraw = exports.encodeSingleDeposit = void 0;
|
|
5
5
|
var routerCommands_1 = require("../utils/routerCommands");
|
|
6
6
|
var ethers_1 = require("ethers");
|
|
7
7
|
var ExecutionModule_json_1 = require("../abis/ExecutionModule.json");
|
|
8
8
|
// const abi = [
|
|
9
9
|
// 'function coreExecute(uint128 poolId, uint128 accountId, Command[] commands, EIP712Signature sig)',
|
|
10
10
|
// ];
|
|
11
|
-
var encodeSingleDeposit = function (token, amount,
|
|
12
|
-
multiAction.newAction((0, routerCommands_1.getCommand)(routerCommands_1.CommandType.DEPOSIT, [token, amount],
|
|
11
|
+
var encodeSingleDeposit = function (token, amount, multiAction) {
|
|
12
|
+
multiAction.newAction((0, routerCommands_1.getCommand)(routerCommands_1.CommandType.DEPOSIT, [token, amount], 0, 0));
|
|
13
13
|
};
|
|
14
14
|
exports.encodeSingleDeposit = encodeSingleDeposit;
|
|
15
|
-
var encodeSingleWithdraw = function (token, amount,
|
|
16
|
-
multiAction.newAction((0, routerCommands_1.getCommand)(routerCommands_1.CommandType.WITHDRAW, [token, amount],
|
|
15
|
+
var encodeSingleWithdraw = function (token, amount, multiAction) {
|
|
16
|
+
multiAction.newAction((0, routerCommands_1.getCommand)(routerCommands_1.CommandType.WITHDRAW, [token, amount], 0, 0));
|
|
17
17
|
};
|
|
18
18
|
exports.encodeSingleWithdraw = encodeSingleWithdraw;
|
|
19
|
+
var encodeSingleTransferMargin = function (toMarginAccountId, token, amount, multiAction) {
|
|
20
|
+
multiAction.newAction((0, routerCommands_1.getCommand)(routerCommands_1.CommandType.TRANSFER_MARGIN_ACCOUNT, [toMarginAccountId, token, amount], 0, 0));
|
|
21
|
+
};
|
|
22
|
+
exports.encodeSingleTransferMargin = encodeSingleTransferMargin;
|
|
19
23
|
var encodeSingleTrade = function (counterpartyAccountIds, orderBase, orderPriceLimit, marketId, exchangeId, multiAction) {
|
|
20
24
|
// (int256 orderBase, UD60x18 orderPriceLimit) = abi.decode(matchOrderInputs.inputs, (int256, UD60x18));
|
|
21
25
|
var encodedBasePrice = ethers_1.AbiCoder.defaultAbiCoder().encode(['int256', 'uint256'], [orderBase, orderPriceLimit]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"encode.js","sourceRoot":"/","sources":["services/encode.ts"],"names":[],"mappings":";AAAA,yDAAyD;;;AAGzD,0DAAkE;AAClE,iCAA6C;AAC7C,qEAAmD;AACnD,gBAAgB;AAChB,wGAAwG;AACxG,KAAK;AACE,IAAM,mBAAmB,GAAG,UACjC,KAAa,EACb,MAAc,EACd,
|
|
1
|
+
{"version":3,"file":"encode.js","sourceRoot":"/","sources":["services/encode.ts"],"names":[],"mappings":";AAAA,yDAAyD;;;AAGzD,0DAAkE;AAClE,iCAA6C;AAC7C,qEAAmD;AACnD,gBAAgB;AAChB,wGAAwG;AACxG,KAAK;AACE,IAAM,mBAAmB,GAAG,UACjC,KAAa,EACb,MAAc,EACd,WAAwB;IAExB,WAAW,CAAC,SAAS,CAAC,IAAA,2BAAU,EAAC,4BAAW,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAChF,CAAC,CAAC;AANW,QAAA,mBAAmB,uBAM9B;AAEK,IAAM,oBAAoB,GAAG,UAClC,KAAa,EACb,MAAc,EACd,WAAwB;IAExB,WAAW,CAAC,SAAS,CACnB,IAAA,2BAAU,EAAC,4BAAW,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CACxD,CAAC;AACJ,CAAC,CAAC;AARW,QAAA,oBAAoB,wBAQ/B;AAEK,IAAM,0BAA0B,GAAG,UACxC,iBAAyB,EACzB,KAAa,EACb,MAAc,EACd,WAAwB;IAExB,WAAW,CAAC,SAAS,CACnB,IAAA,2BAAU,EACR,4BAAW,CAAC,uBAAuB,EACnC,CAAC,iBAAiB,EAAE,KAAK,EAAE,MAAM,CAAC,EAClC,CAAC,EACD,CAAC,CACF,CACF,CAAC;AACJ,CAAC,CAAC;AAdW,QAAA,0BAA0B,8BAcrC;AAEK,IAAM,iBAAiB,GAAG,UAC/B,sBAAgC,EAChC,SAAiB,EACjB,eAAuB,EACvB,QAAgB,EAChB,UAAkB,EAClB,WAAwB;IAExB,wGAAwG;IACxG,IAAM,gBAAgB,GAAG,iBAAQ,CAAC,eAAe,EAAE,CAAC,MAAM,CACxD,CAAC,QAAQ,EAAE,SAAS,CAAC,EACrB,CAAC,SAAS,EAAE,eAAe,CAAC,CAC7B,CAAC;IAEF,WAAW,CAAC,SAAS,CACnB,IAAA,2BAAU,EACR,4BAAW,CAAC,WAAW,EACvB,CAAC,sBAAsB,EAAE,gBAAgB,CAAC,EAC1C,QAAQ,EACR,UAAU,CACX,CACF,CAAC;AACJ,CAAC,CAAC;AAtBW,QAAA,iBAAiB,qBAsB5B;AAEK,IAAM,gBAAgB,GAAG,UAC9B,WAAwB,EACxB,SAAiB,EACjB,mBAA2B;IAE3B,IAAM,iBAAiB,GAAG,SAAS,CAAC;IACpC,IAAM,UAAU,GAAG,CAAC,SAAS,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC;IAErD,IAAM,SAAS,GAAG,IAAI,kBAAS,CAAC,0BAAG,CAAC,CAAC;IACrC,IAAM,QAAQ,GAAG,SAAS,CAAC,kBAAkB,CAAC,iBAAiB,EAAE,UAAU,CAAC,CAAC;IAC7E,OAAO;QACL,QAAQ,EAAE,QAAQ;QAClB,KAAK,EAAE,MAAM,CAAC,mBAAmB,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC;KAChD,CAAC;AACJ,CAAC,CAAC;AAdW,QAAA,gBAAgB,oBAc3B","sourcesContent":["//////////////////// ENCODE SINGLE ////////////////////\n\nimport { MethodParameters, MultiAction } from '../utils/action';\nimport { CommandType, getCommand } from '../utils/routerCommands';\nimport { AbiCoder, Interface } from 'ethers';\nimport { abi } from '../abis/ExecutionModule.json';\n// const abi = [\n// 'function coreExecute(uint128 poolId, uint128 accountId, Command[] commands, EIP712Signature sig)',\n// ];\nexport const encodeSingleDeposit = (\n token: string,\n amount: bigint,\n multiAction: MultiAction,\n): void => {\n multiAction.newAction(getCommand(CommandType.DEPOSIT, [token, amount], 0, 0));\n};\n\nexport const encodeSingleWithdraw = (\n token: string,\n amount: bigint,\n multiAction: MultiAction,\n): void => {\n multiAction.newAction(\n getCommand(CommandType.WITHDRAW, [token, amount], 0, 0),\n );\n};\n\nexport const encodeSingleTransferMargin = (\n toMarginAccountId: number,\n token: string,\n amount: bigint,\n multiAction: MultiAction,\n): void => {\n multiAction.newAction(\n getCommand(\n CommandType.TRANSFER_MARGIN_ACCOUNT,\n [toMarginAccountId, token, amount],\n 0,\n 0,\n ),\n );\n};\n\nexport const encodeSingleTrade = (\n counterpartyAccountIds: number[],\n orderBase: bigint,\n orderPriceLimit: bigint,\n marketId: number,\n exchangeId: number,\n multiAction: MultiAction,\n): void => {\n // (int256 orderBase, UD60x18 orderPriceLimit) = abi.decode(matchOrderInputs.inputs, (int256, UD60x18));\n const encodedBasePrice = AbiCoder.defaultAbiCoder().encode(\n ['int256', 'uint256'],\n [orderBase, orderPriceLimit],\n );\n\n multiAction.newAction(\n getCommand(\n CommandType.MATCH_ORDER,\n [counterpartyAccountIds, encodedBasePrice],\n marketId,\n exchangeId,\n ),\n );\n};\n\nexport const encodeRouterCall = (\n multiAction: MultiAction,\n accountId: number,\n nativeCurrencyValue: bigint,\n): MethodParameters => {\n const functionSignature = 'execute';\n const parameters = [accountId, multiAction.commands];\n\n const INTERFACE = new Interface(abi);\n const calldata = INTERFACE.encodeFunctionData(functionSignature, parameters);\n return {\n calldata: calldata,\n value: BigInt(nativeCurrencyValue).toString(10),\n };\n};\n"]}
|
|
@@ -49,8 +49,7 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
49
49
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
50
50
|
exports.executeTransaction = exports.estimateGas = void 0;
|
|
51
51
|
var contractAddresses_1 = require("../utils/contractAddresses");
|
|
52
|
-
|
|
53
|
-
function estimateGas(signer, data, value, chainId, transactionType) {
|
|
52
|
+
function estimateGas(signer, data, value, chainId, targetContract) {
|
|
54
53
|
return __awaiter(this, void 0, void 0, function () {
|
|
55
54
|
var accountAddress, contractAddress, tx, gasLimit;
|
|
56
55
|
return __generator(this, function (_a) {
|
|
@@ -58,9 +57,7 @@ function estimateGas(signer, data, value, chainId, transactionType) {
|
|
|
58
57
|
case 0: return [4 /*yield*/, signer.getAddress()];
|
|
59
58
|
case 1:
|
|
60
59
|
accountAddress = _a.sent();
|
|
61
|
-
contractAddress =
|
|
62
|
-
? (0, contractAddresses_1.getAddress)(chainId, 'passive_pool_proxy')
|
|
63
|
-
: (0, contractAddresses_1.getAddress)(chainId, 'core_proxy');
|
|
60
|
+
contractAddress = (0, contractAddresses_1.getAddress)(chainId, targetContract);
|
|
64
61
|
tx = __assign({ from: accountAddress, to: contractAddress, data: data }, (value && value !== '0' ? { value: value } : {}));
|
|
65
62
|
gasLimit = BigInt('5000000');
|
|
66
63
|
return [2 /*return*/, __assign(__assign({}, tx), { gasLimit: gasLimit })];
|
|
@@ -69,12 +66,12 @@ function estimateGas(signer, data, value, chainId, transactionType) {
|
|
|
69
66
|
});
|
|
70
67
|
}
|
|
71
68
|
exports.estimateGas = estimateGas;
|
|
72
|
-
function executeTransaction(signer, data, value, chainId,
|
|
69
|
+
function executeTransaction(signer, data, value, chainId, targetContract) {
|
|
73
70
|
return __awaiter(this, void 0, void 0, function () {
|
|
74
71
|
var txData, txResponse, txReceipt, error_1;
|
|
75
72
|
return __generator(this, function (_a) {
|
|
76
73
|
switch (_a.label) {
|
|
77
|
-
case 0: return [4 /*yield*/, estimateGas(signer, data, value, chainId,
|
|
74
|
+
case 0: return [4 /*yield*/, estimateGas(signer, data, value, chainId, targetContract)];
|
|
78
75
|
case 1:
|
|
79
76
|
txData = _a.sent();
|
|
80
77
|
_a.label = 2;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"executeTransaction.js","sourceRoot":"/","sources":["services/executeTransaction.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,
|
|
1
|
+
{"version":3,"file":"executeTransaction.js","sourceRoot":"/","sources":["services/executeTransaction.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,gEAAsE;AAStE,SAAsB,WAAW,CAC/B,MAA8B,EAC9B,IAAY,EACZ,KAAa,EACb,OAAe,EACf,cAA4B;;;;;wBAEL,qBAAM,MAAM,CAAC,UAAU,EAAE,EAAA;;oBAA1C,cAAc,GAAG,SAAyB;oBAC1C,eAAe,GAAG,IAAA,8BAAU,EAAC,OAAO,EAAE,cAAc,CAAC,CAAC;oBACtD,EAAE,cACN,IAAI,EAAE,cAAc,EACpB,EAAE,EAAE,eAAe,EACnB,IAAI,MAAA,IACD,CAAC,KAAK,IAAI,KAAK,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CACpD,CAAC;oBAEI,QAAQ,GAAW,MAAM,CAAC,SAAS,CAAC,CAAC;oBAC3C,4CAAY,EAAE,KAAE,QAAQ,UAAA,KAAG;;;;CAC5B;AAlBD,kCAkBC;AAED,SAAsB,kBAAkB,CACtC,MAA8B,EAC9B,IAAY,EACZ,KAAa,EACb,OAAe,EACf,cAA4B;;;;;wBAEb,qBAAM,WAAW,CAC9B,MAAM,EACN,IAAI,EACJ,KAAK,EACL,OAAO,EACP,cAAc,CACf,EAAA;;oBANK,MAAM,GAAG,SAMd;;;;oBAEoB,qBAAM,MAAM,CAAC,eAAe,CAAC,MAAM,CAAC,EAAA;;oBAAjD,UAAU,GAAG,SAAoC;oBACrC,qBAAM,UAAU,CAAC,IAAI,EAAE,EAAA;;oBAAnC,SAAS,GAAG,SAAuB;oBACzC,sBAAO,SAAS,EAAC;;;oBAEjB,OAAO,CAAC,IAAI,CAAC,OAAK,CAAC,CAAC;oBACpB,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;;;;;CAElD;AAtBD,gDAsBC","sourcesContent":["import { JsonRpcSigner, Signer } from 'ethers';\nimport { ContractType, getAddress } from '../utils/contractAddresses';\n\nexport type Transaction = {\n from: string;\n to: string;\n data: string;\n value?: string;\n};\n\nexport async function estimateGas(\n signer: Signer | JsonRpcSigner,\n data: string,\n value: string,\n chainId: number,\n targetContract: ContractType,\n): Promise<Transaction & { gasLimit: bigint }> {\n const accountAddress = await signer.getAddress();\n const contractAddress = getAddress(chainId, targetContract);\n const tx = {\n from: accountAddress,\n to: contractAddress,\n data,\n ...(value && value !== '0' ? { value: value } : {}),\n };\n\n const gasLimit: bigint = BigInt('5000000'); // hardcode to 5m gas limit\n return { ...tx, gasLimit };\n}\n\nexport async function executeTransaction(\n signer: Signer | JsonRpcSigner,\n data: string,\n value: string,\n chainId: number,\n targetContract: ContractType,\n) {\n const txData = await estimateGas(\n signer,\n data,\n value,\n chainId,\n targetContract,\n );\n try {\n const txResponse = await signer.sendTransaction(txData);\n const txReceipt = await txResponse.wait();\n return txReceipt;\n } catch (error) {\n console.warn(error);\n throw new Error('Transaction Execution Error');\n }\n}\n"]}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.encodeRemoveLiquidityCall = exports.encodeProvideLiquidityCall = void 0;
|
|
3
|
+
exports.encodeWithdrawPassivePoolAndBridge = exports.encodeTransferFromMAToPool = exports.encodeRemoveLiquidityCall = exports.encodeProvideLiquidityCall = void 0;
|
|
4
4
|
var ethers_1 = require("ethers");
|
|
5
|
+
var Periphery_json_1 = require("../../abis/Periphery.json");
|
|
5
6
|
// @todo Update ABI
|
|
6
7
|
var provideLiquidityAbi = [
|
|
7
8
|
'function addLiquidity(uint128 poolId, address owner, uint256 amount, uint256 minShares) returns (uint256)',
|
|
@@ -26,4 +27,32 @@ var encodeRemoveLiquidityCall = function (poolId, sharesAmount, minOut) {
|
|
|
26
27
|
return { calldata: calldata, value: BigInt(0).toString(10) };
|
|
27
28
|
};
|
|
28
29
|
exports.encodeRemoveLiquidityCall = encodeRemoveLiquidityCall;
|
|
30
|
+
var encodeTransferFromMAToPool = function (accountId, amount, sig, poolId, owner, minShares) {
|
|
31
|
+
var functionSignature = 'transferFromMAToPool';
|
|
32
|
+
var parameters = [{ accountId: accountId, amount: amount, sig: sig, poolId: poolId, owner: owner, minShares: minShares }];
|
|
33
|
+
var INTERFACE = new ethers_1.Interface(Periphery_json_1.abi);
|
|
34
|
+
var calldata = INTERFACE.encodeFunctionData(functionSignature, parameters);
|
|
35
|
+
return { calldata: calldata, value: BigInt(0).toString(10) };
|
|
36
|
+
};
|
|
37
|
+
exports.encodeTransferFromMAToPool = encodeTransferFromMAToPool;
|
|
38
|
+
var encodeWithdrawPassivePoolAndBridge = function (owner, poolId, sharesAmount, minOut, sig, socketMsgGasLimit, sockerConnector, socketController, receiver) {
|
|
39
|
+
var functionSignature = 'withdrawPassivePool';
|
|
40
|
+
var parameters = [
|
|
41
|
+
{
|
|
42
|
+
owner: owner,
|
|
43
|
+
poolId: poolId,
|
|
44
|
+
sharesAmount: sharesAmount,
|
|
45
|
+
minOut: minOut,
|
|
46
|
+
sig: sig,
|
|
47
|
+
socketMsgGasLimit: socketMsgGasLimit,
|
|
48
|
+
sockerConnector: sockerConnector,
|
|
49
|
+
socketController: socketController,
|
|
50
|
+
receiver: receiver,
|
|
51
|
+
},
|
|
52
|
+
];
|
|
53
|
+
var INTERFACE = new ethers_1.Interface(Periphery_json_1.abi);
|
|
54
|
+
var calldata = INTERFACE.encodeFunctionData(functionSignature, parameters);
|
|
55
|
+
return { calldata: calldata, value: BigInt(0).toString(10) };
|
|
56
|
+
};
|
|
57
|
+
exports.encodeWithdrawPassivePoolAndBridge = encodeWithdrawPassivePoolAndBridge;
|
|
29
58
|
//# sourceMappingURL=encode.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"encode.js","sourceRoot":"/","sources":["services/lp/encode.ts"],"names":[],"mappings":";;;AACA,iCAAmC;AAEnC,mBAAmB;AACnB,IAAM,mBAAmB,GAAG;IAC1B,2GAA2G;CAC5G,CAAC;AAEF,mBAAmB;AACnB,IAAM,kBAAkB,GAAG;IACzB,kGAAkG;CACnG,CAAC;AACK,IAAM,0BAA0B,GAAG,UACxC,MAAc,EACd,YAAoB,EACpB,MAAc,EACd,SAAiB;IAEjB,IAAM,iBAAiB,GAAG,cAAc,CAAC;IACzC,IAAM,UAAU,GAAG,CAAC,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;IAC7D,IAAM,SAAS,GAAG,IAAI,kBAAS,CAAC,mBAAmB,CAAC,CAAC;IACrD,IAAM,QAAQ,GAAG,SAAS,CAAC,kBAAkB,CAAC,iBAAiB,EAAE,UAAU,CAAC,CAAC;IAC7E,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;AAC/D,CAAC,CAAC;AAXW,QAAA,0BAA0B,8BAWrC;AAEK,IAAM,yBAAyB,GAAG,UACvC,MAAc,EACd,YAAoB,EACpB,MAAc;IAEd,IAAM,iBAAiB,GAAG,iBAAiB,CAAC;IAC5C,IAAM,UAAU,GAAG,CAAC,MAAM,EAAE,YAAY,EAAE,MAAM,CAAC,CAAC;IAClD,IAAM,SAAS,GAAG,IAAI,kBAAS,CAAC,kBAAkB,CAAC,CAAC;IACpD,IAAM,QAAQ,GAAG,SAAS,CAAC,kBAAkB,CAAC,iBAAiB,EAAE,UAAU,CAAC,CAAC;IAC7E,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;AAC/D,CAAC,CAAC;AAVW,QAAA,yBAAyB,6BAUpC","sourcesContent":["import { MethodParameters } from '../../utils/action';\nimport { Interface } from 'ethers';\n\n// @todo Update ABI\nconst provideLiquidityAbi = [\n 'function addLiquidity(uint128 poolId, address owner, uint256 amount, uint256 minShares) returns (uint256)',\n];\n\n// @todo Update ABI\nconst removeLiquidityabi = [\n 'function removeLiquidity(uint128 poolId, uint256 sharesAmount, uint256 minOut) returns (uint256)',\n];\nexport const encodeProvideLiquidityCall = (\n poolId: number,\n accountOwner: string,\n amount: bigint,\n minShares: number,\n): MethodParameters => {\n const functionSignature = 'addLiquidity';\n const parameters = [poolId, accountOwner, amount, minShares];\n const INTERFACE = new Interface(provideLiquidityAbi);\n const calldata = INTERFACE.encodeFunctionData(functionSignature, parameters);\n return { calldata: calldata, value: BigInt(0).toString(10) };\n};\n\nexport const encodeRemoveLiquidityCall = (\n poolId: number,\n sharesAmount: bigint,\n minOut: number,\n): MethodParameters => {\n const functionSignature = 'removeLiquidity';\n const parameters = [poolId, sharesAmount, minOut];\n const INTERFACE = new Interface(removeLiquidityabi);\n const calldata = INTERFACE.encodeFunctionData(functionSignature, parameters);\n return { calldata: calldata, value: BigInt(0).toString(10) };\n};\n"]}
|
|
1
|
+
{"version":3,"file":"encode.js","sourceRoot":"/","sources":["services/lp/encode.ts"],"names":[],"mappings":"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","sourcesContent":["import { MethodParameters } from '../../utils/action';\nimport { Interface } from 'ethers';\nimport { EIP712Signature } from '../sign';\nimport { abi as peripheryAbi } from '../../abis/Periphery.json';\n\n// @todo Update ABI\nconst provideLiquidityAbi = [\n 'function addLiquidity(uint128 poolId, address owner, uint256 amount, uint256 minShares) returns (uint256)',\n];\n\n// @todo Update ABI\nconst removeLiquidityabi = [\n 'function removeLiquidity(uint128 poolId, uint256 sharesAmount, uint256 minOut) returns (uint256)',\n];\nexport const encodeProvideLiquidityCall = (\n poolId: number,\n accountOwner: string,\n amount: bigint,\n minShares: number,\n): MethodParameters => {\n const functionSignature = 'addLiquidity';\n const parameters = [poolId, accountOwner, amount, minShares];\n const INTERFACE = new Interface(provideLiquidityAbi);\n const calldata = INTERFACE.encodeFunctionData(functionSignature, parameters);\n return { calldata: calldata, value: BigInt(0).toString(10) };\n};\n\nexport const encodeRemoveLiquidityCall = (\n poolId: number,\n sharesAmount: bigint,\n minOut: number,\n): MethodParameters => {\n const functionSignature = 'removeLiquidity';\n const parameters = [poolId, sharesAmount, minOut];\n const INTERFACE = new Interface(removeLiquidityabi);\n const calldata = INTERFACE.encodeFunctionData(functionSignature, parameters);\n return { calldata: calldata, value: BigInt(0).toString(10) };\n};\n\nexport const encodeTransferFromMAToPool = (\n accountId: number,\n amount: bigint,\n sig: EIP712Signature,\n poolId: number,\n owner: string,\n minShares: bigint,\n): MethodParameters => {\n const functionSignature = 'transferFromMAToPool';\n const parameters = [{ accountId, amount, sig, poolId, owner, minShares }];\n const INTERFACE = new Interface(peripheryAbi);\n const calldata = INTERFACE.encodeFunctionData(functionSignature, parameters);\n return { calldata: calldata, value: BigInt(0).toString(10) };\n};\n\nexport const encodeWithdrawPassivePoolAndBridge = (\n owner: string,\n poolId: number,\n sharesAmount: bigint,\n minOut: bigint,\n sig: EIP712Signature,\n socketMsgGasLimit: bigint,\n sockerConnector: string,\n socketController: string,\n receiver: string,\n): MethodParameters => {\n const functionSignature = 'withdrawPassivePool';\n const parameters = [\n {\n owner,\n poolId,\n sharesAmount,\n minOut,\n sig,\n socketMsgGasLimit,\n sockerConnector,\n socketController,\n receiver,\n },\n ];\n const INTERFACE = new Interface(peripheryAbi);\n const calldata = INTERFACE.encodeFunctionData(functionSignature, parameters);\n return { calldata: calldata, value: BigInt(0).toString(10) };\n};\n"]}
|
package/dist/services/lp/lp.js
CHANGED
|
@@ -39,8 +39,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
39
39
|
exports.removeLiquidity = exports.provideLiquidity = void 0;
|
|
40
40
|
var executeTransaction_1 = require("../executeTransaction");
|
|
41
41
|
var encode_1 = require("./encode");
|
|
42
|
-
var consts_1 = require("../../utils/consts");
|
|
43
42
|
var lp_1 = require("../../utils/lp");
|
|
43
|
+
var contractAddresses_1 = require("../../utils/contractAddresses");
|
|
44
44
|
var provideLiquidity = function (params) { return __awaiter(void 0, void 0, void 0, function () {
|
|
45
45
|
var ownerAddrees, network, chainId, minShares, amount, _a, data, value, result;
|
|
46
46
|
var _b;
|
|
@@ -59,7 +59,7 @@ var provideLiquidity = function (params) { return __awaiter(void 0, void 0, void
|
|
|
59
59
|
}
|
|
60
60
|
amount = (0, lp_1.expandLpAmount)(params.amount, 6);
|
|
61
61
|
_a = (0, encode_1.encodeProvideLiquidityCall)(params.lpPoolId, ownerAddrees, amount, minShares), data = _a.calldata, value = _a.value;
|
|
62
|
-
return [4 /*yield*/, (0, executeTransaction_1.executeTransaction)(params.signer, data, value, chainId,
|
|
62
|
+
return [4 /*yield*/, (0, executeTransaction_1.executeTransaction)(params.signer, data, value, chainId, contractAddresses_1.ContractType.PASSIVE_POOL_PROXY)];
|
|
63
63
|
case 3:
|
|
64
64
|
result = _c.sent();
|
|
65
65
|
return [2 /*return*/, {
|
|
@@ -84,7 +84,7 @@ var removeLiquidity = function (params) { return __awaiter(void 0, void 0, void
|
|
|
84
84
|
minOut = (0, lp_1.calculateMinOutForLp)(params.amount);
|
|
85
85
|
amount = (0, lp_1.expandLpAmount)(params.amount, 30);
|
|
86
86
|
_a = (0, encode_1.encodeRemoveLiquidityCall)(params.lpPoolId, amount, minOut), data = _a.calldata, value = _a.value;
|
|
87
|
-
return [4 /*yield*/, (0, executeTransaction_1.executeTransaction)(params.signer, data, value, chainId,
|
|
87
|
+
return [4 /*yield*/, (0, executeTransaction_1.executeTransaction)(params.signer, data, value, chainId, contractAddresses_1.ContractType.PASSIVE_POOL_PROXY)];
|
|
88
88
|
case 2:
|
|
89
89
|
result = _c.sent();
|
|
90
90
|
return [2 /*return*/, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lp.js","sourceRoot":"/","sources":["services/lp/lp.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,4DAA2D;AAC3D,mCAGkB;AAOlB,
|
|
1
|
+
{"version":3,"file":"lp.js","sourceRoot":"/","sources":["services/lp/lp.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,4DAA2D;AAC3D,mCAGkB;AAOlB,qCAIwB;AACxB,mEAA6D;AAEtD,IAAM,gBAAgB,GAAG,UAC9B,MAA8B;;;;;oBAET,qBAAM,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,EAAA;;gBAA/C,YAAY,GAAG,SAAgC;gBAErC,qBAAM,CAAA,MAAA,MAAM,CAAC,MAAM,CAAC,QAAQ,0CAAE,UAAU,EAAE,CAAA,EAAA;;gBAApD,OAAO,GAAG,SAA0C;gBACpD,OAAO,GAAG,MAAM,CAAC,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,CAAC,CAAC;gBACnC,SAAS,GAAG,IAAA,4BAAuB,EAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAEzD,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBACxB,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;gBAC5C,CAAC;gBAEK,MAAM,GAAG,IAAA,mBAAc,EAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;gBAE1C,KAA4B,IAAA,mCAA0B,EAC1D,MAAM,CAAC,QAAQ,EACf,YAAY,EACZ,MAAM,EACN,SAAS,CACV,EALiB,IAAI,cAAA,EAAE,KAAK,WAAA,CAK3B;gBAEa,qBAAM,IAAA,uCAAkB,EACrC,MAAM,CAAC,MAAM,EACb,IAAI,EACJ,KAAK,EACL,OAAO,EACP,gCAAY,CAAC,kBAAkB,CAChC,EAAA;;gBANK,MAAM,GAAG,SAMd;gBAED,sBAAO;wBACL,eAAe,EAAE,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,IAAI,KAAI,IAAI;qBACtC,EAAC;;;KACH,CAAC;AAjCW,QAAA,gBAAgB,oBAiC3B;AAEK,IAAM,eAAe,GAAG,UAC7B,MAA6B;;;;;oBAEb,qBAAM,CAAA,MAAA,MAAM,CAAC,MAAM,CAAC,QAAQ,0CAAE,UAAU,EAAE,CAAA,EAAA;;gBAApD,OAAO,GAAG,SAA0C;gBACpD,OAAO,GAAG,MAAM,CAAC,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,CAAC,CAAC;gBAEzC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBACxB,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;gBAChD,CAAC;gBAEK,MAAM,GAAG,IAAA,yBAAoB,EAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAE7C,MAAM,GAAG,IAAA,mBAAc,EAAC,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;gBAC3C,KAA4B,IAAA,kCAAyB,EACzD,MAAM,CAAC,QAAQ,EACf,MAAM,EACN,MAAM,CACP,EAJiB,IAAI,cAAA,EAAE,KAAK,WAAA,CAI3B;gBAEa,qBAAM,IAAA,uCAAkB,EACrC,MAAM,CAAC,MAAM,EACb,IAAI,EACJ,KAAK,EACL,OAAO,EACP,gCAAY,CAAC,kBAAkB,CAChC,EAAA;;gBANK,MAAM,GAAG,SAMd;gBAED,sBAAO;wBACL,eAAe,EAAE,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,IAAI,KAAI,IAAI;qBACtC,EAAC;;;KACH,CAAC;AA9BW,QAAA,eAAe,mBA8B1B","sourcesContent":["import { executeTransaction } from '../executeTransaction';\nimport {\n encodeProvideLiquidityCall,\n encodeRemoveLiquidityCall,\n} from './encode';\nimport {\n ProvideLiquidityParams,\n ProvideLiquidityResult,\n RemoveLiquidityParams,\n RemoveLiquidityResult,\n} from './types';\nimport {\n calculateMinOutForLp,\n calculateMinSharesForLp,\n expandLpAmount,\n} from '../../utils/lp';\nimport { ContractType } from '../../utils/contractAddresses';\n\nexport const provideLiquidity = async (\n params: ProvideLiquidityParams,\n): Promise<ProvideLiquidityResult> => {\n const ownerAddrees = await params.signer.getAddress();\n\n const network = await params.signer.provider?.getNetwork();\n const chainId = Number(network?.chainId);\n const minShares = calculateMinSharesForLp(params.amount);\n\n if (params.amount === 0) {\n throw new Error('LP amount can not be 0');\n }\n\n const amount = expandLpAmount(params.amount, 6);\n\n const { calldata: data, value } = encodeProvideLiquidityCall(\n params.lpPoolId,\n ownerAddrees,\n amount,\n minShares,\n );\n\n const result = await executeTransaction(\n params.signer,\n data,\n value,\n chainId,\n ContractType.PASSIVE_POOL_PROXY,\n );\n\n return {\n transactionHash: result?.hash || null,\n };\n};\n\nexport const removeLiquidity = async (\n params: RemoveLiquidityParams,\n): Promise<RemoveLiquidityResult> => {\n const network = await params.signer.provider?.getNetwork();\n const chainId = Number(network?.chainId);\n\n if (params.amount === 0) {\n throw new Error('Shares amount can not be 0');\n }\n\n const minOut = calculateMinOutForLp(params.amount);\n\n const amount = expandLpAmount(params.amount, 30); // shares have 30 decimals\n const { calldata: data, value } = encodeRemoveLiquidityCall(\n params.lpPoolId,\n amount,\n minOut,\n );\n\n const result = await executeTransaction(\n params.signer,\n data,\n value,\n chainId,\n ContractType.PASSIVE_POOL_PROXY,\n );\n\n return {\n transactionHash: result?.hash || null,\n };\n};\n"]}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
+
function step(op) {
|
|
16
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
+
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
18
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
19
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
+
switch (op[0]) {
|
|
21
|
+
case 0: case 1: t = op; break;
|
|
22
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
+
default:
|
|
26
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
+
if (t[2]) _.ops.pop();
|
|
31
|
+
_.trys.pop(); continue;
|
|
32
|
+
}
|
|
33
|
+
op = body.call(thisArg, _);
|
|
34
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.transferFromMAToPool = void 0;
|
|
40
|
+
var contractAddresses_1 = require("../../utils/contractAddresses");
|
|
41
|
+
var executeTransaction_1 = require("../executeTransaction");
|
|
42
|
+
var sign_1 = require("../sign");
|
|
43
|
+
var common_1 = require("../token/common");
|
|
44
|
+
var encode_1 = require("./encode");
|
|
45
|
+
var transferFromMAToPool = function (params) { return __awaiter(void 0, void 0, void 0, function () {
|
|
46
|
+
var network, chainId, eip712Signature, tokenDecimals, amount, _a, data, value, result;
|
|
47
|
+
var _b;
|
|
48
|
+
return __generator(this, function (_c) {
|
|
49
|
+
switch (_c.label) {
|
|
50
|
+
case 0: return [4 /*yield*/, ((_b = params.signer.provider) === null || _b === void 0 ? void 0 : _b.getNetwork())];
|
|
51
|
+
case 1:
|
|
52
|
+
network = _c.sent();
|
|
53
|
+
chainId = Number(network === null || network === void 0 ? void 0 : network.chainId);
|
|
54
|
+
return [4 /*yield*/, (0, sign_1.signCoreCommands)(params.signer, chainId, params.accountId, params.accountSigNonce, params.deadline)];
|
|
55
|
+
case 2:
|
|
56
|
+
eip712Signature = _c.sent();
|
|
57
|
+
tokenDecimals = (0, common_1.getTokenDetails)(params.poolTokenAddress).tokenDecimals;
|
|
58
|
+
amount = (0, common_1.scale)(tokenDecimals)(params.amount);
|
|
59
|
+
_a = (0, encode_1.encodeTransferFromMAToPool)(params.accountId, amount, eip712Signature, params.poolId, params.owner, params.minShares), data = _a.calldata, value = _a.value;
|
|
60
|
+
return [4 /*yield*/, (0, executeTransaction_1.executeTransaction)(params.signer, data, value, chainId, contractAddresses_1.ContractType.PERIPHERY_PROXY)];
|
|
61
|
+
case 3:
|
|
62
|
+
result = _c.sent();
|
|
63
|
+
return [2 /*return*/, {
|
|
64
|
+
transactionHash: (result === null || result === void 0 ? void 0 : result.hash) || null,
|
|
65
|
+
}];
|
|
66
|
+
}
|
|
67
|
+
});
|
|
68
|
+
}); };
|
|
69
|
+
exports.transferFromMAToPool = transferFromMAToPool;
|
|
70
|
+
//# sourceMappingURL=transferFromMAToPool.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transferFromMAToPool.js","sourceRoot":"/","sources":["services/lp/transferFromMAToPool.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,mEAA6D;AAC7D,4DAA2D;AAC3D,gCAA2C;AAC3C,0CAAyD;AACzD,mCAAsD;AAM/C,IAAM,oBAAoB,GAAG,UAClC,MAAkC;;;;;oBAElB,qBAAM,CAAA,MAAA,MAAM,CAAC,MAAM,CAAC,QAAQ,0CAAE,UAAU,EAAE,CAAA,EAAA;;gBAApD,OAAO,GAAG,SAA0C;gBACpD,OAAO,GAAG,MAAM,CAAC,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,CAAC,CAAC;gBAEjB,qBAAM,IAAA,uBAAgB,EAC5C,MAAM,CAAC,MAAM,EACb,OAAO,EACP,MAAM,CAAC,SAAS,EAChB,MAAM,CAAC,eAAe,EACtB,MAAM,CAAC,QAAQ,CAChB,EAAA;;gBANK,eAAe,GAAG,SAMvB;gBAEO,aAAa,GAAK,IAAA,wBAAe,EAAC,MAAM,CAAC,gBAAgB,CAAC,cAA7C,CAA8C;gBAC7D,MAAM,GAAG,IAAA,cAAK,EAAC,aAAa,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAE7C,KAA4B,IAAA,mCAA0B,EAC1D,MAAM,CAAC,SAAS,EAChB,MAAM,EACN,eAAe,EACf,MAAM,CAAC,MAAM,EACb,MAAM,CAAC,KAAK,EACZ,MAAM,CAAC,SAAS,CACjB,EAPiB,IAAI,cAAA,EAAE,KAAK,WAAA,CAO3B;gBAEa,qBAAM,IAAA,uCAAkB,EACrC,MAAM,CAAC,MAAM,EACb,IAAI,EACJ,KAAK,EACL,OAAO,EACP,gCAAY,CAAC,eAAe,CAC7B,EAAA;;gBANK,MAAM,GAAG,SAMd;gBAED,sBAAO;wBACL,eAAe,EAAE,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,IAAI,KAAI,IAAI;qBACtC,EAAC;;;KACH,CAAC;AArCW,QAAA,oBAAoB,wBAqC/B","sourcesContent":["import { ContractType } from '../../utils/contractAddresses';\nimport { executeTransaction } from '../executeTransaction';\nimport { signCoreCommands } from '../sign';\nimport { getTokenDetails, scale } from '../token/common';\nimport { encodeTransferFromMAToPool } from './encode';\nimport {\n TransferFromMAToPoolParams,\n TransferFromMAToPoolResult,\n} from './types';\n\nexport const transferFromMAToPool = async (\n params: TransferFromMAToPoolParams,\n): Promise<TransferFromMAToPoolResult> => {\n const network = await params.signer.provider?.getNetwork();\n const chainId = Number(network?.chainId);\n\n const eip712Signature = await signCoreCommands(\n params.signer,\n chainId,\n params.accountId,\n params.accountSigNonce,\n params.deadline,\n );\n\n const { tokenDecimals } = getTokenDetails(params.poolTokenAddress);\n const amount = scale(tokenDecimals)(params.amount);\n\n const { calldata: data, value } = encodeTransferFromMAToPool(\n params.accountId,\n amount,\n eip712Signature,\n params.poolId,\n params.owner,\n params.minShares,\n );\n\n const result = await executeTransaction(\n params.signer,\n data,\n value,\n chainId,\n ContractType.PERIPHERY_PROXY,\n );\n\n return {\n transactionHash: result?.hash || null,\n };\n};\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"/","sources":["services/lp/types.ts"],"names":[],"mappings":"","sourcesContent":["import { JsonRpcSigner, Signer } from 'ethers';\nimport { LpPoolEntity } from '@reyaxyz/common';\n\nexport type ProvideLiquidityParams = {\n signer: Signer | JsonRpcSigner;\n amount: number;\n lpPoolId: LpPoolEntity['id'];\n};\n\nexport type RemoveLiquidityParams = {\n signer: Signer | JsonRpcSigner;\n lpPoolId: LpPoolEntity['id'];\n amount: number;\n};\n\nexport type ProvideLiquidityResult = {\n transactionHash: string | null;\n};\n\nexport type RemoveLiquidityResult = {\n transactionHash: string | null;\n};\n"]}
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"/","sources":["services/lp/types.ts"],"names":[],"mappings":"","sourcesContent":["import { JsonRpcSigner, Signer } from 'ethers';\nimport { LpPoolEntity, TokenEntity } from '@reyaxyz/common';\n\nexport type ProvideLiquidityParams = {\n signer: Signer | JsonRpcSigner;\n amount: number;\n lpPoolId: LpPoolEntity['id'];\n};\n\nexport type RemoveLiquidityParams = {\n signer: Signer | JsonRpcSigner;\n lpPoolId: LpPoolEntity['id'];\n amount: number;\n};\n\nexport type ProvideLiquidityResult = {\n transactionHash: string | null;\n};\n\nexport type RemoveLiquidityResult = {\n transactionHash: string | null;\n};\n\nexport type TransferFromMAToPoolParams = {\n signer: Signer | JsonRpcSigner;\n accountId: number;\n accountSigNonce: number;\n deadline: number;\n poolTokenAddress: TokenEntity['address'];\n amount: number;\n poolId: number;\n owner: string;\n minShares: bigint;\n};\n\nexport type TransferFromMAToPoolResult = {\n transactionHash: string | null;\n};\n\nexport type WithdrawPassivePoolAndBridgeParams = {\n signer: Signer | JsonRpcSigner;\n ownerAddress: string;\n poolId: number;\n poolTokenAddress: TokenEntity['address'];\n sharesAmount: bigint;\n minOut: bigint;\n ownerSigNonce: number;\n deadline: number;\n};\n\nexport type WithdrawPassivePoolAndBridgeResult = {\n transactionHash: string | null;\n};\n"]}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
+
function step(op) {
|
|
16
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
+
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
18
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
19
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
+
switch (op[0]) {
|
|
21
|
+
case 0: case 1: t = op; break;
|
|
22
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
+
default:
|
|
26
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
+
if (t[2]) _.ops.pop();
|
|
31
|
+
_.trys.pop(); continue;
|
|
32
|
+
}
|
|
33
|
+
op = body.call(thisArg, _);
|
|
34
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.withdrawPassivePoolAndBridge = void 0;
|
|
40
|
+
var contractAddresses_1 = require("../../utils/contractAddresses");
|
|
41
|
+
var executeTransaction_1 = require("../executeTransaction");
|
|
42
|
+
var sign_1 = require("../sign");
|
|
43
|
+
var encode_1 = require("./encode");
|
|
44
|
+
var common_1 = require("@reyaxyz/common");
|
|
45
|
+
var withdrawPassivePoolAndBridge = function (params) { return __awaiter(void 0, void 0, void 0, function () {
|
|
46
|
+
var network, chainId, eip712Signature, _a, data, value, result;
|
|
47
|
+
var _b;
|
|
48
|
+
return __generator(this, function (_c) {
|
|
49
|
+
switch (_c.label) {
|
|
50
|
+
case 0: return [4 /*yield*/, ((_b = params.signer.provider) === null || _b === void 0 ? void 0 : _b.getNetwork())];
|
|
51
|
+
case 1:
|
|
52
|
+
network = _c.sent();
|
|
53
|
+
chainId = Number(network === null || network === void 0 ? void 0 : network.chainId);
|
|
54
|
+
return [4 /*yield*/, (0, sign_1.signPoolRemoveLiquidity)(params.signer, chainId, params.ownerAddress, params.poolId, params.sharesAmount, params.minOut, params.ownerSigNonce, params.deadline)];
|
|
55
|
+
case 2:
|
|
56
|
+
eip712Signature = _c.sent();
|
|
57
|
+
_a = (0, encode_1.encodeWithdrawPassivePoolAndBridge)(params.ownerAddress, params.poolId, params.sharesAmount, params.minOut, eip712Signature, BigInt('10000000'), //todo
|
|
58
|
+
(0, common_1.getSocketConnector)({
|
|
59
|
+
reyaChainId: chainId,
|
|
60
|
+
tokenAddress: params.poolTokenAddress,
|
|
61
|
+
}), (0, common_1.getSocketController)({
|
|
62
|
+
reyaChainId: chainId,
|
|
63
|
+
tokenAddress: params.poolTokenAddress,
|
|
64
|
+
}), params.ownerAddress), data = _a.calldata, value = _a.value;
|
|
65
|
+
return [4 /*yield*/, (0, executeTransaction_1.executeTransaction)(params.signer, data, value, chainId, contractAddresses_1.ContractType.PERIPHERY_PROXY)];
|
|
66
|
+
case 3:
|
|
67
|
+
result = _c.sent();
|
|
68
|
+
return [2 /*return*/, {
|
|
69
|
+
transactionHash: (result === null || result === void 0 ? void 0 : result.hash) || null,
|
|
70
|
+
}];
|
|
71
|
+
}
|
|
72
|
+
});
|
|
73
|
+
}); };
|
|
74
|
+
exports.withdrawPassivePoolAndBridge = withdrawPassivePoolAndBridge;
|
|
75
|
+
//# sourceMappingURL=withdrawPassivePoolAndBridge.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"withdrawPassivePoolAndBridge.js","sourceRoot":"/","sources":["services/lp/withdrawPassivePoolAndBridge.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,mEAA6D;AAC7D,4DAA2D;AAC3D,gCAAkD;AAKlD,mCAA8D;AAC9D,0CAA0E;AAEnE,IAAM,4BAA4B,GAAG,UAC1C,MAA0C;;;;;oBAE1B,qBAAM,CAAA,MAAA,MAAM,CAAC,MAAM,CAAC,QAAQ,0CAAE,UAAU,EAAE,CAAA,EAAA;;gBAApD,OAAO,GAAG,SAA0C;gBACpD,OAAO,GAAG,MAAM,CAAC,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,CAAC,CAAC;gBACjB,qBAAM,IAAA,8BAAuB,EACnD,MAAM,CAAC,MAAM,EACb,OAAO,EACP,MAAM,CAAC,YAAY,EACnB,MAAM,CAAC,MAAM,EACb,MAAM,CAAC,YAAY,EACnB,MAAM,CAAC,MAAM,EACb,MAAM,CAAC,aAAa,EACpB,MAAM,CAAC,QAAQ,CAChB,EAAA;;gBATK,eAAe,GAAG,SASvB;gBAEK,KAA4B,IAAA,2CAAkC,EAClE,MAAM,CAAC,YAAY,EACnB,MAAM,CAAC,MAAM,EACb,MAAM,CAAC,YAAY,EACnB,MAAM,CAAC,MAAM,EACb,eAAe,EACf,MAAM,CAAC,UAAU,CAAC,EAAE,MAAM;gBAC1B,IAAA,2BAAkB,EAAC;oBACjB,WAAW,EAAE,OAAO;oBACpB,YAAY,EAAE,MAAM,CAAC,gBAAgB;iBACtC,CAAC,EACF,IAAA,4BAAmB,EAAC;oBAClB,WAAW,EAAE,OAAO;oBACpB,YAAY,EAAE,MAAM,CAAC,gBAAgB;iBACtC,CAAC,EACF,MAAM,CAAC,YAAY,CACpB,EAhBiB,IAAI,cAAA,EAAE,KAAK,WAAA,CAgB3B;gBAEa,qBAAM,IAAA,uCAAkB,EACrC,MAAM,CAAC,MAAM,EACb,IAAI,EACJ,KAAK,EACL,OAAO,EACP,gCAAY,CAAC,eAAe,CAC7B,EAAA;;gBANK,MAAM,GAAG,SAMd;gBAED,sBAAO;wBACL,eAAe,EAAE,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,IAAI,KAAI,IAAI;qBACtC,EAAC;;;KACH,CAAC;AA7CW,QAAA,4BAA4B,gCA6CvC","sourcesContent":["import { ContractType } from '../../utils/contractAddresses';\nimport { executeTransaction } from '../executeTransaction';\nimport { signPoolRemoveLiquidity } from '../sign';\nimport {\n WithdrawPassivePoolAndBridgeParams,\n WithdrawPassivePoolAndBridgeResult,\n} from './types';\nimport { encodeWithdrawPassivePoolAndBridge } from './encode';\nimport { getSocketConnector, getSocketController } from '@reyaxyz/common';\n\nexport const withdrawPassivePoolAndBridge = async (\n params: WithdrawPassivePoolAndBridgeParams,\n): Promise<WithdrawPassivePoolAndBridgeResult> => {\n const network = await params.signer.provider?.getNetwork();\n const chainId = Number(network?.chainId);\n const eip712Signature = await signPoolRemoveLiquidity(\n params.signer,\n chainId,\n params.ownerAddress,\n params.poolId,\n params.sharesAmount,\n params.minOut,\n params.ownerSigNonce,\n params.deadline,\n );\n\n const { calldata: data, value } = encodeWithdrawPassivePoolAndBridge(\n params.ownerAddress,\n params.poolId,\n params.sharesAmount,\n params.minOut,\n eip712Signature,\n BigInt('10000000'), //todo\n getSocketConnector({\n reyaChainId: chainId,\n tokenAddress: params.poolTokenAddress,\n }),\n getSocketController({\n reyaChainId: chainId,\n tokenAddress: params.poolTokenAddress,\n }),\n params.ownerAddress,\n );\n\n const result = await executeTransaction(\n params.signer,\n data,\n value,\n chainId,\n ContractType.PERIPHERY_PROXY,\n );\n\n return {\n transactionHash: result?.hash || null,\n };\n};\n"]}
|
|
@@ -39,7 +39,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
39
39
|
exports.createAccount = void 0;
|
|
40
40
|
var executeTransaction_1 = require("../executeTransaction");
|
|
41
41
|
var encode_1 = require("./encode");
|
|
42
|
-
var
|
|
42
|
+
var contractAddresses_1 = require("../../utils/contractAddresses");
|
|
43
43
|
var createAccount = function (params) { return __awaiter(void 0, void 0, void 0, function () {
|
|
44
44
|
var _a, data, value, network, chainId, result;
|
|
45
45
|
var _b;
|
|
@@ -51,7 +51,7 @@ var createAccount = function (params) { return __awaiter(void 0, void 0, void 0,
|
|
|
51
51
|
case 1:
|
|
52
52
|
network = _c.sent();
|
|
53
53
|
chainId = Number(network === null || network === void 0 ? void 0 : network.chainId);
|
|
54
|
-
return [4 /*yield*/, (0, executeTransaction_1.executeTransaction)(params.signer, data, value, chainId,
|
|
54
|
+
return [4 /*yield*/, (0, executeTransaction_1.executeTransaction)(params.signer, data, value, chainId, contractAddresses_1.ContractType.CORE_PROXY)];
|
|
55
55
|
case 2:
|
|
56
56
|
result = _c.sent();
|
|
57
57
|
return [2 /*return*/, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"account.js","sourceRoot":"/","sources":["services/margin-accounts/account.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,4DAA2D;AAC3D,mCAAmD;AAEnD,
|
|
1
|
+
{"version":3,"file":"account.js","sourceRoot":"/","sources":["services/margin-accounts/account.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,4DAA2D;AAC3D,mCAAmD;AAEnD,mEAA6D;AAEtD,IAAM,aAAa,GAAG,UAC3B,MAA2B;;;;;;gBAErB,KAA4B,IAAA,gCAAuB,EACvD,MAAM,CAAC,YAAY,CACpB,EAFiB,IAAI,cAAA,EAAE,KAAK,WAAA,CAE3B;gBAEc,qBAAM,CAAA,MAAA,MAAM,CAAC,MAAM,CAAC,QAAQ,0CAAE,UAAU,EAAE,CAAA,EAAA;;gBAApD,OAAO,GAAG,SAA0C;gBACpD,OAAO,GAAG,MAAM,CAAC,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,CAAC,CAAC;gBAE1B,qBAAM,IAAA,uCAAkB,EACrC,MAAM,CAAC,MAAM,EACb,IAAI,EACJ,KAAK,EACL,OAAO,EACP,gCAAY,CAAC,UAAU,CACxB,EAAA;;gBANK,MAAM,GAAG,SAMd;gBACD,sBAAO;wBACL,eAAe,EAAE,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,IAAI,KAAI,IAAI;qBACtC,EAAC;;;KACH,CAAC;AApBW,QAAA,aAAa,iBAoBxB","sourcesContent":["import { executeTransaction } from '../executeTransaction';\nimport { encodeCreateAccountCall } from './encode';\nimport { CreateAccountParams, CreateAccountResult } from './types';\nimport { ContractType } from '../../utils/contractAddresses';\n\nexport const createAccount = async (\n params: CreateAccountParams,\n): Promise<CreateAccountResult> => {\n const { calldata: data, value } = encodeCreateAccountCall(\n params.ownerAddress,\n );\n\n const network = await params.signer.provider?.getNetwork();\n const chainId = Number(network?.chainId);\n\n const result = await executeTransaction(\n params.signer,\n data,\n value,\n chainId,\n ContractType.CORE_PROXY,\n );\n return {\n transactionHash: result?.hash || null,\n };\n};\n"]}
|
|
@@ -39,24 +39,22 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
39
39
|
exports.deposit = void 0;
|
|
40
40
|
var encode_1 = require("./encode");
|
|
41
41
|
var executeTransaction_1 = require("../executeTransaction");
|
|
42
|
-
var consts_1 = require("../../utils/consts");
|
|
43
42
|
var common_1 = require("../token/common");
|
|
43
|
+
var contractAddresses_1 = require("../../utils/contractAddresses");
|
|
44
44
|
var deposit = function (params) { return __awaiter(void 0, void 0, void 0, function () {
|
|
45
|
-
var tokenDecimals, amount,
|
|
45
|
+
var tokenDecimals, amount, _a, data, value, network, chainId, result;
|
|
46
46
|
var _b;
|
|
47
47
|
return __generator(this, function (_c) {
|
|
48
48
|
switch (_c.label) {
|
|
49
49
|
case 0:
|
|
50
50
|
tokenDecimals = (0, common_1.getTokenDetails)(params.tokenAddress).tokenDecimals;
|
|
51
51
|
amount = (0, common_1.scale)(tokenDecimals)(params.amount);
|
|
52
|
-
|
|
53
|
-
exchangeId = 0;
|
|
54
|
-
_a = (0, encode_1.encodeDeposit)(params.marginAccountId, params.tokenAddress, amount, marketId, exchangeId), data = _a.calldata, value = _a.value;
|
|
52
|
+
_a = (0, encode_1.encodeDeposit)(params.marginAccountId, params.tokenAddress, amount), data = _a.calldata, value = _a.value;
|
|
55
53
|
return [4 /*yield*/, ((_b = params.signer.provider) === null || _b === void 0 ? void 0 : _b.getNetwork())];
|
|
56
54
|
case 1:
|
|
57
55
|
network = _c.sent();
|
|
58
56
|
chainId = Number(network === null || network === void 0 ? void 0 : network.chainId);
|
|
59
|
-
return [4 /*yield*/, (0, executeTransaction_1.executeTransaction)(params.signer, data, value, chainId,
|
|
57
|
+
return [4 /*yield*/, (0, executeTransaction_1.executeTransaction)(params.signer, data, value, chainId, contractAddresses_1.ContractType.CORE_PROXY)];
|
|
60
58
|
case 2:
|
|
61
59
|
result = _c.sent();
|
|
62
60
|
return [2 /*return*/, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deposit.js","sourceRoot":"/","sources":["services/margin-accounts/deposit.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,mCAAyC;AACzC,4DAA2D;AAC3D,
|
|
1
|
+
{"version":3,"file":"deposit.js","sourceRoot":"/","sources":["services/margin-accounts/deposit.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,mCAAyC;AACzC,4DAA2D;AAC3D,0CAAyD;AACzD,mEAA6D;AAEtD,IAAM,OAAO,GAAG,UACrB,MAAqB;;;;;;gBAEb,aAAa,GAAK,IAAA,wBAAe,EAAC,MAAM,CAAC,YAAY,CAAC,cAAzC,CAA0C;gBACzD,MAAM,GAAG,IAAA,cAAK,EAAC,aAAa,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAC7C,KAA4B,IAAA,sBAAa,EAC7C,MAAM,CAAC,eAAe,EACtB,MAAM,CAAC,YAAY,EACnB,MAAM,CACP,EAJiB,IAAI,cAAA,EAAE,KAAK,WAAA,CAI3B;gBAEc,qBAAM,CAAA,MAAA,MAAM,CAAC,MAAM,CAAC,QAAQ,0CAAE,UAAU,EAAE,CAAA,EAAA;;gBAApD,OAAO,GAAG,SAA0C;gBACpD,OAAO,GAAG,MAAM,CAAC,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,CAAC,CAAC;gBAE1B,qBAAM,IAAA,uCAAkB,EACrC,MAAM,CAAC,MAAM,EACb,IAAI,EACJ,KAAK,EACL,OAAO,EACP,gCAAY,CAAC,UAAU,CACxB,EAAA;;gBANK,MAAM,GAAG,SAMd;gBAED,sBAAO;wBACL,eAAe,EAAE,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,IAAI,KAAI,IAAI;qBACtC,EAAC;;;KACH,CAAC;AAzBW,QAAA,OAAO,WAyBlB","sourcesContent":["import { DepositParams, DepositResult } from './types';\nimport { encodeDeposit } from './encode';\nimport { executeTransaction } from '../executeTransaction';\nimport { getTokenDetails, scale } from '../token/common';\nimport { ContractType } from '../../utils/contractAddresses';\n\nexport const deposit = async (\n params: DepositParams,\n): Promise<DepositResult> => {\n const { tokenDecimals } = getTokenDetails(params.tokenAddress);\n const amount = scale(tokenDecimals)(params.amount);\n const { calldata: data, value } = encodeDeposit(\n params.marginAccountId,\n params.tokenAddress,\n amount,\n );\n\n const network = await params.signer.provider?.getNetwork();\n const chainId = Number(network?.chainId);\n\n const result = await executeTransaction(\n params.signer,\n data,\n value,\n chainId,\n ContractType.CORE_PROXY,\n );\n\n return {\n transactionHash: result?.hash || null,\n };\n};\n"]}
|
|
@@ -11,11 +11,12 @@ var __assign = (this && this.__assign) || function () {
|
|
|
11
11
|
return __assign.apply(this, arguments);
|
|
12
12
|
};
|
|
13
13
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
14
|
-
exports.encodeWithdraw = exports.encodeDeposit = exports.encodeCreateAccountCall = void 0;
|
|
14
|
+
exports.encodeWithdrawMAAndBridge = exports.encodeTransferMargin = exports.encodeWithdraw = exports.encodeDeposit = exports.encodeCreateAccountCall = void 0;
|
|
15
15
|
var action_1 = require("../../utils/action");
|
|
16
16
|
var ethers_1 = require("ethers");
|
|
17
17
|
var encode_1 = require("../encode");
|
|
18
18
|
var AccountModule_json_1 = require("../../abis/AccountModule.json");
|
|
19
|
+
var Periphery_json_1 = require("../../abis/Periphery.json");
|
|
19
20
|
var encodeCreateAccountCall = function (accountOwner) {
|
|
20
21
|
var functionSignature = 'createAccount';
|
|
21
22
|
var parameters = [accountOwner];
|
|
@@ -24,20 +25,47 @@ var encodeCreateAccountCall = function (accountOwner) {
|
|
|
24
25
|
return { calldata: calldata, value: BigInt(0).toString(10) };
|
|
25
26
|
};
|
|
26
27
|
exports.encodeCreateAccountCall = encodeCreateAccountCall;
|
|
27
|
-
var encodeDeposit = function (accountId, token, amount
|
|
28
|
+
var encodeDeposit = function (accountId, token, amount) {
|
|
28
29
|
var multiAction = new action_1.MultiAction();
|
|
29
|
-
(0, encode_1.encodeSingleDeposit)(token, amount,
|
|
30
|
+
(0, encode_1.encodeSingleDeposit)(token, amount, multiAction);
|
|
30
31
|
var value = BigInt(0);
|
|
31
32
|
var call = (0, encode_1.encodeRouterCall)(multiAction, accountId, value);
|
|
32
33
|
return __assign({}, call);
|
|
33
34
|
};
|
|
34
35
|
exports.encodeDeposit = encodeDeposit;
|
|
35
|
-
var encodeWithdraw = function (accountId, token, amount
|
|
36
|
+
var encodeWithdraw = function (accountId, token, amount) {
|
|
36
37
|
var multiAction = new action_1.MultiAction();
|
|
37
|
-
(0, encode_1.encodeSingleWithdraw)(token, amount,
|
|
38
|
+
(0, encode_1.encodeSingleWithdraw)(token, amount, multiAction);
|
|
38
39
|
var value = BigInt(0);
|
|
39
40
|
var call = (0, encode_1.encodeRouterCall)(multiAction, accountId, value);
|
|
40
41
|
return __assign({}, call);
|
|
41
42
|
};
|
|
42
43
|
exports.encodeWithdraw = encodeWithdraw;
|
|
44
|
+
var encodeTransferMargin = function (fromMarginAccountId, toMarginAccountId, token, amount) {
|
|
45
|
+
var multiAction = new action_1.MultiAction();
|
|
46
|
+
(0, encode_1.encodeSingleTransferMargin)(toMarginAccountId, token, amount, multiAction);
|
|
47
|
+
var value = BigInt(0);
|
|
48
|
+
var call = (0, encode_1.encodeRouterCall)(multiAction, fromMarginAccountId, value);
|
|
49
|
+
return __assign({}, call);
|
|
50
|
+
};
|
|
51
|
+
exports.encodeTransferMargin = encodeTransferMargin;
|
|
52
|
+
var encodeWithdrawMAAndBridge = function (accountId, token, tokenAmount, sig, socketMsgGasLimit, socketConnector, socketController, receiver) {
|
|
53
|
+
var functionSignature = 'withdrawMA';
|
|
54
|
+
var parameters = [
|
|
55
|
+
{
|
|
56
|
+
accountId: accountId,
|
|
57
|
+
token: token,
|
|
58
|
+
tokenAmount: tokenAmount,
|
|
59
|
+
sig: sig,
|
|
60
|
+
socketMsgGasLimit: socketMsgGasLimit,
|
|
61
|
+
socketConnector: socketConnector,
|
|
62
|
+
socketController: socketController,
|
|
63
|
+
receiver: receiver,
|
|
64
|
+
},
|
|
65
|
+
];
|
|
66
|
+
var INTERFACE = new ethers_1.Interface(Periphery_json_1.abi);
|
|
67
|
+
var calldata = INTERFACE.encodeFunctionData(functionSignature, parameters);
|
|
68
|
+
return { calldata: calldata, value: BigInt(0).toString(10) };
|
|
69
|
+
};
|
|
70
|
+
exports.encodeWithdrawMAAndBridge = encodeWithdrawMAAndBridge;
|
|
43
71
|
//# sourceMappingURL=encode.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"encode.js","sourceRoot":"/","sources":["services/margin-accounts/encode.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,6CAAmE;AACnE,iCAAmC;AACnC,
|
|
1
|
+
{"version":3,"file":"encode.js","sourceRoot":"/","sources":["services/margin-accounts/encode.ts"],"names":[],"mappings":"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","sourcesContent":["import { MethodParameters, MultiAction } from '../../utils/action';\nimport { Interface } from 'ethers';\nimport {\n encodeRouterCall,\n encodeSingleDeposit,\n encodeSingleTransferMargin,\n encodeSingleWithdraw,\n} from '../encode';\n\nimport { abi } from '../../abis/AccountModule.json';\nimport { abi as peripheryAbi } from '../../abis/Periphery.json';\nimport { EIP712Signature } from '../sign';\n\nexport const encodeCreateAccountCall = (\n accountOwner: string,\n): MethodParameters => {\n const functionSignature = 'createAccount';\n const parameters = [accountOwner];\n const INTERFACE = new Interface(abi);\n const calldata = INTERFACE.encodeFunctionData(functionSignature, parameters);\n return { calldata: calldata, value: BigInt(0).toString(10) };\n};\n\nexport const encodeDeposit = (\n accountId: number,\n token: string,\n amount: bigint,\n): MethodParameters => {\n const multiAction = new MultiAction();\n\n encodeSingleDeposit(token, amount, multiAction);\n\n const value = BigInt(0);\n const call = encodeRouterCall(multiAction, accountId, value);\n\n return {\n ...call,\n };\n};\n\nexport const encodeWithdraw = (\n accountId: number,\n token: string,\n amount: bigint,\n): MethodParameters => {\n const multiAction = new MultiAction();\n\n encodeSingleWithdraw(token, amount, multiAction);\n\n const value = BigInt(0);\n const call = encodeRouterCall(multiAction, accountId, value);\n\n return {\n ...call,\n };\n};\n\nexport const encodeTransferMargin = (\n fromMarginAccountId: number,\n toMarginAccountId: number,\n token: string,\n amount: bigint,\n): MethodParameters => {\n const multiAction = new MultiAction();\n\n encodeSingleTransferMargin(toMarginAccountId, token, amount, multiAction);\n\n const value = BigInt(0);\n const call = encodeRouterCall(multiAction, fromMarginAccountId, value);\n\n return {\n ...call,\n };\n};\n\nexport const encodeWithdrawMAAndBridge = (\n accountId: number,\n token: string,\n tokenAmount: bigint,\n sig: EIP712Signature,\n socketMsgGasLimit: bigint,\n socketConnector: string,\n socketController: string,\n receiver: string,\n): MethodParameters => {\n const functionSignature = 'withdrawMA';\n const parameters = [\n {\n accountId,\n token,\n tokenAmount,\n sig,\n socketMsgGasLimit,\n socketConnector,\n socketController,\n receiver,\n },\n ];\n const INTERFACE = new Interface(peripheryAbi);\n const calldata = INTERFACE.encodeFunctionData(functionSignature, parameters);\n return { calldata: calldata, value: BigInt(0).toString(10) };\n};\n"]}
|