@reyaxyz/sdk 0.80.0 → 0.81.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/dist/services/encode.js +7 -7
- package/dist/services/encode.js.map +1 -1
- package/dist/services/lp/bridgeAndDepositPassivePool.js +3 -4
- package/dist/services/lp/bridgeAndDepositPassivePool.js.map +1 -1
- package/dist/services/lp/encode.js +6 -6
- package/dist/services/lp/encode.js.map +1 -1
- package/dist/services/lp/lp.js +3 -4
- package/dist/services/lp/lp.js.map +1 -1
- package/dist/services/lp/transferFromMAToPool.js +7 -8
- package/dist/services/lp/transferFromMAToPool.js.map +1 -1
- package/dist/services/lp/withdrawPassivePoolAndBridge.js +2 -6
- package/dist/services/lp/withdrawPassivePoolAndBridge.js.map +1 -1
- package/dist/services/margin-accounts/account.js +3 -3
- package/dist/services/margin-accounts/account.js.map +1 -1
- package/dist/services/margin-accounts/bridgeAndDepositExistingMA.js +5 -6
- package/dist/services/margin-accounts/bridgeAndDepositExistingMA.js.map +1 -1
- package/dist/services/margin-accounts/bridgeAndDepositNewMA.js +3 -4
- package/dist/services/margin-accounts/bridgeAndDepositNewMA.js.map +1 -1
- package/dist/services/margin-accounts/deposit.js +4 -5
- package/dist/services/margin-accounts/deposit.js.map +1 -1
- package/dist/services/margin-accounts/encode.js +14 -19
- package/dist/services/margin-accounts/encode.js.map +1 -1
- package/dist/services/margin-accounts/transferMarginBetweenAccounts.js +3 -3
- package/dist/services/margin-accounts/transferMarginBetweenAccounts.js.map +1 -1
- package/dist/services/margin-accounts/withdraw.js +4 -5
- package/dist/services/margin-accounts/withdraw.js.map +1 -1
- package/dist/services/margin-accounts/withdrawMAAndBridge.js +8 -8
- package/dist/services/margin-accounts/withdrawMAAndBridge.js.map +1 -1
- package/dist/services/orders/encode.js +7 -9
- package/dist/services/orders/encode.js.map +1 -1
- package/dist/services/orders/order.js +10 -10
- package/dist/services/orders/order.js.map +1 -1
- package/dist/services/{executeTransaction.js → signAndBroadcastTransaction.js} +9 -88
- package/dist/services/signAndBroadcastTransaction.js.map +1 -0
- package/dist/services/token/approve.js +3 -3
- package/dist/services/token/approve.js.map +1 -1
- package/dist/services/token/getAllowance.js +2 -3
- package/dist/services/token/getAllowance.js.map +1 -1
- package/dist/types/services/encode.d.ts +1 -1
- package/dist/types/services/encode.d.ts.map +1 -1
- package/dist/types/services/lp/encode.d.ts +2 -2
- package/dist/types/services/lp/encode.d.ts.map +1 -1
- package/dist/types/services/lp/lp.d.ts.map +1 -1
- package/dist/types/services/lp/transferFromMAToPool.d.ts.map +1 -1
- package/dist/types/services/lp/withdrawPassivePoolAndBridge.d.ts.map +1 -1
- package/dist/types/services/margin-accounts/bridgeAndDepositExistingMA.d.ts.map +1 -1
- package/dist/types/services/margin-accounts/bridgeAndDepositNewMA.d.ts.map +1 -1
- package/dist/types/services/margin-accounts/deposit.d.ts.map +1 -1
- package/dist/types/services/margin-accounts/encode.d.ts +2 -2
- package/dist/types/services/margin-accounts/encode.d.ts.map +1 -1
- package/dist/types/services/margin-accounts/withdraw.d.ts.map +1 -1
- package/dist/types/services/orders/encode.d.ts +1 -1
- package/dist/types/services/orders/encode.d.ts.map +1 -1
- package/dist/types/services/signAndBroadcastTransaction.d.ts +8 -0
- package/dist/types/services/signAndBroadcastTransaction.d.ts.map +1 -0
- package/dist/types/services/token/getAllowance.d.ts.map +1 -1
- package/package.json +3 -3
- package/src/services/encode.ts +3 -4
- package/src/services/lp/bridgeAndDepositPassivePool.ts +2 -2
- package/src/services/lp/encode.ts +5 -7
- package/src/services/lp/lp.ts +1 -2
- package/src/services/lp/transferFromMAToPool.ts +4 -5
- package/src/services/lp/withdrawPassivePoolAndBridge.ts +5 -4
- package/src/services/margin-accounts/account.ts +2 -2
- package/src/services/margin-accounts/bridgeAndDepositExistingMA.ts +2 -3
- package/src/services/margin-accounts/bridgeAndDepositNewMA.ts +1 -2
- package/src/services/margin-accounts/deposit.ts +1 -2
- package/src/services/margin-accounts/encode.ts +15 -12
- package/src/services/margin-accounts/transferMarginBetweenAccounts.ts +2 -2
- package/src/services/margin-accounts/withdraw.ts +1 -2
- package/src/services/margin-accounts/withdrawMAAndBridge.ts +5 -5
- package/src/services/orders/encode.ts +12 -6
- package/src/services/orders/order.ts +3 -3
- package/src/services/signAndBroadcastTransaction.ts +42 -0
- package/src/services/token/approve.ts +1 -1
- package/src/services/token/getAllowance.ts +2 -1
- package/dist/abis/CoreProxy.json +0 -5600
- package/dist/abis/Periphery.json +0 -1464
- package/dist/abis/socket/VaultWithPayload.json +0 -40
- package/dist/services/executeTransaction.js.map +0 -1
- package/dist/services/sign.js +0 -146
- package/dist/services/sign.js.map +0 -1
- package/dist/types/services/executeTransaction.d.ts +0 -20
- package/dist/types/services/executeTransaction.d.ts.map +0 -1
- package/dist/types/services/sign.d.ts +0 -12
- package/dist/types/services/sign.d.ts.map +0 -1
- package/dist/types/utils/action.d.ts +0 -27
- package/dist/types/utils/action.d.ts.map +0 -1
- package/dist/types/utils/consts.d.ts +0 -4
- package/dist/types/utils/consts.d.ts.map +0 -1
- package/dist/types/utils/contractAddresses.d.ts +0 -8
- package/dist/types/utils/contractAddresses.d.ts.map +0 -1
- package/dist/types/utils/routerCommands.d.ts +0 -23
- package/dist/types/utils/routerCommands.d.ts.map +0 -1
- package/dist/types/utils/trade.d.ts +0 -2
- package/dist/types/utils/trade.d.ts.map +0 -1
- package/dist/types/utils/txHelpers.d.ts +0 -2
- package/dist/types/utils/txHelpers.d.ts.map +0 -1
- package/dist/utils/action.js +0 -22
- package/dist/utils/action.js.map +0 -1
- package/dist/utils/consts.js +0 -7
- package/dist/utils/consts.js.map +0 -1
- package/dist/utils/contractAddresses.js +0 -37
- package/dist/utils/contractAddresses.js.map +0 -1
- package/dist/utils/routerCommands.js +0 -45
- package/dist/utils/routerCommands.js.map +0 -1
- package/dist/utils/trade.js +0 -24
- package/dist/utils/trade.js.map +0 -1
- package/dist/utils/txHelpers.js +0 -8
- package/dist/utils/txHelpers.js.map +0 -1
- package/src/abis/CoreProxy.json +0 -5600
- package/src/abis/Periphery.json +0 -1464
- package/src/abis/socket/VaultWithPayload.json +0 -40
- package/src/services/executeTransaction.ts +0 -123
- package/src/services/sign.ts +0 -135
- package/src/utils/action.ts +0 -41
- package/src/utils/consts.ts +0 -3
- package/src/utils/contractAddresses.ts +0 -43
- package/src/utils/routerCommands.ts +0 -62
- package/src/utils/trade.ts +0 -25
- package/src/utils/txHelpers.ts +0 -3
|
@@ -48,27 +48,22 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
48
48
|
};
|
|
49
49
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
50
50
|
exports.encodeBridgeAndDepositExistingMA = exports.encodeBridgeAndDepositNewMA = exports.encodeWithdrawMAAndBridge = exports.encodeTransferMargin = exports.encodeWithdraw = exports.encodeDeposit = exports.encodeCreateAccountCall = void 0;
|
|
51
|
-
var
|
|
51
|
+
var common_1 = require("@reyaxyz/common");
|
|
52
52
|
var ethers_1 = require("ethers");
|
|
53
53
|
var encode_1 = require("../encode");
|
|
54
|
-
var
|
|
55
|
-
var
|
|
56
|
-
var VaultWithPayload_json_1 = require("../../abis/socket/VaultWithPayload.json");
|
|
57
|
-
var sign_1 = require("../sign");
|
|
58
|
-
var consts_1 = require("../../utils/consts");
|
|
59
|
-
var common_1 = require("@reyaxyz/common");
|
|
54
|
+
var common_2 = require("@reyaxyz/common");
|
|
55
|
+
var common_3 = require("@reyaxyz/common");
|
|
60
56
|
var ethers_2 = require("ethers");
|
|
61
|
-
var contractAddresses_1 = require("../../utils/contractAddresses");
|
|
62
57
|
var encodeCreateAccountCall = function (accountOwner) {
|
|
63
58
|
var functionSignature = 'createAccount';
|
|
64
59
|
var parameters = [accountOwner];
|
|
65
|
-
var INTERFACE = new ethers_1.Interface(
|
|
60
|
+
var INTERFACE = new ethers_1.Interface(common_2.CoreAbi);
|
|
66
61
|
var calldata = INTERFACE.encodeFunctionData(functionSignature, parameters);
|
|
67
62
|
return { calldata: calldata, value: BigInt(0).toString(10) };
|
|
68
63
|
};
|
|
69
64
|
exports.encodeCreateAccountCall = encodeCreateAccountCall;
|
|
70
65
|
var encodeDeposit = function (accountId, token, amount) {
|
|
71
|
-
var multiAction = new
|
|
66
|
+
var multiAction = new common_1.MultiAction();
|
|
72
67
|
(0, encode_1.encodeSingleDeposit)(token, amount, multiAction);
|
|
73
68
|
var value = BigInt(0);
|
|
74
69
|
var call = (0, encode_1.encodeRouterCall)(multiAction, accountId, value);
|
|
@@ -76,7 +71,7 @@ var encodeDeposit = function (accountId, token, amount) {
|
|
|
76
71
|
};
|
|
77
72
|
exports.encodeDeposit = encodeDeposit;
|
|
78
73
|
var encodeWithdraw = function (accountId, token, amount) {
|
|
79
|
-
var multiAction = new
|
|
74
|
+
var multiAction = new common_1.MultiAction();
|
|
80
75
|
(0, encode_1.encodeSingleWithdraw)(token, amount, multiAction);
|
|
81
76
|
var value = BigInt(0);
|
|
82
77
|
var call = (0, encode_1.encodeRouterCall)(multiAction, accountId, value);
|
|
@@ -88,10 +83,10 @@ var encodeTransferMargin = function (signer, chainId, coreSigNonce, fromMarginAc
|
|
|
88
83
|
return __generator(this, function (_a) {
|
|
89
84
|
switch (_a.label) {
|
|
90
85
|
case 0:
|
|
91
|
-
multiAction = new
|
|
86
|
+
multiAction = new common_1.MultiAction();
|
|
92
87
|
// todo: note can we make this more stateless?
|
|
93
88
|
(0, encode_1.encodeSingleTransferMargin)(toMarginAccountId, token, amount, multiAction);
|
|
94
|
-
return [4 /*yield*/, (0,
|
|
89
|
+
return [4 /*yield*/, (0, common_2.signCoreCommands)(signer, chainId, (0, common_2.getAddress)(chainId, common_2.ContractType.PERIPHERY_PROXY), fromMarginAccountId, multiAction.commands, coreSigNonce + 1, (0, common_3.getCurrentTimestampInSeconds)() + common_2.CORE_DEADLINE_IN_SECONDS, ethers_2.ethers.AbiCoder.defaultAbiCoder().encode([], []))];
|
|
95
90
|
case 1:
|
|
96
91
|
eip712Signature = _a.sent();
|
|
97
92
|
value = BigInt(0);
|
|
@@ -107,7 +102,7 @@ var encodeTransferMargin = function (signer, chainId, coreSigNonce, fromMarginAc
|
|
|
107
102
|
sig: eip712Signature,
|
|
108
103
|
},
|
|
109
104
|
];
|
|
110
|
-
INTERFACE = new ethers_1.Interface(
|
|
105
|
+
INTERFACE = new ethers_1.Interface(common_2.PeripheryAbi);
|
|
111
106
|
calldata = INTERFACE.encodeFunctionData(functionSignature, parameters);
|
|
112
107
|
return [2 /*return*/, {
|
|
113
108
|
calldata: calldata,
|
|
@@ -130,13 +125,13 @@ var encodeWithdrawMAAndBridge = function (accountId, corePeripheryTokenAddress,
|
|
|
130
125
|
receiver: receiver,
|
|
131
126
|
},
|
|
132
127
|
];
|
|
133
|
-
var INTERFACE = new ethers_1.Interface(
|
|
128
|
+
var INTERFACE = new ethers_1.Interface(common_2.PeripheryAbi);
|
|
134
129
|
var calldata = INTERFACE.encodeFunctionData(functionSignature, parameters);
|
|
135
130
|
return { calldata: calldata, value: BigInt(0).toString(10) };
|
|
136
131
|
};
|
|
137
132
|
exports.encodeWithdrawMAAndBridge = encodeWithdrawMAAndBridge;
|
|
138
133
|
var encodeBridgeAndDepositNewMA = function (receiver, socketMsgGasLimit, socketConnector, socketBridgeOptions, socketFees, accountOwner, peripheryTokenAddress, peripheryTokenAmount, moneyInOutTokenAmount) {
|
|
139
|
-
var PERIPHERY_INTERFACE = new ethers_1.Interface(
|
|
134
|
+
var PERIPHERY_INTERFACE = new ethers_1.Interface(common_2.PeripheryAbi);
|
|
140
135
|
var inputs = {
|
|
141
136
|
accountOwner: accountOwner,
|
|
142
137
|
token: peripheryTokenAddress,
|
|
@@ -151,13 +146,13 @@ var encodeBridgeAndDepositNewMA = function (receiver, socketMsgGasLimit, socketC
|
|
|
151
146
|
peripheryCalldata,
|
|
152
147
|
socketBridgeOptions,
|
|
153
148
|
];
|
|
154
|
-
var INTERFACE = new ethers_1.Interface(
|
|
149
|
+
var INTERFACE = new ethers_1.Interface(common_2.Socket_VaultWithPayloadAbi);
|
|
155
150
|
var calldata = INTERFACE.encodeFunctionData(functionSignature, parameters);
|
|
156
151
|
return { calldata: calldata, value: socketFees.toString(10) };
|
|
157
152
|
};
|
|
158
153
|
exports.encodeBridgeAndDepositNewMA = encodeBridgeAndDepositNewMA;
|
|
159
154
|
var encodeBridgeAndDepositExistingMA = function (receiver, socketMsgGasLimit, socketConnector, socketBridgeOptions, socketFees, accountId, peripheryTokenAddress, peripheryTokenAmount, moneyInOutTokenAmount) {
|
|
160
|
-
var PERIPHERY_INTERFACE = new ethers_1.Interface(
|
|
155
|
+
var PERIPHERY_INTERFACE = new ethers_1.Interface(common_2.PeripheryAbi);
|
|
161
156
|
var inputs = {
|
|
162
157
|
accountId: accountId,
|
|
163
158
|
token: peripheryTokenAddress,
|
|
@@ -172,7 +167,7 @@ var encodeBridgeAndDepositExistingMA = function (receiver, socketMsgGasLimit, so
|
|
|
172
167
|
peripheryCalldata,
|
|
173
168
|
socketBridgeOptions,
|
|
174
169
|
];
|
|
175
|
-
var INTERFACE = new ethers_1.Interface(
|
|
170
|
+
var INTERFACE = new ethers_1.Interface(common_2.Socket_VaultWithPayloadAbi);
|
|
176
171
|
var calldata = INTERFACE.encodeFunctionData(functionSignature, parameters);
|
|
177
172
|
return { calldata: calldata, value: socketFees.toString(10) };
|
|
178
173
|
};
|
|
@@ -1 +1 @@
|
|
|
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/CoreProxy.json';\nimport { abi as peripheryAbi } from '../../abis/Periphery.json';\nimport { abi as Socket_VaultWithPayloadAbi } from '../../abis/socket/VaultWithPayload.json';\nimport { EIP712Signature, signCoreCommands } from '../sign';\nimport { CORE_DEADLINE_IN_SECONDS } from '../../utils/consts';\nimport { getCurrentTimestampInSeconds } from '@reyaxyz/common';\nimport { Signer } from 'ethers';\nimport { ethers } from 'ethers';\nimport { ContractType, getAddress } from '../../utils/contractAddresses';\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 = async (\n signer: Signer,\n chainId: number,\n coreSigNonce: number,\n fromMarginAccountId: number,\n toMarginAccountId: number,\n token: string,\n amount: bigint,\n): Promise<MethodParameters> => {\n const multiAction = new MultiAction();\n // todo: note can we make this more stateless?\n encodeSingleTransferMargin(toMarginAccountId, token, amount, multiAction);\n\n const eip712Signature = await signCoreCommands(\n signer,\n chainId,\n getAddress(chainId, ContractType.PERIPHERY_PROXY),\n fromMarginAccountId,\n multiAction.commands,\n coreSigNonce + 1,\n getCurrentTimestampInSeconds() + CORE_DEADLINE_IN_SECONDS,\n ethers.AbiCoder.defaultAbiCoder().encode([], []),\n );\n\n const value = BigInt(0);\n const functionSignature = 'transferFromMAToMA';\n const parameters = [\n {\n accountId: fromMarginAccountId,\n transfer: {\n destAccountId: toMarginAccountId,\n collateral: token,\n collateralAmount: amount,\n },\n sig: eip712Signature,\n },\n ];\n\n const INTERFACE = new Interface(peripheryAbi);\n const calldata = INTERFACE.encodeFunctionData(functionSignature, parameters);\n return {\n calldata: calldata,\n value: BigInt(value).toString(10),\n };\n};\n\nexport const encodeWithdrawMAAndBridge = (\n accountId: number,\n corePeripheryTokenAddress: string,\n corePeripheryTokenAmount: bigint,\n sig: EIP712Signature,\n socketMsgGasLimit: bigint,\n chainId: number,\n receiver: string,\n): MethodParameters => {\n const functionSignature = 'withdrawMA';\n const parameters = [\n {\n accountId,\n token: corePeripheryTokenAddress,\n tokenAmount: corePeripheryTokenAmount,\n sig,\n socketMsgGasLimit,\n chainId,\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\nexport const encodeBridgeAndDepositNewMA = (\n receiver: string,\n socketMsgGasLimit: bigint,\n socketConnector: string,\n socketBridgeOptions: string,\n socketFees: bigint,\n accountOwner: string,\n peripheryTokenAddress: string,\n peripheryTokenAmount: bigint,\n moneyInOutTokenAmount: bigint,\n): MethodParameters => {\n const PERIPHERY_INTERFACE = new Interface(peripheryAbi);\n const inputs = {\n accountOwner,\n token: peripheryTokenAddress,\n };\n const peripheryCalldata = PERIPHERY_INTERFACE.encodeFunctionData(\n 'depositNewMA((address,address))',\n [inputs],\n );\n\n const functionSignature = 'bridge';\n const parameters = [\n receiver,\n moneyInOutTokenAmount,\n socketMsgGasLimit,\n socketConnector,\n peripheryCalldata,\n socketBridgeOptions,\n ];\n const INTERFACE = new Interface(Socket_VaultWithPayloadAbi);\n const calldata = INTERFACE.encodeFunctionData(functionSignature, parameters);\n return { calldata: calldata, value: socketFees.toString(10) };\n};\n\nexport const encodeBridgeAndDepositExistingMA = (\n receiver: string,\n socketMsgGasLimit: bigint,\n socketConnector: string,\n socketBridgeOptions: string,\n socketFees: bigint,\n accountId: number,\n peripheryTokenAddress: string,\n peripheryTokenAmount: bigint,\n moneyInOutTokenAmount: bigint,\n): MethodParameters => {\n const PERIPHERY_INTERFACE = new Interface(peripheryAbi);\n const inputs = {\n accountId,\n token: peripheryTokenAddress,\n };\n const peripheryCalldata = PERIPHERY_INTERFACE.encodeFunctionData(\n 'depositExistingMA((uint128,address))',\n [inputs],\n );\n\n const functionSignature = 'bridge';\n const parameters = [\n receiver,\n moneyInOutTokenAmount,\n socketMsgGasLimit,\n socketConnector,\n peripheryCalldata,\n socketBridgeOptions,\n ];\n const INTERFACE = new Interface(Socket_VaultWithPayloadAbi);\n const calldata = INTERFACE.encodeFunctionData(functionSignature, parameters);\n return { calldata: calldata, value: socketFees.toString(10) };\n};\n"]}
|
|
1
|
+
{"version":3,"file":"encode.js","sourceRoot":"/","sources":["services/margin-accounts/encode.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0CAAgE;AAChE,iCAAmC;AACnC,oCAKmB;AACnB,0CASyB;AACzB,0CAA+D;AAE/D,iCAAgC;AAEzB,IAAM,uBAAuB,GAAG,UACrC,YAAoB;IAEpB,IAAM,iBAAiB,GAAG,eAAe,CAAC;IAC1C,IAAM,UAAU,GAAG,CAAC,YAAY,CAAC,CAAC;IAClC,IAAM,SAAS,GAAG,IAAI,kBAAS,CAAC,gBAAG,CAAC,CAAC;IACrC,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;AARW,QAAA,uBAAuB,2BAQlC;AAEK,IAAM,aAAa,GAAG,UAC3B,SAAiB,EACjB,KAAa,EACb,MAAc;IAEd,IAAM,WAAW,GAAG,IAAI,oBAAW,EAAE,CAAC;IAEtC,IAAA,4BAAmB,EAAC,KAAK,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;IAEhD,IAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IACxB,IAAM,IAAI,GAAG,IAAA,yBAAgB,EAAC,WAAW,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;IAE7D,oBACK,IAAI,EACP;AACJ,CAAC,CAAC;AAfW,QAAA,aAAa,iBAexB;AAEK,IAAM,cAAc,GAAG,UAC5B,SAAiB,EACjB,KAAa,EACb,MAAc;IAEd,IAAM,WAAW,GAAG,IAAI,oBAAW,EAAE,CAAC;IAEtC,IAAA,6BAAoB,EAAC,KAAK,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;IAEjD,IAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IACxB,IAAM,IAAI,GAAG,IAAA,yBAAgB,EAAC,WAAW,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;IAE7D,oBACK,IAAI,EACP;AACJ,CAAC,CAAC;AAfW,QAAA,cAAc,kBAezB;AAEK,IAAM,oBAAoB,GAAG,UAClC,MAAc,EACd,OAAe,EACf,YAAoB,EACpB,mBAA2B,EAC3B,iBAAyB,EACzB,KAAa,EACb,MAAc;;;;;gBAER,WAAW,GAAG,IAAI,oBAAW,EAAE,CAAC;gBACtC,8CAA8C;gBAC9C,IAAA,mCAA0B,EAAC,iBAAiB,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;gBAElD,qBAAM,IAAA,yBAAgB,EAC5C,MAAM,EACN,OAAO,EACP,IAAA,mBAAU,EAAC,OAAO,EAAE,qBAAY,CAAC,eAAe,CAAC,EACjD,mBAAmB,EACnB,WAAW,CAAC,QAAQ,EACpB,YAAY,GAAG,CAAC,EAChB,IAAA,qCAA4B,GAAE,GAAG,iCAAwB,EACzD,eAAM,CAAC,QAAQ,CAAC,eAAe,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,CACjD,EAAA;;gBATK,eAAe,GAAG,SASvB;gBAEK,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;gBAClB,iBAAiB,GAAG,oBAAoB,CAAC;gBACzC,UAAU,GAAG;oBACjB;wBACE,SAAS,EAAE,mBAAmB;wBAC9B,QAAQ,EAAE;4BACR,aAAa,EAAE,iBAAiB;4BAChC,UAAU,EAAE,KAAK;4BACjB,gBAAgB,EAAE,MAAM;yBACzB;wBACD,GAAG,EAAE,eAAe;qBACrB;iBACF,CAAC;gBAEI,SAAS,GAAG,IAAI,kBAAS,CAAC,qBAAY,CAAC,CAAC;gBACxC,QAAQ,GAAG,SAAS,CAAC,kBAAkB,CAAC,iBAAiB,EAAE,UAAU,CAAC,CAAC;gBAC7E,sBAAO;wBACL,QAAQ,EAAE,QAAQ;wBAClB,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC;qBAClC,EAAC;;;KACH,CAAC;AA5CW,QAAA,oBAAoB,wBA4C/B;AAEK,IAAM,yBAAyB,GAAG,UACvC,SAAiB,EACjB,yBAAiC,EACjC,wBAAgC,EAChC,GAAoB,EACpB,iBAAyB,EACzB,OAAe,EACf,QAAgB;IAEhB,IAAM,iBAAiB,GAAG,YAAY,CAAC;IACvC,IAAM,UAAU,GAAG;QACjB;YACE,SAAS,WAAA;YACT,KAAK,EAAE,yBAAyB;YAChC,WAAW,EAAE,wBAAwB;YACrC,GAAG,KAAA;YACH,iBAAiB,mBAAA;YACjB,OAAO,SAAA;YACP,QAAQ,UAAA;SACT;KACF,CAAC;IACF,IAAM,SAAS,GAAG,IAAI,kBAAS,CAAC,qBAAY,CAAC,CAAC;IAC9C,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;AAxBW,QAAA,yBAAyB,6BAwBpC;AAEK,IAAM,2BAA2B,GAAG,UACzC,QAAgB,EAChB,iBAAyB,EACzB,eAAuB,EACvB,mBAA2B,EAC3B,UAAkB,EAClB,YAAoB,EACpB,qBAA6B,EAC7B,oBAA4B,EAC5B,qBAA6B;IAE7B,IAAM,mBAAmB,GAAG,IAAI,kBAAS,CAAC,qBAAY,CAAC,CAAC;IACxD,IAAM,MAAM,GAAG;QACb,YAAY,cAAA;QACZ,KAAK,EAAE,qBAAqB;KAC7B,CAAC;IACF,IAAM,iBAAiB,GAAG,mBAAmB,CAAC,kBAAkB,CAC9D,iCAAiC,EACjC,CAAC,MAAM,CAAC,CACT,CAAC;IAEF,IAAM,iBAAiB,GAAG,QAAQ,CAAC;IACnC,IAAM,UAAU,GAAG;QACjB,QAAQ;QACR,qBAAqB;QACrB,iBAAiB;QACjB,eAAe;QACf,iBAAiB;QACjB,mBAAmB;KACpB,CAAC;IACF,IAAM,SAAS,GAAG,IAAI,kBAAS,CAAC,mCAA0B,CAAC,CAAC;IAC5D,IAAM,QAAQ,GAAG,SAAS,CAAC,kBAAkB,CAAC,iBAAiB,EAAE,UAAU,CAAC,CAAC;IAC7E,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;AAChE,CAAC,CAAC;AAjCW,QAAA,2BAA2B,+BAiCtC;AAEK,IAAM,gCAAgC,GAAG,UAC9C,QAAgB,EAChB,iBAAyB,EACzB,eAAuB,EACvB,mBAA2B,EAC3B,UAAkB,EAClB,SAAiB,EACjB,qBAA6B,EAC7B,oBAA4B,EAC5B,qBAA6B;IAE7B,IAAM,mBAAmB,GAAG,IAAI,kBAAS,CAAC,qBAAY,CAAC,CAAC;IACxD,IAAM,MAAM,GAAG;QACb,SAAS,WAAA;QACT,KAAK,EAAE,qBAAqB;KAC7B,CAAC;IACF,IAAM,iBAAiB,GAAG,mBAAmB,CAAC,kBAAkB,CAC9D,sCAAsC,EACtC,CAAC,MAAM,CAAC,CACT,CAAC;IAEF,IAAM,iBAAiB,GAAG,QAAQ,CAAC;IACnC,IAAM,UAAU,GAAG;QACjB,QAAQ;QACR,qBAAqB;QACrB,iBAAiB;QACjB,eAAe;QACf,iBAAiB;QACjB,mBAAmB;KACpB,CAAC;IACF,IAAM,SAAS,GAAG,IAAI,kBAAS,CAAC,mCAA0B,CAAC,CAAC;IAC5D,IAAM,QAAQ,GAAG,SAAS,CAAC,kBAAkB,CAAC,iBAAiB,EAAE,UAAU,CAAC,CAAC;IAC7E,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;AAChE,CAAC,CAAC;AAjCW,QAAA,gCAAgC,oCAiC3C","sourcesContent":["import { MethodParameters, MultiAction } from '@reyaxyz/common';\nimport { Interface } from 'ethers';\nimport {\n encodeRouterCall,\n encodeSingleDeposit,\n encodeSingleTransferMargin,\n encodeSingleWithdraw,\n} from '../encode';\nimport {\n CoreAbi as abi,\n PeripheryAbi,\n Socket_VaultWithPayloadAbi,\n CORE_DEADLINE_IN_SECONDS,\n EIP712Signature,\n signCoreCommands,\n ContractType,\n getAddress,\n} from '@reyaxyz/common';\nimport { getCurrentTimestampInSeconds } from '@reyaxyz/common';\nimport { Signer } from 'ethers';\nimport { ethers } from 'ethers';\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 = async (\n signer: Signer,\n chainId: number,\n coreSigNonce: number,\n fromMarginAccountId: number,\n toMarginAccountId: number,\n token: string,\n amount: bigint,\n): Promise<MethodParameters> => {\n const multiAction = new MultiAction();\n // todo: note can we make this more stateless?\n encodeSingleTransferMargin(toMarginAccountId, token, amount, multiAction);\n\n const eip712Signature = await signCoreCommands(\n signer,\n chainId,\n getAddress(chainId, ContractType.PERIPHERY_PROXY),\n fromMarginAccountId,\n multiAction.commands,\n coreSigNonce + 1,\n getCurrentTimestampInSeconds() + CORE_DEADLINE_IN_SECONDS,\n ethers.AbiCoder.defaultAbiCoder().encode([], []),\n );\n\n const value = BigInt(0);\n const functionSignature = 'transferFromMAToMA';\n const parameters = [\n {\n accountId: fromMarginAccountId,\n transfer: {\n destAccountId: toMarginAccountId,\n collateral: token,\n collateralAmount: amount,\n },\n sig: eip712Signature,\n },\n ];\n\n const INTERFACE = new Interface(PeripheryAbi);\n const calldata = INTERFACE.encodeFunctionData(functionSignature, parameters);\n return {\n calldata: calldata,\n value: BigInt(value).toString(10),\n };\n};\n\nexport const encodeWithdrawMAAndBridge = (\n accountId: number,\n corePeripheryTokenAddress: string,\n corePeripheryTokenAmount: bigint,\n sig: EIP712Signature,\n socketMsgGasLimit: bigint,\n chainId: number,\n receiver: string,\n): MethodParameters => {\n const functionSignature = 'withdrawMA';\n const parameters = [\n {\n accountId,\n token: corePeripheryTokenAddress,\n tokenAmount: corePeripheryTokenAmount,\n sig,\n socketMsgGasLimit,\n chainId,\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\nexport const encodeBridgeAndDepositNewMA = (\n receiver: string,\n socketMsgGasLimit: bigint,\n socketConnector: string,\n socketBridgeOptions: string,\n socketFees: bigint,\n accountOwner: string,\n peripheryTokenAddress: string,\n peripheryTokenAmount: bigint,\n moneyInOutTokenAmount: bigint,\n): MethodParameters => {\n const PERIPHERY_INTERFACE = new Interface(PeripheryAbi);\n const inputs = {\n accountOwner,\n token: peripheryTokenAddress,\n };\n const peripheryCalldata = PERIPHERY_INTERFACE.encodeFunctionData(\n 'depositNewMA((address,address))',\n [inputs],\n );\n\n const functionSignature = 'bridge';\n const parameters = [\n receiver,\n moneyInOutTokenAmount,\n socketMsgGasLimit,\n socketConnector,\n peripheryCalldata,\n socketBridgeOptions,\n ];\n const INTERFACE = new Interface(Socket_VaultWithPayloadAbi);\n const calldata = INTERFACE.encodeFunctionData(functionSignature, parameters);\n return { calldata: calldata, value: socketFees.toString(10) };\n};\n\nexport const encodeBridgeAndDepositExistingMA = (\n receiver: string,\n socketMsgGasLimit: bigint,\n socketConnector: string,\n socketBridgeOptions: string,\n socketFees: bigint,\n accountId: number,\n peripheryTokenAddress: string,\n peripheryTokenAmount: bigint,\n moneyInOutTokenAmount: bigint,\n): MethodParameters => {\n const PERIPHERY_INTERFACE = new Interface(PeripheryAbi);\n const inputs = {\n accountId,\n token: peripheryTokenAddress,\n };\n const peripheryCalldata = PERIPHERY_INTERFACE.encodeFunctionData(\n 'depositExistingMA((uint128,address))',\n [inputs],\n );\n\n const functionSignature = 'bridge';\n const parameters = [\n receiver,\n moneyInOutTokenAmount,\n socketMsgGasLimit,\n socketConnector,\n peripheryCalldata,\n socketBridgeOptions,\n ];\n const INTERFACE = new Interface(Socket_VaultWithPayloadAbi);\n const calldata = INTERFACE.encodeFunctionData(functionSignature, parameters);\n return { calldata: calldata, value: socketFees.toString(10) };\n};\n"]}
|
|
@@ -38,8 +38,8 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
38
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
39
|
exports.transferMarginBetweenAccounts = void 0;
|
|
40
40
|
var common_1 = require("@reyaxyz/common");
|
|
41
|
-
var
|
|
42
|
-
var
|
|
41
|
+
var common_2 = require("@reyaxyz/common");
|
|
42
|
+
var signAndBroadcastTransaction_1 = require("../signAndBroadcastTransaction");
|
|
43
43
|
var encode_1 = require("./encode");
|
|
44
44
|
var transferMarginBetweenAccounts = function (params) { return __awaiter(void 0, void 0, void 0, function () {
|
|
45
45
|
var tokenInfo, amount, network, chainId, _a, data, value, result;
|
|
@@ -56,7 +56,7 @@ var transferMarginBetweenAccounts = function (params) { return __awaiter(void 0,
|
|
|
56
56
|
return [4 /*yield*/, (0, encode_1.encodeTransferMargin)(params.signer, chainId, params.owner.coreSigNonce, params.fromMarginAccountId, params.toMarginAccountId, params.tokenAddress, amount)];
|
|
57
57
|
case 2:
|
|
58
58
|
_a = _c.sent(), data = _a.calldata, value = _a.value;
|
|
59
|
-
return [4 /*yield*/, (0,
|
|
59
|
+
return [4 /*yield*/, (0, signAndBroadcastTransaction_1.signAndBroadcastTransaction)(params.signer, data, value, chainId, common_2.ContractType.PERIPHERY_PROXY, {})];
|
|
60
60
|
case 3:
|
|
61
61
|
result = _c.sent();
|
|
62
62
|
return [2 /*return*/, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transferMarginBetweenAccounts.js","sourceRoot":"/","sources":["services/margin-accounts/transferMarginBetweenAccounts.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0CAA+D;AAC/D,
|
|
1
|
+
{"version":3,"file":"transferMarginBetweenAccounts.js","sourceRoot":"/","sources":["services/margin-accounts/transferMarginBetweenAccounts.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0CAA+D;AAC/D,0CAA+C;AAC/C,8EAA6E;AAC7E,mCAAgD;AAMzC,IAAM,6BAA6B,GAAG,UAC3C,MAA2C;;;;;;gBAErC,SAAS,GAAG,IAAA,8BAAqB,EAAC,MAAM,CAAC,YAAY,CAAC,CAAC;gBACvD,MAAM,GAAG,IAAA,cAAK,EAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAExC,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;gBACP,qBAAM,IAAA,6BAAoB,EAC1D,MAAM,CAAC,MAAM,EACb,OAAO,EACP,MAAM,CAAC,KAAK,CAAC,YAAY,EACzB,MAAM,CAAC,mBAAmB,EAC1B,MAAM,CAAC,iBAAiB,EACxB,MAAM,CAAC,YAAY,EACnB,MAAM,CACP,EAAA;;gBARK,KAA4B,SAQjC,EARiB,IAAI,cAAA,EAAE,KAAK,WAAA;gBAUd,qBAAM,IAAA,yDAA2B,EAC9C,MAAM,CAAC,MAAM,EACb,IAAI,EACJ,KAAK,EACL,OAAO,EACP,qBAAY,CAAC,eAAe,EAC5B,EAAE,CACH,EAAA;;gBAPK,MAAM,GAAG,SAOd;gBAED,sBAAO;wBACL,eAAe,EAAE,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,IAAI,KAAI,IAAI;qBACtC,EAAC;;;KACH,CAAC;AA9BW,QAAA,6BAA6B,iCA8BxC","sourcesContent":["import { scale, getTokenInfoByAddress } from '@reyaxyz/common';\nimport { ContractType } from '@reyaxyz/common';\nimport { signAndBroadcastTransaction } from '../signAndBroadcastTransaction';\nimport { encodeTransferMargin } from './encode';\nimport {\n TransferMarginBetweenAccountsParams,\n TransferMarginBetweenAccountsResult,\n} from './types';\n\nexport const transferMarginBetweenAccounts = async (\n params: TransferMarginBetweenAccountsParams,\n): Promise<TransferMarginBetweenAccountsResult> => {\n const tokenInfo = getTokenInfoByAddress(params.tokenAddress);\n const amount = scale(tokenInfo.decimals)(params.amount);\n\n const network = await params.signer.provider?.getNetwork();\n const chainId = Number(network?.chainId);\n const { calldata: data, value } = await encodeTransferMargin(\n params.signer,\n chainId,\n params.owner.coreSigNonce,\n params.fromMarginAccountId,\n params.toMarginAccountId,\n params.tokenAddress,\n amount,\n );\n\n const result = await signAndBroadcastTransaction(\n params.signer,\n data,\n value,\n chainId,\n ContractType.PERIPHERY_PROXY,\n {},\n );\n\n return {\n transactionHash: result?.hash || null,\n };\n};\n"]}
|
|
@@ -38,23 +38,22 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
38
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
39
|
exports.withdraw = void 0;
|
|
40
40
|
var encode_1 = require("./encode");
|
|
41
|
-
var executeTransaction_1 = require("../executeTransaction");
|
|
42
|
-
var contractAddresses_1 = require("../../utils/contractAddresses");
|
|
43
41
|
var common_1 = require("@reyaxyz/common");
|
|
42
|
+
var common_2 = require("@reyaxyz/common");
|
|
44
43
|
var withdraw = function (params) { return __awaiter(void 0, void 0, void 0, function () {
|
|
45
44
|
var tokenInfo, amount, _a, data, value, network, chainId, result;
|
|
46
45
|
var _b;
|
|
47
46
|
return __generator(this, function (_c) {
|
|
48
47
|
switch (_c.label) {
|
|
49
48
|
case 0:
|
|
50
|
-
tokenInfo = (0,
|
|
51
|
-
amount = (0,
|
|
49
|
+
tokenInfo = (0, common_2.getTokenInfoByAddress)(params.tokenAddress);
|
|
50
|
+
amount = (0, common_2.scale)(tokenInfo.decimals)(params.amount);
|
|
52
51
|
_a = (0, encode_1.encodeWithdraw)(params.marginAccountId, params.tokenAddress, BigInt(amount)), data = _a.calldata, value = _a.value;
|
|
53
52
|
return [4 /*yield*/, ((_b = params.signer.provider) === null || _b === void 0 ? void 0 : _b.getNetwork())];
|
|
54
53
|
case 1:
|
|
55
54
|
network = _c.sent();
|
|
56
55
|
chainId = Number(network === null || network === void 0 ? void 0 : network.chainId);
|
|
57
|
-
return [4 /*yield*/, (0,
|
|
56
|
+
return [4 /*yield*/, (0, common_1.executeTransaction)(params.signer, data, value, chainId, common_1.ContractType.CORE_PROXY)];
|
|
58
57
|
case 2:
|
|
59
58
|
result = _c.sent();
|
|
60
59
|
return [2 /*return*/, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"withdraw.js","sourceRoot":"/","sources":["services/margin-accounts/withdraw.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,mCAA0C;AAC1C,
|
|
1
|
+
{"version":3,"file":"withdraw.js","sourceRoot":"/","sources":["services/margin-accounts/withdraw.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,mCAA0C;AAC1C,0CAAmE;AACnE,0CAA+D;AAExD,IAAM,QAAQ,GAAG,UACtB,MAAsB;;;;;;gBAEhB,SAAS,GAAG,IAAA,8BAAqB,EAAC,MAAM,CAAC,YAAY,CAAC,CAAC;gBACvD,MAAM,GAAG,IAAA,cAAK,EAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAElD,KAA4B,IAAA,uBAAc,EAC9C,MAAM,CAAC,eAAe,EACtB,MAAM,CAAC,YAAY,EACnB,MAAM,CAAC,MAAM,CAAC,CACf,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,2BAAkB,EACrC,MAAM,CAAC,MAAM,EACb,IAAI,EACJ,KAAK,EACL,OAAO,EACP,qBAAY,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;AA1BW,QAAA,QAAQ,YA0BnB","sourcesContent":["import { WithdrawParams, WithdrawResult } from './types';\nimport { encodeWithdraw } from './encode';\nimport { ContractType, executeTransaction } from '@reyaxyz/common';\nimport { getTokenInfoByAddress, scale } from '@reyaxyz/common';\n\nexport const withdraw = async (\n params: WithdrawParams,\n): Promise<WithdrawResult> => {\n const tokenInfo = getTokenInfoByAddress(params.tokenAddress);\n const amount = scale(tokenInfo.decimals)(params.amount);\n\n const { calldata: data, value } = encodeWithdraw(\n params.marginAccountId,\n params.tokenAddress,\n BigInt(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"]}
|
|
@@ -38,13 +38,13 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
38
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
39
|
exports.withdrawMAAndBridge = void 0;
|
|
40
40
|
var common_1 = require("@reyaxyz/common");
|
|
41
|
-
var
|
|
42
|
-
var
|
|
43
|
-
var
|
|
41
|
+
var common_2 = require("@reyaxyz/common");
|
|
42
|
+
var signAndBroadcastTransaction_1 = require("../signAndBroadcastTransaction");
|
|
43
|
+
var common_3 = require("@reyaxyz/common");
|
|
44
44
|
var encode_1 = require("./encode");
|
|
45
|
-
var
|
|
45
|
+
var common_4 = require("@reyaxyz/common");
|
|
46
46
|
var encode_2 = require("../encode");
|
|
47
|
-
var
|
|
47
|
+
var common_5 = require("@reyaxyz/common");
|
|
48
48
|
var ethers_1 = require("ethers");
|
|
49
49
|
var withdrawMAAndBridge = function (_a) {
|
|
50
50
|
var signer = _a.signer, moneyInOutChainId = _a.moneyInOutChainId, marginAccountId = _a.marginAccountId, owner = _a.owner, unscaledAmount = _a.amount, tokenAddress = _a.tokenAddress, _b = _a.receiverAddress, receiverAddress = _b === void 0 ? owner.address : _b;
|
|
@@ -58,14 +58,14 @@ var withdrawMAAndBridge = function (_a) {
|
|
|
58
58
|
network = _e.sent();
|
|
59
59
|
reyaChainId = Number(network === null || network === void 0 ? void 0 : network.chainId);
|
|
60
60
|
corePeripheryTokenInfo = (0, common_1.getTokenInfoByAddress)(tokenAddress);
|
|
61
|
-
multiAction = new
|
|
61
|
+
multiAction = new common_5.MultiAction();
|
|
62
62
|
(0, encode_2.encodeSingleWithdraw)(corePeripheryTokenInfo.address, (0, common_1.scale)(corePeripheryTokenInfo.decimals)(unscaledAmount), multiAction);
|
|
63
63
|
socketMsgGasLimit = BigInt('10000000');
|
|
64
|
-
return [4 /*yield*/, (0,
|
|
64
|
+
return [4 /*yield*/, (0, common_3.signCoreCommands)(signer, reyaChainId, (0, common_2.getAddress)(reyaChainId, common_2.ContractType.PERIPHERY_PROXY), marginAccountId, multiAction.commands, owner.coreSigNonce + 1, (0, common_1.getCurrentTimestampInSeconds)() + common_4.BRIDGE_DEADLINE_IN_SECONDS, ethers_1.ethers.AbiCoder.defaultAbiCoder().encode(['address', 'uint256', 'uint256'], [receiverAddress, moneyInOutChainId, socketMsgGasLimit]))];
|
|
65
65
|
case 2:
|
|
66
66
|
eip712Signature = _e.sent();
|
|
67
67
|
_c = (0, encode_1.encodeWithdrawMAAndBridge)(marginAccountId, corePeripheryTokenInfo.address, (0, common_1.scale)(corePeripheryTokenInfo.decimals)(unscaledAmount), eip712Signature, socketMsgGasLimit, moneyInOutChainId, receiverAddress), data = _c.calldata, value = _c.value;
|
|
68
|
-
return [4 /*yield*/, (0,
|
|
68
|
+
return [4 /*yield*/, (0, signAndBroadcastTransaction_1.signAndBroadcastTransaction)(signer, data, value, reyaChainId, common_2.ContractType.PERIPHERY_PROXY, {})];
|
|
69
69
|
case 3:
|
|
70
70
|
result = _e.sent();
|
|
71
71
|
return [2 /*return*/, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"withdrawMAAndBridge.js","sourceRoot":"/","sources":["services/margin-accounts/withdrawMAAndBridge.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0CAKyB;AACzB,
|
|
1
|
+
{"version":3,"file":"withdrawMAAndBridge.js","sourceRoot":"/","sources":["services/margin-accounts/withdrawMAAndBridge.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0CAKyB;AACzB,0CAA2D;AAC3D,8EAA6E;AAC7E,0CAAmD;AACnD,mCAAqD;AAKrD,0CAA6D;AAC7D,oCAAiD;AACjD,0CAA8C;AAC9C,iCAAgC;AAEzB,IAAM,mBAAmB,GAAG,UAAO,EAQd;QAP1B,MAAM,YAAA,EACN,iBAAiB,uBAAA,EACjB,eAAe,qBAAA,EACf,KAAK,WAAA,EACG,cAAc,YAAA,EACtB,YAAY,kBAAA,EACZ,uBAA+B,EAA/B,eAAe,mBAAG,KAAK,CAAC,OAAO,KAAA;;;;;;wBAEf,qBAAM,CAAA,MAAA,MAAM,CAAC,QAAQ,0CAAE,UAAU,EAAE,CAAA,EAAA;;oBAA7C,OAAO,GAAG,SAAmC;oBAC7C,WAAW,GAAgB,MAAM,CAAC,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,CAAC,CAAC;oBAEpD,sBAAsB,GAAG,IAAA,8BAAqB,EAAC,YAAY,CAAC,CAAC;oBAE7D,WAAW,GAAG,IAAI,oBAAW,EAAE,CAAC;oBACtC,IAAA,6BAAoB,EAClB,sBAAsB,CAAC,OAAO,EAC9B,IAAA,cAAK,EAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAC,cAAc,CAAC,EACtD,WAAW,CACZ,CAAC;oBAEI,iBAAiB,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;oBACrB,qBAAM,IAAA,yBAAgB,EAC5C,MAAM,EACN,WAAW,EACX,IAAA,mBAAU,EAAC,WAAW,EAAE,qBAAY,CAAC,eAAe,CAAC,EACrD,eAAe,EACf,WAAW,CAAC,QAAQ,EACpB,KAAK,CAAC,YAAY,GAAG,CAAC,EACtB,IAAA,qCAA4B,GAAE,GAAG,mCAA0B,EAC3D,eAAM,CAAC,QAAQ,CAAC,eAAe,EAAE,CAAC,MAAM,CACtC,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,CAAC,EACjC,CAAC,eAAe,EAAE,iBAAiB,EAAE,iBAAiB,CAAC,CACxD,CACF,EAAA;;oBAZK,eAAe,GAAG,SAYvB;oBAEK,KAA4B,IAAA,kCAAyB,EACzD,eAAe,EACf,sBAAsB,CAAC,OAAO,EAC9B,IAAA,cAAK,EAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAC,cAAc,CAAC,EACtD,eAAe,EACf,iBAAiB,EACjB,iBAAiB,EACjB,eAAe,CAChB,EARiB,IAAI,cAAA,EAAE,KAAK,WAAA,CAQ3B;oBAEa,qBAAM,IAAA,yDAA2B,EAC9C,MAAM,EACN,IAAI,EACJ,KAAK,EACL,WAAW,EACX,qBAAY,CAAC,eAAe,EAC5B,EAAE,CACH,EAAA;;oBAPK,MAAM,GAAG,SAOd;oBAED,sBAAO;4BACL,eAAe,EAAE,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,IAAI,KAAI,IAAI;yBACtC,EAAC;;;;CACH,CAAC;AA1DW,QAAA,mBAAmB,uBA0D9B","sourcesContent":["import {\n getCurrentTimestampInSeconds,\n scale,\n ReyaChainId,\n getTokenInfoByAddress,\n} from '@reyaxyz/common';\nimport { ContractType, getAddress } from '@reyaxyz/common';\nimport { signAndBroadcastTransaction } from '../signAndBroadcastTransaction';\nimport { signCoreCommands } from '@reyaxyz/common';\nimport { encodeWithdrawMAAndBridge } from './encode';\nimport {\n WithdrawMAAndBridgeParams,\n WithdrawMAAndBridgeParamsResult,\n} from './types';\nimport { BRIDGE_DEADLINE_IN_SECONDS } from '@reyaxyz/common';\nimport { encodeSingleWithdraw } from '../encode';\nimport { MultiAction } from '@reyaxyz/common';\nimport { ethers } from 'ethers';\n\nexport const withdrawMAAndBridge = async ({\n signer,\n moneyInOutChainId,\n marginAccountId,\n owner,\n amount: unscaledAmount,\n tokenAddress,\n receiverAddress = owner.address,\n}: WithdrawMAAndBridgeParams): Promise<WithdrawMAAndBridgeParamsResult> => {\n const network = await signer.provider?.getNetwork();\n const reyaChainId: ReyaChainId = Number(network?.chainId);\n\n const corePeripheryTokenInfo = getTokenInfoByAddress(tokenAddress);\n\n const multiAction = new MultiAction();\n encodeSingleWithdraw(\n corePeripheryTokenInfo.address,\n scale(corePeripheryTokenInfo.decimals)(unscaledAmount),\n multiAction,\n );\n\n const socketMsgGasLimit = BigInt('10000000');\n const eip712Signature = await signCoreCommands(\n signer,\n reyaChainId,\n getAddress(reyaChainId, ContractType.PERIPHERY_PROXY),\n marginAccountId,\n multiAction.commands,\n owner.coreSigNonce + 1,\n getCurrentTimestampInSeconds() + BRIDGE_DEADLINE_IN_SECONDS,\n ethers.AbiCoder.defaultAbiCoder().encode(\n ['address', 'uint256', 'uint256'],\n [receiverAddress, moneyInOutChainId, socketMsgGasLimit],\n ),\n );\n\n const { calldata: data, value } = encodeWithdrawMAAndBridge(\n marginAccountId,\n corePeripheryTokenInfo.address,\n scale(corePeripheryTokenInfo.decimals)(unscaledAmount),\n eip712Signature,\n socketMsgGasLimit,\n moneyInOutChainId,\n receiverAddress,\n );\n\n const result = await signAndBroadcastTransaction(\n signer,\n data,\n value,\n reyaChainId,\n ContractType.PERIPHERY_PROXY,\n {},\n );\n\n return {\n transactionHash: result?.hash || null,\n };\n};\n"]}
|
|
@@ -37,23 +37,21 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
37
37
|
};
|
|
38
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
39
|
exports.encodeMatchOrder = void 0;
|
|
40
|
-
var action_1 = require("../../utils/action");
|
|
41
|
-
var encode_1 = require("../encode");
|
|
42
|
-
var sign_1 = require("../sign");
|
|
43
40
|
var common_1 = require("@reyaxyz/common");
|
|
44
|
-
var
|
|
41
|
+
var encode_1 = require("../encode");
|
|
42
|
+
var common_2 = require("@reyaxyz/common");
|
|
43
|
+
var common_3 = require("@reyaxyz/common");
|
|
44
|
+
var common_4 = require("@reyaxyz/common");
|
|
45
45
|
var ethers_1 = require("ethers");
|
|
46
|
-
var Periphery_json_1 = require("../../abis/Periphery.json");
|
|
47
|
-
var contractAddresses_1 = require("../../utils/contractAddresses");
|
|
48
46
|
var ethers_2 = require("ethers");
|
|
49
47
|
var encodeMatchOrder = function (signer, chainId, coreSigNonce, accountId, orderBase, orderPriceLimit, counterpartyAccountIds, marketId, exchangeId) { return __awaiter(void 0, void 0, void 0, function () {
|
|
50
48
|
var multiAction, eip712Signature, value, functionSignature, parameters, INTERFACE, calldata;
|
|
51
49
|
return __generator(this, function (_a) {
|
|
52
50
|
switch (_a.label) {
|
|
53
51
|
case 0:
|
|
54
|
-
multiAction = new
|
|
52
|
+
multiAction = new common_1.MultiAction();
|
|
55
53
|
(0, encode_1.encodeSingleTrade)(counterpartyAccountIds, orderBase, orderPriceLimit, marketId, exchangeId, multiAction);
|
|
56
|
-
return [4 /*yield*/, (0,
|
|
54
|
+
return [4 /*yield*/, (0, common_2.signCoreCommands)(signer, chainId, (0, common_3.getAddress)(chainId, common_3.ContractType.PERIPHERY_PROXY), accountId, multiAction.commands, coreSigNonce + 1, (0, common_3.getCurrentTimestampInSeconds)() + common_4.CORE_DEADLINE_IN_SECONDS, ethers_2.ethers.AbiCoder.defaultAbiCoder().encode([], []))];
|
|
57
55
|
case 1:
|
|
58
56
|
eip712Signature = _a.sent();
|
|
59
57
|
value = BigInt(0);
|
|
@@ -61,7 +59,7 @@ var encodeMatchOrder = function (signer, chainId, coreSigNonce, accountId, order
|
|
|
61
59
|
parameters = [
|
|
62
60
|
{ accountId: accountId, commands: multiAction.commands, sig: eip712Signature },
|
|
63
61
|
];
|
|
64
|
-
INTERFACE = new ethers_1.Interface(
|
|
62
|
+
INTERFACE = new ethers_1.Interface(common_1.PeripheryAbi);
|
|
65
63
|
calldata = INTERFACE.encodeFunctionData(functionSignature, parameters);
|
|
66
64
|
return [2 /*return*/, {
|
|
67
65
|
calldata: calldata,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"encode.js","sourceRoot":"/","sources":["services/orders/encode.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"encode.js","sourceRoot":"/","sources":["services/orders/encode.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0CAIyB;AACzB,oCAA8C;AAC9C,0CAAmD;AACnD,0CAIyB;AACzB,0CAA2D;AAC3D,iCAA2C;AAC3C,iCAAgC;AACzB,IAAM,gBAAgB,GAAG,UAC9B,MAAc,EACd,OAAe,EACf,YAAoB,EACpB,SAAiB,EACjB,SAAiB,EACjB,eAAuB,EACvB,sBAAgC,EAChC,QAAgB,EAChB,UAAkB;;;;;gBAEZ,WAAW,GAAG,IAAI,oBAAW,EAAE,CAAC;gBAEtC,IAAA,0BAAiB,EACf,sBAAsB,EACtB,SAAS,EACT,eAAe,EACf,QAAQ,EACR,UAAU,EACV,WAAW,CACZ,CAAC;gBACsB,qBAAM,IAAA,yBAAgB,EAC5C,MAAM,EACN,OAAO,EACP,IAAA,mBAAU,EAAC,OAAO,EAAE,qBAAY,CAAC,eAAe,CAAC,EACjD,SAAS,EACT,WAAW,CAAC,QAAQ,EACpB,YAAY,GAAG,CAAC,EAChB,IAAA,qCAA4B,GAAE,GAAG,iCAAwB,EACzD,eAAM,CAAC,QAAQ,CAAC,eAAe,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,CACjD,EAAA;;gBATK,eAAe,GAAG,SASvB;gBAEK,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;gBAClB,iBAAiB,GAAG,oBAAoB,CAAC;gBACzC,UAAU,GAAG;oBACjB,EAAE,SAAS,WAAA,EAAE,QAAQ,EAAE,WAAW,CAAC,QAAQ,EAAE,GAAG,EAAE,eAAe,EAAE;iBACpE,CAAC;gBAEI,SAAS,GAAG,IAAI,kBAAS,CAAC,qBAAG,CAAC,CAAC;gBAC/B,QAAQ,GAAG,SAAS,CAAC,kBAAkB,CAAC,iBAAiB,EAAE,UAAU,CAAC,CAAC;gBAC7E,sBAAO;wBACL,QAAQ,EAAE,QAAQ;wBAClB,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC;qBAClC,EAAC;;;KACH,CAAC;AA5CW,QAAA,gBAAgB,oBA4C3B","sourcesContent":["import {\n MethodParameters,\n MultiAction,\n PeripheryAbi as abi,\n} from '@reyaxyz/common';\nimport { encodeSingleTrade } from '../encode';\nimport { signCoreCommands } from '@reyaxyz/common';\nimport {\n getCurrentTimestampInSeconds,\n ContractType,\n getAddress,\n} from '@reyaxyz/common';\nimport { CORE_DEADLINE_IN_SECONDS } from '@reyaxyz/common';\nimport { Interface, Signer } from 'ethers';\nimport { ethers } from 'ethers';\nexport const encodeMatchOrder = async (\n signer: Signer,\n chainId: number,\n coreSigNonce: number,\n accountId: number,\n orderBase: bigint,\n orderPriceLimit: bigint,\n counterpartyAccountIds: number[],\n marketId: number,\n exchangeId: number,\n): Promise<MethodParameters> => {\n const multiAction = new MultiAction();\n\n encodeSingleTrade(\n counterpartyAccountIds,\n orderBase,\n orderPriceLimit,\n marketId,\n exchangeId,\n multiAction,\n );\n const eip712Signature = await signCoreCommands(\n signer,\n chainId,\n getAddress(chainId, ContractType.PERIPHERY_PROXY),\n accountId,\n multiAction.commands,\n coreSigNonce + 1,\n getCurrentTimestampInSeconds() + CORE_DEADLINE_IN_SECONDS,\n ethers.AbiCoder.defaultAbiCoder().encode([], []),\n );\n\n const value = BigInt(0);\n const functionSignature = 'executeMatchOrders';\n const parameters = [\n { accountId, commands: multiAction.commands, sig: eip712Signature },\n ];\n\n const INTERFACE = new Interface(abi);\n const calldata = INTERFACE.encodeFunctionData(functionSignature, parameters);\n return {\n calldata: calldata,\n value: BigInt(value).toString(10),\n };\n};\n"]}
|
|
@@ -41,11 +41,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
41
41
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
42
42
|
exports.closeOrder = exports.matchOrder = void 0;
|
|
43
43
|
var encode_1 = require("./encode");
|
|
44
|
-
var
|
|
45
|
-
var trade_1 = require("../../utils/trade");
|
|
46
|
-
var bignumber_js_1 = __importDefault(require("bignumber.js"));
|
|
47
|
-
var contractAddresses_1 = require("../../utils/contractAddresses");
|
|
44
|
+
var signAndBroadcastTransaction_1 = require("../signAndBroadcastTransaction");
|
|
48
45
|
var common_1 = require("@reyaxyz/common");
|
|
46
|
+
var bignumber_js_1 = __importDefault(require("bignumber.js"));
|
|
47
|
+
var common_2 = require("@reyaxyz/common");
|
|
48
|
+
var common_3 = require("@reyaxyz/common");
|
|
49
49
|
var matchOrder = function (params) { return __awaiter(void 0, void 0, void 0, function () {
|
|
50
50
|
var orderPriceLimit, orderBase, network, chainId, _a, data, value, result;
|
|
51
51
|
var _b;
|
|
@@ -55,8 +55,8 @@ var matchOrder = function (params) { return __awaiter(void 0, void 0, void 0, fu
|
|
|
55
55
|
if (params.snappedAmountInBase === 0) {
|
|
56
56
|
throw new Error('Position base can not be 0');
|
|
57
57
|
}
|
|
58
|
-
orderPriceLimit = (0,
|
|
59
|
-
orderBase = (0,
|
|
58
|
+
orderPriceLimit = (0, common_1.calculatePriceLimitForTrade)(params.market.currentPrice, params.snappedAmountInBase);
|
|
59
|
+
orderBase = (0, common_3.scale)(18)(params.snappedAmountInBase);
|
|
60
60
|
return [4 /*yield*/, ((_b = params.signer.provider) === null || _b === void 0 ? void 0 : _b.getNetwork())];
|
|
61
61
|
case 1:
|
|
62
62
|
network = _c.sent();
|
|
@@ -64,7 +64,7 @@ var matchOrder = function (params) { return __awaiter(void 0, void 0, void 0, fu
|
|
|
64
64
|
return [4 /*yield*/, (0, encode_1.encodeMatchOrder)(params.signer, chainId, params.owner.coreSigNonce, params.marginAccountId, orderBase, orderPriceLimit, params.market.counterpartyAccountIds, params.market.id, params.market.exchangeId)];
|
|
65
65
|
case 2:
|
|
66
66
|
_a = _c.sent(), data = _a.calldata, value = _a.value;
|
|
67
|
-
return [4 /*yield*/, (0,
|
|
67
|
+
return [4 /*yield*/, (0, signAndBroadcastTransaction_1.signAndBroadcastTransaction)(params.signer, data, value, chainId, common_2.ContractType.PERIPHERY_PROXY, {})];
|
|
68
68
|
case 3:
|
|
69
69
|
result = _c.sent();
|
|
70
70
|
return [2 /*return*/, {
|
|
@@ -83,8 +83,8 @@ var closeOrder = function (params) { return __awaiter(void 0, void 0, void 0, fu
|
|
|
83
83
|
if (params.orderBase === 0) {
|
|
84
84
|
throw new Error('Position base can not be 0');
|
|
85
85
|
}
|
|
86
|
-
base = (0,
|
|
87
|
-
orderPriceLimit = (0,
|
|
86
|
+
base = (0, common_3.scale)(18)(params.orderBase);
|
|
87
|
+
orderPriceLimit = (0, common_1.calculatePriceLimitForTrade)(params.market.currentPrice, (0, bignumber_js_1.default)(params.orderBase).negated().toNumber());
|
|
88
88
|
return [4 /*yield*/, ((_b = params.signer.provider) === null || _b === void 0 ? void 0 : _b.getNetwork())];
|
|
89
89
|
case 1:
|
|
90
90
|
network = _c.sent();
|
|
@@ -92,7 +92,7 @@ var closeOrder = function (params) { return __awaiter(void 0, void 0, void 0, fu
|
|
|
92
92
|
return [4 /*yield*/, (0, encode_1.encodeMatchOrder)(params.signer, chainId, params.owner.coreSigNonce, params.marginAccountId, -base, orderPriceLimit, params.market.counterpartyAccountIds, params.market.id, params.market.exchangeId)];
|
|
93
93
|
case 2:
|
|
94
94
|
_a = _c.sent(), data = _a.calldata, value = _a.value;
|
|
95
|
-
return [4 /*yield*/, (0,
|
|
95
|
+
return [4 /*yield*/, (0, signAndBroadcastTransaction_1.signAndBroadcastTransaction)(params.signer, data, value, chainId, common_2.ContractType.PERIPHERY_PROXY, {})];
|
|
96
96
|
case 3:
|
|
97
97
|
result = _c.sent();
|
|
98
98
|
return [2 /*return*/, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"order.js","sourceRoot":"/","sources":["services/orders/order.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMA,mCAA4C;AAC5C,
|
|
1
|
+
{"version":3,"file":"order.js","sourceRoot":"/","sources":["services/orders/order.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n CloseOrderParams,\n CloseOrderResult,\n MatchOrderParams,\n MatchOrderResult,\n} from './types';\nimport { encodeMatchOrder } from './encode';\nimport { signAndBroadcastTransaction } from '../signAndBroadcastTransaction';\nimport { calculatePriceLimitForTrade } from '@reyaxyz/common';\nimport BigNumber from 'bignumber.js';\nimport { ContractType } from '@reyaxyz/common';\nimport { scale } from '@reyaxyz/common';\n\nexport const matchOrder = async (\n params: MatchOrderParams,\n): Promise<MatchOrderResult> => {\n if (params.snappedAmountInBase === 0) {\n throw new Error('Position base can not be 0');\n }\n const orderPriceLimit = calculatePriceLimitForTrade(\n params.market.currentPrice,\n params.snappedAmountInBase,\n );\n\n const orderBase = scale(18)(params.snappedAmountInBase);\n const network = await params.signer.provider?.getNetwork();\n const chainId = Number(network?.chainId);\n\n const { calldata: data, value } = await encodeMatchOrder(\n params.signer,\n chainId,\n params.owner.coreSigNonce,\n params.marginAccountId,\n orderBase,\n orderPriceLimit,\n params.market.counterpartyAccountIds,\n params.market.id,\n params.market.exchangeId,\n );\n\n const result = await signAndBroadcastTransaction(\n params.signer,\n data,\n value,\n chainId,\n ContractType.PERIPHERY_PROXY,\n {},\n );\n\n return {\n transactionHash: result?.hash || null,\n };\n};\n\nexport const closeOrder = async (\n params: CloseOrderParams,\n): Promise<CloseOrderResult> => {\n if (params.orderBase === 0) {\n throw new Error('Position base can not be 0');\n }\n\n const base = scale(18)(params.orderBase);\n const orderPriceLimit = calculatePriceLimitForTrade(\n params.market.currentPrice,\n BigNumber(params.orderBase).negated().toNumber(), // used just because of sign\n );\n\n const network = await params.signer.provider?.getNetwork();\n const chainId = Number(network?.chainId);\n const { calldata: data, value } = await encodeMatchOrder(\n params.signer,\n chainId,\n params.owner.coreSigNonce,\n params.marginAccountId,\n -base,\n orderPriceLimit,\n params.market.counterpartyAccountIds,\n params.market.id,\n params.market.exchangeId,\n );\n\n const result = await signAndBroadcastTransaction(\n params.signer,\n data,\n value,\n chainId,\n ContractType.PERIPHERY_PROXY,\n {},\n );\n\n return {\n transactionHash: result?.hash || null,\n };\n};\n"]}
|
|
@@ -1,15 +1,4 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __assign = (this && this.__assign) || function () {
|
|
3
|
-
__assign = Object.assign || function(t) {
|
|
4
|
-
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
-
s = arguments[i];
|
|
6
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
-
t[p] = s[p];
|
|
8
|
-
}
|
|
9
|
-
return t;
|
|
10
|
-
};
|
|
11
|
-
return __assign.apply(this, arguments);
|
|
12
|
-
};
|
|
13
2
|
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
14
3
|
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
15
4
|
return new (P || (P = Promise))(function (resolve, reject) {
|
|
@@ -47,89 +36,21 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
47
36
|
}
|
|
48
37
|
};
|
|
49
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
50
|
-
exports.signAndBroadcastTransaction =
|
|
51
|
-
var
|
|
52
|
-
var txHelpers_1 = require("../utils/txHelpers");
|
|
53
|
-
var config_1 = require("../config");
|
|
39
|
+
exports.signAndBroadcastTransaction = void 0;
|
|
40
|
+
var config_1 = require("../../../sdk/src/config");
|
|
54
41
|
var common_1 = require("@reyaxyz/common");
|
|
55
|
-
function estimateGas(signer, data, value, chainId, targetContract) {
|
|
56
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
57
|
-
var accountAddress, contractAddress, tx, gasLimit, gasEstimate, error_1, maxPriorityFeePerGas, maxFeePerGas;
|
|
58
|
-
return __generator(this, function (_a) {
|
|
59
|
-
switch (_a.label) {
|
|
60
|
-
case 0: return [4 /*yield*/, signer.getAddress()];
|
|
61
|
-
case 1:
|
|
62
|
-
accountAddress = _a.sent();
|
|
63
|
-
contractAddress = Object.values(contractAddresses_1.ContractType).includes(targetContract)
|
|
64
|
-
? (0, contractAddresses_1.getAddress)(chainId, targetContract)
|
|
65
|
-
: targetContract;
|
|
66
|
-
tx = __assign({ from: accountAddress, to: contractAddress, data: data }, (value && value !== '0' ? { value: value } : {}));
|
|
67
|
-
gasLimit = BigInt('5000000');
|
|
68
|
-
_a.label = 2;
|
|
69
|
-
case 2:
|
|
70
|
-
_a.trys.push([2, 4, , 5]);
|
|
71
|
-
return [4 /*yield*/, signer.estimateGas(tx)];
|
|
72
|
-
case 3:
|
|
73
|
-
gasEstimate = _a.sent();
|
|
74
|
-
gasLimit = (0, txHelpers_1.getGasBuffer)(gasEstimate);
|
|
75
|
-
return [3 /*break*/, 5];
|
|
76
|
-
case 4:
|
|
77
|
-
error_1 = _a.sent();
|
|
78
|
-
// sentry error & thorw
|
|
79
|
-
console.warn(error_1);
|
|
80
|
-
throw new Error('Error executing transaction'); // @todo introduce error parsing
|
|
81
|
-
case 5:
|
|
82
|
-
if (Object.values(common_1.ReyaChainId).includes(chainId)) {
|
|
83
|
-
maxPriorityFeePerGas = BigInt('0');
|
|
84
|
-
maxFeePerGas = BigInt('100000000');
|
|
85
|
-
return [2 /*return*/, __assign(__assign({}, tx), { gasLimit: gasLimit, maxPriorityFeePerGas: maxPriorityFeePerGas, maxFeePerGas: maxFeePerGas })];
|
|
86
|
-
}
|
|
87
|
-
return [2 /*return*/, __assign(__assign({}, tx), { gasLimit: gasLimit })];
|
|
88
|
-
}
|
|
89
|
-
});
|
|
90
|
-
});
|
|
91
|
-
}
|
|
92
|
-
exports.estimateGas = estimateGas;
|
|
93
|
-
function executeTransaction(signer, data, value, chainId, targetContract) {
|
|
94
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
95
|
-
var txData, txResponse, txReceipt, error_2;
|
|
96
|
-
return __generator(this, function (_a) {
|
|
97
|
-
switch (_a.label) {
|
|
98
|
-
case 0: return [4 /*yield*/, estimateGas(signer, data, value, chainId, targetContract)];
|
|
99
|
-
case 1:
|
|
100
|
-
txData = _a.sent();
|
|
101
|
-
_a.label = 2;
|
|
102
|
-
case 2:
|
|
103
|
-
_a.trys.push([2, 5, , 6]);
|
|
104
|
-
return [4 /*yield*/, signer.sendTransaction(txData)];
|
|
105
|
-
case 3:
|
|
106
|
-
txResponse = _a.sent();
|
|
107
|
-
return [4 /*yield*/, txResponse.wait()];
|
|
108
|
-
case 4:
|
|
109
|
-
txReceipt = _a.sent();
|
|
110
|
-
return [2 /*return*/, txReceipt];
|
|
111
|
-
case 5:
|
|
112
|
-
error_2 = _a.sent();
|
|
113
|
-
console.warn(error_2);
|
|
114
|
-
throw new Error('Transaction Execution Error');
|
|
115
|
-
case 6: return [2 /*return*/];
|
|
116
|
-
}
|
|
117
|
-
});
|
|
118
|
-
});
|
|
119
|
-
}
|
|
120
|
-
exports.executeTransaction = executeTransaction;
|
|
121
42
|
function signAndBroadcastTransaction(signer, data, value, chainId, targetContract, metadata) {
|
|
122
43
|
return __awaiter(this, void 0, void 0, function () {
|
|
123
|
-
var contractAddress, transactionModuleClient, _a, txHash, accountId,
|
|
44
|
+
var contractAddress, transactionModuleClient, _a, txHash, accountId, error_1;
|
|
124
45
|
return __generator(this, function (_b) {
|
|
125
46
|
switch (_b.label) {
|
|
126
47
|
case 0:
|
|
127
|
-
contractAddress = Object.values(
|
|
128
|
-
? (0,
|
|
48
|
+
contractAddress = Object.values(common_1.ContractType).includes(targetContract)
|
|
49
|
+
? (0, common_1.getAddress)(chainId, targetContract)
|
|
129
50
|
: targetContract;
|
|
130
51
|
// used to catch error in advance since gelato is slow in failing down
|
|
131
52
|
// on reya chain usually takes around 100ms, should be monitored!
|
|
132
|
-
return [4 /*yield*/, estimateGas(signer, data, value, chainId, targetContract)];
|
|
53
|
+
return [4 /*yield*/, (0, common_1.estimateGas)(signer, data, value, chainId, targetContract)];
|
|
133
54
|
case 1:
|
|
134
55
|
// used to catch error in advance since gelato is slow in failing down
|
|
135
56
|
// on reya chain usually takes around 100ms, should be monitored!
|
|
@@ -146,8 +67,8 @@ function signAndBroadcastTransaction(signer, data, value, chainId, targetContrac
|
|
|
146
67
|
}
|
|
147
68
|
return [2 /*return*/, { hash: txHash, accountId: accountId }];
|
|
148
69
|
case 4:
|
|
149
|
-
|
|
150
|
-
console.warn(
|
|
70
|
+
error_1 = _b.sent();
|
|
71
|
+
console.warn(error_1);
|
|
151
72
|
throw new Error('Transaction Execution Error');
|
|
152
73
|
case 5: return [2 /*return*/];
|
|
153
74
|
}
|
|
@@ -155,4 +76,4 @@ function signAndBroadcastTransaction(signer, data, value, chainId, targetContrac
|
|
|
155
76
|
});
|
|
156
77
|
}
|
|
157
78
|
exports.signAndBroadcastTransaction = signAndBroadcastTransaction;
|
|
158
|
-
//# sourceMappingURL=
|
|
79
|
+
//# sourceMappingURL=signAndBroadcastTransaction.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"signAndBroadcastTransaction.js","sourceRoot":"/","sources":["services/signAndBroadcastTransaction.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,kDAGiC;AACjC,0CAAwE;AAExE,SAAsB,2BAA2B,CAC/C,MAA8B,EAC9B,IAAY,EACZ,KAAa,EACb,OAAe,EACf,cAAqC,EACrC,QAAsC;;;;;;oBAEhC,eAAe,GAAG,MAAM,CAAC,MAAM,CAAC,qBAAY,CAAC,CAAC,QAAQ,CAC1D,cAA8B,CAC/B;wBACC,CAAC,CAAC,IAAA,mBAAU,EAAC,OAAO,EAAE,cAA8B,CAAC;wBACrD,CAAC,CAAC,cAAc,CAAC;oBAEnB,sEAAsE;oBACtE,iEAAiE;oBACjE,qBAAM,IAAA,oBAAW,EAAC,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,cAAc,CAAC,EAAA;;oBAF/D,sEAAsE;oBACtE,iEAAiE;oBACjE,SAA+D,CAAC;;;;oBAExD,uBAAuB,GAAG,IAAA,mCAA0B,GAAE,CAAC;oBAE3D,qBAAM,uBAAuB,CAAC,kBAAkB,CAC9C,EAAE,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,IAAI,EAAE,EACnC,eAAe,EACf,QAAQ,CACT,EAAA;;oBALG,KACJ,SAIC,EALK,MAAM,YAAA,EAAE,SAAS,eAAA;oBAOzB,IAAI,CAAC,MAAM,EAAE,CAAC;wBACZ,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;oBAC/C,CAAC;oBACD,sBAAO,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,WAAA,EAAE,EAAC;;;oBAEnC,OAAO,CAAC,IAAI,CAAC,OAAK,CAAC,CAAC;oBACpB,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;;;;;CAElD;AAlCD,kEAkCC","sourcesContent":["import { JsonRpcSigner, Signer } from 'ethers';\nimport {\n BroadcastTransactionMetadata,\n getTransactionModuleClient,\n} from '../../../sdk/src/config';\nimport { ContractType, getAddress, estimateGas } from '@reyaxyz/common';\n\nexport async function signAndBroadcastTransaction(\n signer: Signer | JsonRpcSigner,\n data: string,\n value: string,\n chainId: number,\n targetContract: ContractType | string,\n metadata: BroadcastTransactionMetadata,\n): Promise<{ hash: string; accountId?: string }> {\n const contractAddress = Object.values(ContractType).includes(\n targetContract as ContractType,\n )\n ? getAddress(chainId, targetContract as ContractType)\n : targetContract;\n\n // used to catch error in advance since gelato is slow in failing down\n // on reya chain usually takes around 100ms, should be monitored!\n await estimateGas(signer, data, value, chainId, targetContract);\n try {\n const transactionModuleClient = getTransactionModuleClient();\n const { txHash, accountId } =\n await transactionModuleClient.executeTransaction(\n { to: contractAddress, data: data },\n contractAddress,\n metadata,\n );\n\n if (!txHash) {\n throw new Error('Error sending transaction');\n }\n return { hash: txHash, accountId };\n } catch (error) {\n console.warn(error);\n throw new Error('Transaction Execution Error');\n }\n}\n"]}
|
|
@@ -39,7 +39,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
39
39
|
exports.approveTokenSpending = void 0;
|
|
40
40
|
var types_1 = require("./types");
|
|
41
41
|
var common_1 = require("@reyaxyz/common");
|
|
42
|
-
var
|
|
42
|
+
var common_2 = require("@reyaxyz/common");
|
|
43
43
|
var approveTokenSpending = function (params) { return __awaiter(void 0, void 0, void 0, function () {
|
|
44
44
|
var network, chainId, tokenInfo, tokenContract, contractProxyAddress, scaledTokenAmount, approvalTransaction, error_1, _a, error_2;
|
|
45
45
|
var _b;
|
|
@@ -57,10 +57,10 @@ var approveTokenSpending = function (params) { return __awaiter(void 0, void 0,
|
|
|
57
57
|
tokenContract = (0, common_1.getERC20TokenContract)(tokenInfo.address, params.signer);
|
|
58
58
|
switch (params.type) {
|
|
59
59
|
case types_1.ApprovalType.DEPOSIT:
|
|
60
|
-
contractProxyAddress = (0,
|
|
60
|
+
contractProxyAddress = (0, common_2.getAddress)(chainId, common_2.ContractType.CORE_PROXY);
|
|
61
61
|
break;
|
|
62
62
|
case types_1.ApprovalType.LP:
|
|
63
|
-
contractProxyAddress = (0,
|
|
63
|
+
contractProxyAddress = (0, common_2.getAddress)(chainId, common_2.ContractType.PASSIVE_POOL_PROXY);
|
|
64
64
|
break;
|
|
65
65
|
case types_1.ApprovalType.BRIDGE:
|
|
66
66
|
contractProxyAddress = (0, common_1.getSocketVault)({
|