@reyaxyz/sdk 0.127.21 → 0.127.23
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/config/index.js +1 -29
- package/dist/config/index.js.map +1 -1
- package/dist/services/encode.js +11 -1
- package/dist/services/encode.js.map +1 -1
- package/dist/services/lp/bridgeAndDepositPassivePool.js +2 -62
- package/dist/services/lp/bridgeAndDepositPassivePool.js.map +1 -1
- package/dist/services/lp/encode.js +102 -66
- package/dist/services/lp/encode.js.map +1 -1
- package/dist/services/lp/index.js +3 -1
- package/dist/services/lp/index.js.map +1 -1
- package/dist/services/lp/stakeFromMarginAccount.js +67 -0
- package/dist/services/lp/stakeFromMarginAccount.js.map +1 -0
- package/dist/services/lp/{lp.js → transferStakeToMarginAccount.js} +33 -49
- package/dist/services/lp/transferStakeToMarginAccount.js.map +1 -0
- package/dist/services/lp/types.js.map +1 -1
- package/dist/services/lp/unstakeFromMarginAccount.js +66 -0
- package/dist/services/lp/unstakeFromMarginAccount.js.map +1 -0
- package/dist/services/lp/withdrawPassivePoolAndBridge.js +1 -33
- package/dist/services/lp/withdrawPassivePoolAndBridge.js.map +1 -1
- package/dist/types/config/index.d.ts +1 -10
- package/dist/types/config/index.d.ts.map +1 -1
- package/dist/types/services/encode.d.ts +2 -0
- package/dist/types/services/encode.d.ts.map +1 -1
- package/dist/types/services/lp/bridgeAndDepositPassivePool.d.ts +1 -3
- package/dist/types/services/lp/bridgeAndDepositPassivePool.d.ts.map +1 -1
- package/dist/types/services/lp/encode.d.ts +5 -6
- package/dist/types/services/lp/encode.d.ts.map +1 -1
- package/dist/types/services/lp/index.d.ts +3 -1
- package/dist/types/services/lp/index.d.ts.map +1 -1
- package/dist/types/services/lp/stakeFromMarginAccount.d.ts +3 -0
- package/dist/types/services/lp/stakeFromMarginAccount.d.ts.map +1 -0
- package/dist/types/services/lp/transferStakeToMarginAccount.d.ts +3 -0
- package/dist/types/services/lp/transferStakeToMarginAccount.d.ts.map +1 -0
- package/dist/types/services/lp/types.d.ts +25 -14
- package/dist/types/services/lp/types.d.ts.map +1 -1
- package/dist/types/services/lp/unstakeFromMarginAccount.d.ts +3 -0
- package/dist/types/services/lp/unstakeFromMarginAccount.d.ts.map +1 -0
- package/dist/types/services/lp/withdrawPassivePoolAndBridge.d.ts +1 -2
- package/dist/types/services/lp/withdrawPassivePoolAndBridge.d.ts.map +1 -1
- package/package.json +3 -3
- package/src/config/index.ts +0 -28
- package/src/services/encode.ts +32 -0
- package/src/services/lp/bridgeAndDepositPassivePool.ts +2 -91
- package/src/services/lp/encode.ts +105 -91
- package/src/services/lp/index.ts +3 -1
- package/src/services/lp/stakeFromMarginAccount.ts +41 -0
- package/src/services/lp/transferStakeToMarginAccount.ts +68 -0
- package/src/services/lp/types.ts +27 -17
- package/src/services/lp/unstakeFromMarginAccount.ts +40 -0
- package/src/services/lp/withdrawPassivePoolAndBridge.ts +1 -70
- package/dist/services/lp/lp.js.map +0 -1
- package/dist/types/services/lp/lp.d.ts +0 -4
- package/dist/types/services/lp/lp.d.ts.map +0 -1
- package/src/services/lp/lp.ts +0 -83
package/README.md
CHANGED
|
@@ -6,5 +6,5 @@
|
|
|
6
6
|
|
|
7
7
|
| Statements | Branches | Functions | Lines |
|
|
8
8
|
| --------------------------- | ----------------------- | ------------------------- | ----------------- |
|
|
9
|
-
|  |  |  |  |
|
|
10
10
|
|
package/dist/config/index.js
CHANGED
|
@@ -51,7 +51,7 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
51
51
|
}
|
|
52
52
|
};
|
|
53
53
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
54
|
-
exports.getGeneralRestModuleClient = exports.
|
|
54
|
+
exports.getGeneralRestModuleClient = exports.getTransactionModuleClient = exports.configureSDK = exports.getSdkEnvironment = exports.GeneralRestModule = exports.TransactionModule = void 0;
|
|
55
55
|
var common_1 = require("@reyaxyz/common");
|
|
56
56
|
var TransactionModule = /** @class */ (function (_super) {
|
|
57
57
|
__extends(TransactionModule, _super);
|
|
@@ -90,26 +90,6 @@ var TransactionModule = /** @class */ (function (_super) {
|
|
|
90
90
|
return TransactionModule;
|
|
91
91
|
}(common_1.RestClient));
|
|
92
92
|
exports.TransactionModule = TransactionModule;
|
|
93
|
-
var AlphaTermsModule = /** @class */ (function (_super) {
|
|
94
|
-
__extends(AlphaTermsModule, _super);
|
|
95
|
-
function AlphaTermsModule() {
|
|
96
|
-
return _super !== null && _super.apply(this, arguments) || this;
|
|
97
|
-
}
|
|
98
|
-
AlphaTermsModule.prototype.registerAlphaSignature = function (params) {
|
|
99
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
100
|
-
var formData, uri;
|
|
101
|
-
return __generator(this, function (_a) {
|
|
102
|
-
formData = new FormData();
|
|
103
|
-
formData.append('walletAddress', params.walletAddress);
|
|
104
|
-
formData.append('signedLink', params.link);
|
|
105
|
-
uri = '/api/tos/alpha-signatures';
|
|
106
|
-
return [2 /*return*/, this.post(uri, undefined, formData, undefined)];
|
|
107
|
-
});
|
|
108
|
-
});
|
|
109
|
-
};
|
|
110
|
-
return AlphaTermsModule;
|
|
111
|
-
}(common_1.RestClient));
|
|
112
|
-
exports.AlphaTermsModule = AlphaTermsModule;
|
|
113
93
|
var GeneralRestModule = /** @class */ (function (_super) {
|
|
114
94
|
__extends(GeneralRestModule, _super);
|
|
115
95
|
function GeneralRestModule() {
|
|
@@ -134,7 +114,6 @@ var GeneralRestModule = /** @class */ (function (_super) {
|
|
|
134
114
|
exports.GeneralRestModule = GeneralRestModule;
|
|
135
115
|
// Internal state
|
|
136
116
|
var transactionModule = new TransactionModule(common_1.API_CLIENT_CONFIGS['test'].apiEndpoint);
|
|
137
|
-
var alphaTermsModule = new AlphaTermsModule(common_1.API_CLIENT_CONFIGS['test'].apiEndpoint);
|
|
138
117
|
var generalRestModule = new GeneralRestModule(common_1.API_CLIENT_CONFIGS['test'].apiEndpoint);
|
|
139
118
|
var sdkEnv = 'test';
|
|
140
119
|
var getSdkEnvironment = function () {
|
|
@@ -146,7 +125,6 @@ var configureSDK = function (environment) {
|
|
|
146
125
|
var config = common_1.API_CLIENT_CONFIGS[environment] || common_1.API_CLIENT_CONFIGS['test'];
|
|
147
126
|
sdkEnv = environment;
|
|
148
127
|
transactionModule = new TransactionModule(config.apiEndpoint);
|
|
149
|
-
alphaTermsModule = new AlphaTermsModule(config.apiEndpoint);
|
|
150
128
|
generalRestModule = new GeneralRestModule(config.apiEndpoint);
|
|
151
129
|
};
|
|
152
130
|
exports.configureSDK = configureSDK;
|
|
@@ -156,12 +134,6 @@ var getTransactionModuleClient = function () {
|
|
|
156
134
|
return transactionModule;
|
|
157
135
|
};
|
|
158
136
|
exports.getTransactionModuleClient = getTransactionModuleClient;
|
|
159
|
-
var getAlphaTermsModuleClient = function () {
|
|
160
|
-
if (!alphaTermsModule)
|
|
161
|
-
throw new Error('SDK is not configured! Call configureSDK()');
|
|
162
|
-
return alphaTermsModule;
|
|
163
|
-
};
|
|
164
|
-
exports.getAlphaTermsModuleClient = getAlphaTermsModuleClient;
|
|
165
137
|
var getGeneralRestModuleClient = function () {
|
|
166
138
|
if (!transactionModule)
|
|
167
139
|
throw new Error('SDK is not configured! Call configureSDK()');
|
package/dist/config/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"/","sources":["config/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"/","sources":["config/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0CAQyB;AAOzB;IAAuC,qCAAU;IAAjD;;IAwCA,CAAC;IAvCO,8CAAkB,GAAxB,UACE,MAAc,EACd,eAAuB,EACvB,QAAsC;;;;gBAEhC,GAAG,GAAG,uCAAuC,CAAC;gBACpD,uFAAuF;gBACvF,sBAAO,IAAI,CAAC,IAAI,CACd,GAAG,EACH,EAAE,EACF;wBACE,MAAM,EAAE,MAAM;wBACd,eAAe,iBAAA;wBACf,QAAQ,UAAA;qBACT,CACF,EAAC;;;KACH;IAEK,kDAAsB,GAA5B,UACE,eAAuB,EACvB,eAAuB,EACvB,aAAqB,EACrB,MAAc,EACd,OAAe,EACf,IAAY;;;;gBAEN,GAAG,GAAG,wBAAiB,eAAe,8BAA2B,CAAC;gBACxE,sBAAO,IAAI,CAAC,IAAI,CACd,GAAG,EACH,EAAE,EACF;wBACE,OAAO,EAAE,eAAe;wBACxB,eAAe,EAAE,aAAa;wBAC9B,MAAM,QAAA;wBACN,QAAQ,EAAE,OAAO;wBACjB,IAAI,EAAE,IAAI;qBACX,CACF,EAAC;;;KACH;IACH,wBAAC;AAAD,CAAC,AAxCD,CAAuC,mBAAU,GAwChD;AAxCY,8CAAiB;AA0C9B;IAAuC,qCAAU;IAAjD;;IAUA,CAAC;IATO,0CAAc,GAApB;;;gBACE,sBAAO,IAAI,CAAC,GAAG,CAAqB,mBAAmB,CAAC,EAAC;;;KAC1D;IAEK,6CAAiB,GAAvB;;;gBACE,sBAAO,IAAI,CAAC,GAAG,CACb,2DAAoD,KAAK,CAAE,CAC5D,EAAC;;;KACH;IACH,wBAAC;AAAD,CAAC,AAVD,CAAuC,mBAAU,GAUhD;AAVY,8CAAiB;AAY9B,iBAAiB;AACjB,IAAI,iBAAiB,GAAsB,IAAI,iBAAiB,CAC9D,2BAAkB,CAAC,MAAM,CAAC,CAAC,WAAW,CACvC,CAAC;AAEF,IAAI,iBAAiB,GAAsB,IAAI,iBAAiB,CAC9D,2BAAkB,CAAC,MAAM,CAAC,CAAC,WAAW,CACvC,CAAC;AAEF,IAAI,MAAM,GAAiC,MAAM,CAAC;AAE3C,IAAM,iBAAiB,GAAG;IAC/B,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAFW,QAAA,iBAAiB,qBAE5B;AACF,gCAAgC;AACzB,IAAM,YAAY,GAAG,UAC1B,WAAyC;IAEzC,IAAM,MAAM,GAAG,2BAAkB,CAAC,WAAW,CAAC,IAAI,2BAAkB,CAAC,MAAM,CAAC,CAAC;IAC7E,MAAM,GAAG,WAAW,CAAC;IACrB,iBAAiB,GAAG,IAAI,iBAAiB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IAC9D,iBAAiB,GAAG,IAAI,iBAAiB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;AAChE,CAAC,CAAC;AAPW,QAAA,YAAY,gBAOvB;AAEK,IAAM,0BAA0B,GAAG;IACxC,IAAI,CAAC,iBAAiB;QACpB,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;IAChE,OAAO,iBAAiB,CAAC;AAC3B,CAAC,CAAC;AAJW,QAAA,0BAA0B,8BAIrC;AAEK,IAAM,0BAA0B,GAAG;IACxC,IAAI,CAAC,iBAAiB;QACpB,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;IAChE,OAAO,iBAAiB,CAAC;AAC3B,CAAC,CAAC;AAJW,QAAA,0BAA0B,8BAIrC","sourcesContent":["import {\n API_CLIENT_CONFIGS,\n RestClient,\n ServiceConfig,\n TransactionExecutionMetadata,\n TransactionExecutionOutput,\n SpotMarketEntity,\n CollateralWithHaircut,\n} from '@reyaxyz/common';\n\nexport type TxData = {\n to: string;\n data: string;\n};\n\nexport class TransactionModule extends RestClient {\n async executeTransaction(\n txData: TxData,\n contractAddress: string,\n metadata: TransactionExecutionMetadata,\n ) {\n const uri = `/api/transaction-gelato/executeGelato`;\n // const uri = `/api/transaction/execute`; //switch between Gelato and internal relayer\n return this.post<TransactionExecutionOutput>(\n uri,\n {},\n {\n txData: txData,\n contractAddress,\n metadata,\n },\n );\n }\n\n async pushPendingTransaction(\n marginAccountId: number,\n transactionHash: string,\n sourceChainId: number,\n amount: number,\n assetId: string,\n type: string,\n ) {\n const uri = `/api/accounts/${marginAccountId}/push-pending-transaction`;\n return this.post<{ successful: boolean }>(\n uri,\n {},\n {\n tx_hash: transactionHash,\n source_chain_id: sourceChainId,\n amount,\n asset_id: assetId,\n type: type,\n },\n );\n }\n}\n\nexport class GeneralRestModule extends RestClient {\n async getSpotMarkets(): Promise<SpotMarketEntity[]> {\n return this.get<SpotMarketEntity[]>('/api/spot-markets');\n }\n\n async getCollateralInfo(): Promise<CollateralWithHaircut[]> {\n return this.get<CollateralWithHaircut[]>(\n `/api/tokens/available-collaterals/excluding-rusd/${false}`,\n );\n }\n}\n\n// Internal state\nlet transactionModule: TransactionModule = new TransactionModule(\n API_CLIENT_CONFIGS['test'].apiEndpoint,\n);\n\nlet generalRestModule: GeneralRestModule = new GeneralRestModule(\n API_CLIENT_CONFIGS['test'].apiEndpoint,\n);\n\nlet sdkEnv: ServiceConfig['environment'] = 'test';\n\nexport const getSdkEnvironment = (): ServiceConfig['environment'] => {\n return sdkEnv;\n};\n// Function to configure the SDK\nexport const configureSDK = (\n environment: ServiceConfig['environment'],\n): void => {\n const config = API_CLIENT_CONFIGS[environment] || API_CLIENT_CONFIGS['test'];\n sdkEnv = environment;\n transactionModule = new TransactionModule(config.apiEndpoint);\n generalRestModule = new GeneralRestModule(config.apiEndpoint);\n};\n\nexport const getTransactionModuleClient = (): TransactionModule => {\n if (!transactionModule)\n throw new Error('SDK is not configured! Call configureSDK()');\n return transactionModule;\n};\n\nexport const getGeneralRestModuleClient = (): GeneralRestModule => {\n if (!transactionModule)\n throw new Error('SDK is not configured! Call configureSDK()');\n return generalRestModule;\n};\n"]}
|
package/dist/services/encode.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
//////////////////// ENCODE SINGLE ////////////////////
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
exports.encodeRouterCall = exports.encodeSingleSwap = exports.encodeSingleTrade = exports.encodeSingleTransferMargin = exports.encodeSingleWithdraw = exports.encodeSingleDeposit = void 0;
|
|
4
|
+
exports.encodeRouterCall = exports.encodeSingleSwap = exports.encodeSingleTrade = exports.encodeSingleStakeFromMarginAccount = exports.encodeSingleUnstakeFromMarginAccount = exports.encodeSingleTransferMargin = exports.encodeSingleWithdraw = exports.encodeSingleDeposit = void 0;
|
|
5
5
|
var common_1 = require("@reyaxyz/common");
|
|
6
6
|
var common_2 = require("@reyaxyz/common");
|
|
7
7
|
var ethers_1 = require("ethers");
|
|
@@ -20,6 +20,16 @@ var encodeSingleTransferMargin = function (toMarginAccountId, token, amount, mul
|
|
|
20
20
|
multiAction.newAction((0, common_2.getCommand)(common_2.CommandType.TRANSFER_MARGIN_ACCOUNT, [[toMarginAccountId, token, amount]], 0, 0));
|
|
21
21
|
};
|
|
22
22
|
exports.encodeSingleTransferMargin = encodeSingleTransferMargin;
|
|
23
|
+
var encodeSingleUnstakeFromMarginAccount = function (poolId, srusdAmount, minOut, multiAction) {
|
|
24
|
+
var encodedUnstakeInputs = ethers_1.AbiCoder.defaultAbiCoder().encode(['uint128', 'uint256', 'uint256'], [poolId, srusdAmount, minOut]);
|
|
25
|
+
multiAction.newAction((0, common_2.getCommand)(common_2.CommandType.MANAGE_POOL_STAKE, [1, encodedUnstakeInputs], 0, 0));
|
|
26
|
+
};
|
|
27
|
+
exports.encodeSingleUnstakeFromMarginAccount = encodeSingleUnstakeFromMarginAccount;
|
|
28
|
+
var encodeSingleStakeFromMarginAccount = function (poolId, amount, minShares, multiAction) {
|
|
29
|
+
var encodedStakeInputs = ethers_1.AbiCoder.defaultAbiCoder().encode(['uint128', 'uint256', 'uint256'], [poolId, amount, minShares]);
|
|
30
|
+
multiAction.newAction((0, common_2.getCommand)(common_2.CommandType.MANAGE_POOL_STAKE, [0, encodedStakeInputs], 0, 0));
|
|
31
|
+
};
|
|
32
|
+
exports.encodeSingleStakeFromMarginAccount = encodeSingleStakeFromMarginAccount;
|
|
23
33
|
var encodeSingleTrade = function (counterpartyAccountIds, orderBase, orderPriceLimit, marketId, exchangeId, multiAction) {
|
|
24
34
|
// (int256 orderBase, UD60x18 orderPriceLimit) = abi.decode(matchOrderInputs.inputs, (int256, UD60x18));
|
|
25
35
|
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;;;AAEzD,0CAAyE;AACzE,0CAA0D;AAC1D,iCAA6C;AAC7C,gBAAgB;AAChB,wGAAwG;AACxG,KAAK;AACE,IAAM,mBAAmB,GAAG,UACjC,KAAa,EACb,MAAc,EACd,WAAwB;IAExB,WAAW,CAAC,SAAS,CAAC,IAAA,mBAAU,EAAC,oBAAW,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,mBAAU,EAAC,oBAAW,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,mBAAU,EACR,oBAAW,CAAC,uBAAuB,EACnC,CAAC,CAAC,iBAAiB,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,EACpC,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,mBAAU,EACR,oBAAW,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,QAAgB,EAChB,SAAiB,EACjB,IAAc,EACd,QAAkB,EAClB,UAAoB,EACpB,QAAgB,EAChB,UAAkB,EAClB,WAAwB;IAExB,4DAA4D;IAC5D,WAAW,CAAC,SAAS,CACnB,IAAA,mBAAU,EACR,oBAAW,CAAC,YAAY,EACxB,CAAC,CAAC,QAAQ,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC,EACnD,QAAQ,EACR,UAAU,CACX,CACF,CAAC;AACJ,CAAC,CAAC;AAnBW,QAAA,gBAAgB,oBAmB3B;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,gBAAO,CAAC,CAAC;IACzC,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, CoreAbi } from '@reyaxyz/common';\nimport { CommandType, getCommand } from '@reyaxyz/common';\nimport { AbiCoder, Interface } from 'ethers';\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 encodeSingleSwap = (\n amountIn: string,\n amountOut: string,\n path: string[],\n adapters: string[],\n recipients: string[],\n marketId: number,\n exchangeId: number,\n multiAction: MultiAction,\n): void => {\n // Trade memory trade = abi.decode(command.inputs, (Trade));\n multiAction.newAction(\n getCommand(\n CommandType.CAMELOT_SWAP,\n [[amountIn, amountOut, path, adapters, recipients]],\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(CoreAbi);\n const calldata = INTERFACE.encodeFunctionData(functionSignature, parameters);\n return {\n calldata: calldata,\n value: BigInt(nativeCurrencyValue).toString(10),\n };\n};\n"]}
|
|
1
|
+
{"version":3,"file":"encode.js","sourceRoot":"/","sources":["services/encode.ts"],"names":[],"mappings":"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","sourcesContent":["//////////////////// ENCODE SINGLE ////////////////////\n\nimport { MethodParameters, MultiAction, CoreAbi } from '@reyaxyz/common';\nimport { CommandType, getCommand } from '@reyaxyz/common';\nimport { AbiCoder, Interface } from 'ethers';\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 encodeSingleUnstakeFromMarginAccount = (\n poolId: number,\n srusdAmount: bigint,\n minOut: bigint,\n multiAction: MultiAction,\n): void => {\n const encodedUnstakeInputs = AbiCoder.defaultAbiCoder().encode(\n ['uint128', 'uint256', 'uint256'],\n [poolId, srusdAmount, minOut],\n );\n\n multiAction.newAction(\n getCommand(CommandType.MANAGE_POOL_STAKE, [1, encodedUnstakeInputs], 0, 0),\n );\n};\n\nexport const encodeSingleStakeFromMarginAccount = (\n poolId: number,\n amount: bigint,\n minShares: bigint,\n multiAction: MultiAction,\n): void => {\n const encodedStakeInputs = AbiCoder.defaultAbiCoder().encode(\n ['uint128', 'uint256', 'uint256'],\n [poolId, amount, minShares],\n );\n\n multiAction.newAction(\n getCommand(CommandType.MANAGE_POOL_STAKE, [0, encodedStakeInputs], 0, 0),\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 encodeSingleSwap = (\n amountIn: string,\n amountOut: string,\n path: string[],\n adapters: string[],\n recipients: string[],\n marketId: number,\n exchangeId: number,\n multiAction: MultiAction,\n): void => {\n // Trade memory trade = abi.decode(command.inputs, (Trade));\n multiAction.newAction(\n getCommand(\n CommandType.CAMELOT_SWAP,\n [[amountIn, amountOut, path, adapters, recipients]],\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(CoreAbi);\n const calldata = INTERFACE.encodeFunctionData(functionSignature, parameters);\n return {\n calldata: calldata,\n value: BigInt(nativeCurrencyValue).toString(10),\n };\n};\n"]}
|
|
@@ -36,12 +36,10 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
36
36
|
}
|
|
37
37
|
};
|
|
38
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
-
exports.
|
|
39
|
+
exports.bridgeAndDepositPassivePool = void 0;
|
|
40
40
|
var common_1 = require("@reyaxyz/common");
|
|
41
|
-
var config_1 = require("../../config");
|
|
42
41
|
var common_2 = require("@reyaxyz/common");
|
|
43
42
|
var encode_1 = require("./encode");
|
|
44
|
-
var lp_1 = require("./lp");
|
|
45
43
|
var network_1 = require("../../utils/network");
|
|
46
44
|
var bridgeAndDepositPassivePool = function (params) { return __awaiter(void 0, void 0, void 0, function () {
|
|
47
45
|
var network, moneyInOutChainId, chainId, tokenInfo, amount, socketConnectors, peripheryAddress, _a, data, value, result;
|
|
@@ -53,13 +51,8 @@ var bridgeAndDepositPassivePool = function (params) { return __awaiter(void 0, v
|
|
|
53
51
|
network = _c.sent();
|
|
54
52
|
moneyInOutChainId = Number(network === null || network === void 0 ? void 0 : network.chainId);
|
|
55
53
|
chainId = (0, network_1.getReyaNetwork)();
|
|
56
|
-
// @todo fix this
|
|
57
54
|
if (moneyInOutChainId === chainId) {
|
|
58
|
-
|
|
59
|
-
signer: params.signer,
|
|
60
|
-
amount: params.amount,
|
|
61
|
-
lpPoolId: params.pool.id,
|
|
62
|
-
})];
|
|
55
|
+
throw new Error('Bridging from Reya Chain to Reya Chain is not supported');
|
|
63
56
|
}
|
|
64
57
|
tokenInfo = (0, common_1.getRUSDUnderlyingTokenInfo)(moneyInOutChainId);
|
|
65
58
|
amount = (0, common_1.scale)(tokenInfo.decimals)(params.amount);
|
|
@@ -82,57 +75,4 @@ var bridgeAndDepositPassivePool = function (params) { return __awaiter(void 0, v
|
|
|
82
75
|
});
|
|
83
76
|
}); };
|
|
84
77
|
exports.bridgeAndDepositPassivePool = bridgeAndDepositPassivePool;
|
|
85
|
-
var bridgeAndDepositPassivePoolV2 = function (params) { return __awaiter(void 0, void 0, void 0, function () {
|
|
86
|
-
var network, moneyInOutChainId, chainId, tokenInfo, amount, socketConnectors, peripheryAddress, reyaTokenInfo, _a, data, value, result;
|
|
87
|
-
var _b;
|
|
88
|
-
return __generator(this, function (_c) {
|
|
89
|
-
switch (_c.label) {
|
|
90
|
-
case 0: return [4 /*yield*/, ((_b = params.signer.provider) === null || _b === void 0 ? void 0 : _b.getNetwork())];
|
|
91
|
-
case 1:
|
|
92
|
-
network = _c.sent();
|
|
93
|
-
moneyInOutChainId = Number(network === null || network === void 0 ? void 0 : network.chainId);
|
|
94
|
-
chainId = (0, network_1.getReyaNetwork)();
|
|
95
|
-
if (moneyInOutChainId === chainId) {
|
|
96
|
-
throw new Error('Bridging from Reya Chain to Reya Chain is not supported');
|
|
97
|
-
}
|
|
98
|
-
tokenInfo = (0, common_1.getTokenInfoByAddress)(params.tokenAddress, moneyInOutChainId);
|
|
99
|
-
amount = (0, common_1.scale)(tokenInfo.decimals)(params.amount);
|
|
100
|
-
socketConnectors = (0, common_1.getSocketConnectors)({
|
|
101
|
-
moneyInOutChainId: moneyInOutChainId,
|
|
102
|
-
tokenName: tokenInfo.name,
|
|
103
|
-
});
|
|
104
|
-
peripheryAddress = (0, common_2.getAddress)((0, common_1.getReyaNetworkFromMoneyInOutChainId)(moneyInOutChainId), common_2.ContractType.PERIPHERY_PROXY);
|
|
105
|
-
reyaTokenInfo = (0, common_1.getTokenInfoByName)(tokenInfo.isRUSDUnderlying ? 'RUSD' : tokenInfo.name, chainId);
|
|
106
|
-
_a = (0, encode_1.encodeBridgeAndDepositPassivePoolV2)(peripheryAddress, common_1.SOCKET_BRIDGE_IN_MSG_GAS_LIMIT, socketConnectors.deposit, '0x', params.socketDepositFees, params.pool.id, params.ownerAddress, amount, BigInt(0), reyaTokenInfo.address), data = _a.calldata, value = _a.value;
|
|
107
|
-
return [4 /*yield*/, (0, common_1.executeTransaction)(params.signer, data, value, moneyInOutChainId, (0, common_1.getSocketVault)({
|
|
108
|
-
moneyInOutChainId: moneyInOutChainId,
|
|
109
|
-
tokenName: tokenInfo.name,
|
|
110
|
-
}))];
|
|
111
|
-
case 2:
|
|
112
|
-
result = _c.sent();
|
|
113
|
-
return [2 /*return*/, {
|
|
114
|
-
transactionHash: (result === null || result === void 0 ? void 0 : result.hash) || null,
|
|
115
|
-
}];
|
|
116
|
-
}
|
|
117
|
-
});
|
|
118
|
-
}); };
|
|
119
|
-
exports.bridgeAndDepositPassivePoolV2 = bridgeAndDepositPassivePoolV2;
|
|
120
|
-
var bridgeAndDepositPassivePoolUnderAlphaTerms = function (params) { return __awaiter(void 0, void 0, void 0, function () {
|
|
121
|
-
var alphaTermsModule;
|
|
122
|
-
return __generator(this, function (_a) {
|
|
123
|
-
switch (_a.label) {
|
|
124
|
-
case 0:
|
|
125
|
-
alphaTermsModule = (0, config_1.getAlphaTermsModuleClient)();
|
|
126
|
-
return [4 /*yield*/, alphaTermsModule.registerAlphaSignature({
|
|
127
|
-
walletAddress: params.ownerAddress,
|
|
128
|
-
link: params.signedLink,
|
|
129
|
-
})];
|
|
130
|
-
case 1:
|
|
131
|
-
_a.sent();
|
|
132
|
-
return [4 /*yield*/, (0, exports.bridgeAndDepositPassivePool)(params)];
|
|
133
|
-
case 2: return [2 /*return*/, _a.sent()];
|
|
134
|
-
}
|
|
135
|
-
});
|
|
136
|
-
}); };
|
|
137
|
-
exports.bridgeAndDepositPassivePoolUnderAlphaTerms = bridgeAndDepositPassivePoolUnderAlphaTerms;
|
|
138
78
|
//# sourceMappingURL=bridgeAndDepositPassivePool.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bridgeAndDepositPassivePool.js","sourceRoot":"/","sources":["services/lp/bridgeAndDepositPassivePool.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"bridgeAndDepositPassivePool.js","sourceRoot":"/","sources":["services/lp/bridgeAndDepositPassivePool.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0CASyB;AACzB,0CAA2D;AAC3D,mCAA6D;AAK7D,+CAAqD;AAE9C,IAAM,2BAA2B,GAAG,UACzC,MAAyC;;;;;oBAEzB,qBAAM,CAAA,MAAA,MAAM,CAAC,MAAM,CAAC,QAAQ,0CAAE,UAAU,EAAE,CAAA,EAAA;;gBAApD,OAAO,GAAG,SAA0C;gBACpD,iBAAiB,GAAsB,MAAM,CAAC,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,CAAC,CAAC;gBAEhE,OAAO,GAAG,IAAA,wBAAc,GAAE,CAAC;gBAEjC,IAAI,iBAAiB,KAAM,OAAmB,EAAE,CAAC;oBAC/C,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAC;gBAC7E,CAAC;gBAEK,SAAS,GAAG,IAAA,mCAA0B,EAAC,iBAAiB,CAAC,CAAC;gBAE1D,MAAM,GAAG,IAAA,cAAK,EAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAElD,gBAAgB,GAAG,IAAA,4BAAmB,EAAC;oBAC3C,iBAAiB,EAAE,iBAAiB;oBACpC,SAAS,EAAE,SAAS,CAAC,IAAI;iBAC1B,CAAC,CAAC;gBAEG,gBAAgB,GAAG,IAAA,mBAAU,EACjC,IAAA,4CAAmC,EAAC,iBAAiB,CAAC,EACtD,qBAAY,CAAC,eAAe,CAC7B,CAAC;gBAEI,KAA4B,IAAA,0CAAiC,EACjE,gBAAgB,EAChB,uCAA8B,EAC9B,gBAAgB,CAAC,OAAO,EACxB,IAAI,EACJ,MAAM,CAAC,iBAAiB,EACxB,MAAM,CAAC,IAAI,CAAC,EAAE,EACd,MAAM,CAAC,YAAY,EACnB,MAAM,EACN,MAAM,CAAC,CAAC,CAAC,CACV,EAViB,IAAI,cAAA,EAAE,KAAK,WAAA,CAU3B;gBAEa,qBAAM,IAAA,2BAAkB,EACrC,MAAM,CAAC,MAAM,EACb,IAAI,EACJ,KAAK,EACL,iBAAiB,EACjB,IAAA,uBAAc,EAAC;wBACb,iBAAiB,EAAE,iBAAiB;wBACpC,SAAS,EAAE,SAAS,CAAC,IAAI;qBAC1B,CAAC,CACH,EAAA;;gBATK,MAAM,GAAG,SASd;gBAED,sBAAO;wBACL,eAAe,EAAE,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,IAAI,KAAI,IAAI;qBACtC,EAAC;;;KACH,CAAC;AApDW,QAAA,2BAA2B,+BAoDtC","sourcesContent":["import {\n getSocketVault,\n scale,\n MoneyInOutChainId,\n getSocketConnectors,\n getReyaNetworkFromMoneyInOutChainId,\n getRUSDUnderlyingTokenInfo,\n executeTransaction,\n SOCKET_BRIDGE_IN_MSG_GAS_LIMIT,\n} from '@reyaxyz/common';\nimport { ContractType, getAddress } from '@reyaxyz/common';\nimport { encodeBridgeAndDepositPassivePool } from './encode';\nimport {\n BridgeAndDepositPassivePoolParams,\n BridgeAndDepositPassivePoolResult,\n} from './types';\nimport { getReyaNetwork } from '../../utils/network';\n\nexport const bridgeAndDepositPassivePool = async (\n params: BridgeAndDepositPassivePoolParams,\n): Promise<BridgeAndDepositPassivePoolResult> => {\n const network = await params.signer.provider?.getNetwork();\n const moneyInOutChainId: MoneyInOutChainId = Number(network?.chainId);\n\n const chainId = getReyaNetwork();\n\n if (moneyInOutChainId === (chainId as unknown)) {\n throw new Error('Bridging from Reya Chain to Reya Chain is not supported');\n }\n\n const tokenInfo = getRUSDUnderlyingTokenInfo(moneyInOutChainId);\n\n const amount = scale(tokenInfo.decimals)(params.amount);\n\n const socketConnectors = getSocketConnectors({\n moneyInOutChainId: moneyInOutChainId,\n tokenName: tokenInfo.name,\n });\n\n const peripheryAddress = getAddress(\n getReyaNetworkFromMoneyInOutChainId(moneyInOutChainId),\n ContractType.PERIPHERY_PROXY,\n );\n\n const { calldata: data, value } = encodeBridgeAndDepositPassivePool(\n peripheryAddress,\n SOCKET_BRIDGE_IN_MSG_GAS_LIMIT,\n socketConnectors.deposit,\n '0x',\n params.socketDepositFees,\n params.pool.id,\n params.ownerAddress,\n amount,\n BigInt(0),\n );\n\n const result = await executeTransaction(\n params.signer,\n data,\n value,\n moneyInOutChainId,\n getSocketVault({\n moneyInOutChainId: moneyInOutChainId,\n tokenName: tokenInfo.name,\n }),\n );\n\n return {\n transactionHash: result?.hash || null,\n };\n};\n"]}
|
|
@@ -1,33 +1,107 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
];
|
|
11
|
-
// @todo Update ABI
|
|
12
|
-
var removeLiquidityabi = [
|
|
13
|
-
'function removeLiquidity(uint128 poolId, uint256 sharesAmount, uint256 minOut) returns (uint256)',
|
|
14
|
-
];
|
|
15
|
-
var encodeProvideLiquidityCall = function (poolId, accountOwner, amount, minShares) {
|
|
16
|
-
var functionSignature = 'addLiquidity';
|
|
17
|
-
var parameters = [poolId, accountOwner, amount, minShares];
|
|
18
|
-
var INTERFACE = new ethers_1.Interface(provideLiquidityAbi);
|
|
19
|
-
var calldata = INTERFACE.encodeFunctionData(functionSignature, parameters);
|
|
20
|
-
return { calldata: calldata, value: BigInt(0).toString(10) };
|
|
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
|
+
});
|
|
21
10
|
};
|
|
22
|
-
|
|
23
|
-
var
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
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
|
+
}
|
|
29
37
|
};
|
|
30
|
-
exports
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.encodeBridgeAndDepositPassivePool = exports.encodeWithdrawPassivePoolAndBridge = exports.encodeTransferFromPoolToMA = exports.encodeTransferFromMAToPool = exports.encodeStakeFromMarginAccount = exports.encodeUnstakeFromMarginAccount = exports.encodeDepositLiquidityToAccount = void 0;
|
|
40
|
+
var ethers_1 = require("ethers");
|
|
41
|
+
var common_1 = require("@reyaxyz/common");
|
|
42
|
+
var ethers_2 = require("ethers");
|
|
43
|
+
var encode_1 = require("../encode");
|
|
44
|
+
var encodeDepositLiquidityToAccount = function (sig, srusdAmount, poolId, accountId) { return __awaiter(void 0, void 0, void 0, function () {
|
|
45
|
+
var functionSignature, parameters, INTERFACE, calldata;
|
|
46
|
+
return __generator(this, function (_a) {
|
|
47
|
+
functionSignature = 'depositLiquidityToAccount';
|
|
48
|
+
parameters = [{ accountId: accountId, poolId: poolId, srusdAmount: srusdAmount, sig: sig }];
|
|
49
|
+
INTERFACE = new ethers_1.Interface(common_1.PeripheryAbi);
|
|
50
|
+
calldata = INTERFACE.encodeFunctionData(functionSignature, parameters);
|
|
51
|
+
return [2 /*return*/, { calldata: calldata, value: BigInt(0).toString(10) }];
|
|
52
|
+
});
|
|
53
|
+
}); };
|
|
54
|
+
exports.encodeDepositLiquidityToAccount = encodeDepositLiquidityToAccount;
|
|
55
|
+
var encodeUnstakeFromMarginAccount = function (signer, chainId, coreSigNonce, accountId, poolId, srusdAmount, mintOut) { return __awaiter(void 0, void 0, void 0, function () {
|
|
56
|
+
var multiAction, eip712Signature, value, functionSignature, parameters, INTERFACE, calldata;
|
|
57
|
+
return __generator(this, function (_a) {
|
|
58
|
+
switch (_a.label) {
|
|
59
|
+
case 0:
|
|
60
|
+
multiAction = new common_1.MultiAction();
|
|
61
|
+
(0, encode_1.encodeSingleUnstakeFromMarginAccount)(poolId, srusdAmount, mintOut, multiAction);
|
|
62
|
+
return [4 /*yield*/, (0, common_1.signCoreCommands)(signer, chainId, (0, common_1.getAddress)(chainId, common_1.ContractType.PERIPHERY_PROXY), accountId, multiAction.commands, coreSigNonce + 1, (0, common_1.getCurrentTimestampInSeconds)() + common_1.CORE_DEADLINE_IN_SECONDS, ethers_2.ethers.AbiCoder.defaultAbiCoder().encode([], []))];
|
|
63
|
+
case 1:
|
|
64
|
+
eip712Signature = (_a.sent()).signature;
|
|
65
|
+
value = BigInt(0);
|
|
66
|
+
functionSignature = 'execute';
|
|
67
|
+
parameters = [
|
|
68
|
+
{ accountId: accountId, commands: multiAction.commands, sig: eip712Signature },
|
|
69
|
+
];
|
|
70
|
+
INTERFACE = new ethers_1.Interface(common_1.PeripheryAbi);
|
|
71
|
+
calldata = INTERFACE.encodeFunctionData(functionSignature, parameters);
|
|
72
|
+
return [2 /*return*/, {
|
|
73
|
+
calldata: calldata,
|
|
74
|
+
value: BigInt(value).toString(10),
|
|
75
|
+
}];
|
|
76
|
+
}
|
|
77
|
+
});
|
|
78
|
+
}); };
|
|
79
|
+
exports.encodeUnstakeFromMarginAccount = encodeUnstakeFromMarginAccount;
|
|
80
|
+
var encodeStakeFromMarginAccount = function (signer, chainId, coreSigNonce, accountId, poolId, amount, minShares) { return __awaiter(void 0, void 0, void 0, function () {
|
|
81
|
+
var multiAction, eip712Signature, value, functionSignature, parameters, INTERFACE, calldata;
|
|
82
|
+
return __generator(this, function (_a) {
|
|
83
|
+
switch (_a.label) {
|
|
84
|
+
case 0:
|
|
85
|
+
multiAction = new common_1.MultiAction();
|
|
86
|
+
(0, encode_1.encodeSingleStakeFromMarginAccount)(poolId, amount, minShares, multiAction);
|
|
87
|
+
return [4 /*yield*/, (0, common_1.signCoreCommands)(signer, chainId, (0, common_1.getAddress)(chainId, common_1.ContractType.PERIPHERY_PROXY), accountId, multiAction.commands, coreSigNonce + 1, (0, common_1.getCurrentTimestampInSeconds)() + common_1.CORE_DEADLINE_IN_SECONDS, ethers_2.ethers.AbiCoder.defaultAbiCoder().encode([], []))];
|
|
88
|
+
case 1:
|
|
89
|
+
eip712Signature = (_a.sent()).signature;
|
|
90
|
+
value = BigInt(0);
|
|
91
|
+
functionSignature = 'execute';
|
|
92
|
+
parameters = [
|
|
93
|
+
{ accountId: accountId, commands: multiAction.commands, sig: eip712Signature },
|
|
94
|
+
];
|
|
95
|
+
INTERFACE = new ethers_1.Interface(common_1.PeripheryAbi);
|
|
96
|
+
calldata = INTERFACE.encodeFunctionData(functionSignature, parameters);
|
|
97
|
+
return [2 /*return*/, {
|
|
98
|
+
calldata: calldata,
|
|
99
|
+
value: BigInt(value).toString(10),
|
|
100
|
+
}];
|
|
101
|
+
}
|
|
102
|
+
});
|
|
103
|
+
}); };
|
|
104
|
+
exports.encodeStakeFromMarginAccount = encodeStakeFromMarginAccount;
|
|
31
105
|
var encodeTransferFromMAToPool = function (accountId, amount, sig, poolId, minShares, receiver) {
|
|
32
106
|
var functionSignature = 'transferFromMAToPool';
|
|
33
107
|
var parameters = [{ accountId: accountId, amount: amount, sig: sig, poolId: poolId, minShares: minShares, receiver: receiver }];
|
|
@@ -63,26 +137,6 @@ var encodeWithdrawPassivePoolAndBridge = function (owner, poolId, sharesAmount,
|
|
|
63
137
|
return { calldata: calldata, value: BigInt(0).toString(10) };
|
|
64
138
|
};
|
|
65
139
|
exports.encodeWithdrawPassivePoolAndBridge = encodeWithdrawPassivePoolAndBridge;
|
|
66
|
-
var encodeWithdrawPassivePoolAndBridgeV2 = function (owner, poolId, sharesAmount, minOut, sig, socketMsgGasLimit, chainId, receiver, token) {
|
|
67
|
-
var functionSignature = 'withdrawPassivePoolV2';
|
|
68
|
-
var parameters = [
|
|
69
|
-
{
|
|
70
|
-
owner: owner,
|
|
71
|
-
token: token,
|
|
72
|
-
poolId: poolId,
|
|
73
|
-
sharesAmount: sharesAmount,
|
|
74
|
-
minOut: minOut,
|
|
75
|
-
sig: sig,
|
|
76
|
-
socketMsgGasLimit: socketMsgGasLimit,
|
|
77
|
-
chainId: chainId,
|
|
78
|
-
receiver: receiver,
|
|
79
|
-
},
|
|
80
|
-
];
|
|
81
|
-
var INTERFACE = new ethers_1.Interface(common_1.PeripheryAbi);
|
|
82
|
-
var calldata = INTERFACE.encodeFunctionData(functionSignature, parameters);
|
|
83
|
-
return { calldata: calldata, value: BigInt(0).toString(10) };
|
|
84
|
-
};
|
|
85
|
-
exports.encodeWithdrawPassivePoolAndBridgeV2 = encodeWithdrawPassivePoolAndBridgeV2;
|
|
86
140
|
var encodeBridgeAndDepositPassivePool = function (receiver, socketMsgGasLimit, socketConnector, socketBridgeOptions, socketFees, poolId, owner, amount, minShares) {
|
|
87
141
|
var PERIPHERY_INTERFACE = new ethers_1.Interface(common_1.PeripheryAbi);
|
|
88
142
|
var inputs = { poolId: poolId, owner: owner, minShares: minShares };
|
|
@@ -96,27 +150,9 @@ var encodeBridgeAndDepositPassivePool = function (receiver, socketMsgGasLimit, s
|
|
|
96
150
|
peripheryCalldata,
|
|
97
151
|
socketBridgeOptions,
|
|
98
152
|
];
|
|
99
|
-
var INTERFACE = new ethers_1.Interface(
|
|
153
|
+
var INTERFACE = new ethers_1.Interface(common_1.Socket_VaultWithPayloadAbi);
|
|
100
154
|
var calldata = INTERFACE.encodeFunctionData(functionSignature, parameters);
|
|
101
155
|
return { calldata: calldata, value: socketFees.toString(10) };
|
|
102
156
|
};
|
|
103
157
|
exports.encodeBridgeAndDepositPassivePool = encodeBridgeAndDepositPassivePool;
|
|
104
|
-
var encodeBridgeAndDepositPassivePoolV2 = function (receiver, socketMsgGasLimit, socketConnector, socketBridgeOptions, socketFees, poolId, owner, amount, minShares, token) {
|
|
105
|
-
var PERIPHERY_INTERFACE = new ethers_1.Interface(common_1.PeripheryAbi);
|
|
106
|
-
var inputs = { poolId: poolId, owner: owner, token: token, minShares: minShares };
|
|
107
|
-
var peripheryCalldata = PERIPHERY_INTERFACE.encodeFunctionData('depositPassivePoolV2((uint128,address,address,uint256))', [inputs]);
|
|
108
|
-
var functionSignature = 'bridge';
|
|
109
|
-
var parameters = [
|
|
110
|
-
receiver,
|
|
111
|
-
amount,
|
|
112
|
-
socketMsgGasLimit,
|
|
113
|
-
socketConnector,
|
|
114
|
-
peripheryCalldata,
|
|
115
|
-
socketBridgeOptions,
|
|
116
|
-
];
|
|
117
|
-
var INTERFACE = new ethers_1.Interface(common_2.Socket_VaultWithPayloadAbi);
|
|
118
|
-
var calldata = INTERFACE.encodeFunctionData(functionSignature, parameters);
|
|
119
|
-
return { calldata: calldata, value: socketFees.toString(10) };
|
|
120
|
-
};
|
|
121
|
-
exports.encodeBridgeAndDepositPassivePoolV2 = encodeBridgeAndDepositPassivePoolV2;
|
|
122
158
|
//# sourceMappingURL=encode.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"encode.js","sourceRoot":"/","sources":["services/lp/encode.ts"],"names":[],"mappings":"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","sourcesContent":["import { MethodParameters, PeripheryAbi } from '@reyaxyz/common';\nimport { Interface } from 'ethers';\nimport { EIP712Signature, Socket_VaultWithPayloadAbi } from '@reyaxyz/common';\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 minShares: bigint,\n receiver: string,\n): MethodParameters => {\n const functionSignature = 'transferFromMAToPool';\n const parameters = [{ accountId, amount, sig, poolId, minShares, receiver }];\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 encodeTransferFromPoolToMA = (\n owner: string,\n sig: EIP712Signature,\n sharesAmount: bigint,\n poolId: number,\n minOut: bigint,\n accountId: number,\n): MethodParameters => {\n const functionSignature = 'transferFromPoolToMA';\n const parameters = [{ owner, sig, sharesAmount, poolId, minOut, accountId }];\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 chainId: number,\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 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 encodeWithdrawPassivePoolAndBridgeV2 = (\n owner: string,\n poolId: number,\n sharesAmount: bigint,\n minOut: bigint,\n sig: EIP712Signature,\n socketMsgGasLimit: bigint,\n chainId: number,\n receiver: string,\n token: string,\n): MethodParameters => {\n const functionSignature = 'withdrawPassivePoolV2';\n const parameters = [\n {\n owner,\n token,\n poolId,\n sharesAmount,\n minOut,\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 encodeBridgeAndDepositPassivePool = (\n receiver: string,\n socketMsgGasLimit: bigint,\n socketConnector: string,\n socketBridgeOptions: string,\n socketFees: bigint,\n poolId: number,\n owner: string,\n amount: bigint,\n minShares: bigint,\n): MethodParameters => {\n const PERIPHERY_INTERFACE = new Interface(PeripheryAbi);\n const inputs = { poolId, owner, minShares };\n const peripheryCalldata = PERIPHERY_INTERFACE.encodeFunctionData(\n 'depositPassivePool((uint128,address,uint256))',\n [inputs],\n );\n\n const functionSignature = 'bridge';\n const parameters = [\n receiver,\n amount,\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 encodeBridgeAndDepositPassivePoolV2 = (\n receiver: string,\n socketMsgGasLimit: bigint,\n socketConnector: string,\n socketBridgeOptions: string,\n socketFees: bigint,\n poolId: number,\n owner: string,\n amount: bigint,\n minShares: bigint,\n token: string,\n): MethodParameters => {\n const PERIPHERY_INTERFACE = new Interface(PeripheryAbi);\n const inputs = { poolId, owner, token, minShares };\n const peripheryCalldata = PERIPHERY_INTERFACE.encodeFunctionData(\n 'depositPassivePoolV2((uint128,address,address,uint256))',\n [inputs],\n );\n\n const functionSignature = 'bridge';\n const parameters = [\n receiver,\n amount,\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/lp/encode.ts"],"names":[],"mappings":"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","sourcesContent":["import { Interface } from 'ethers';\nimport {\n EIP712Signature,\n Socket_VaultWithPayloadAbi,\n MultiAction,\n MethodParameters,\n PeripheryAbi,\n signCoreCommands,\n getAddress,\n ContractType,\n CORE_DEADLINE_IN_SECONDS,\n getCurrentTimestampInSeconds,\n} from '@reyaxyz/common';\nimport { ethers, Signer } from 'ethers';\nimport {\n encodeSingleStakeFromMarginAccount,\n encodeSingleUnstakeFromMarginAccount,\n} from '../encode';\n\nexport const encodeDepositLiquidityToAccount = async (\n sig: EIP712Signature,\n srusdAmount: bigint,\n poolId: number,\n accountId: number,\n): Promise<MethodParameters> => {\n const functionSignature = 'depositLiquidityToAccount';\n const parameters = [{ accountId, poolId, srusdAmount, sig }];\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 encodeUnstakeFromMarginAccount = async (\n signer: Signer,\n chainId: number,\n coreSigNonce: number,\n accountId: number,\n poolId: number,\n srusdAmount: bigint,\n mintOut: bigint,\n): Promise<MethodParameters> => {\n const multiAction = new MultiAction();\n\n encodeSingleUnstakeFromMarginAccount(\n poolId,\n srusdAmount,\n mintOut,\n multiAction,\n );\n\n const { signature: 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\n const functionSignature = 'execute';\n const parameters = [\n { accountId, commands: multiAction.commands, sig: eip712Signature },\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 encodeStakeFromMarginAccount = async (\n signer: Signer,\n chainId: number,\n coreSigNonce: number,\n accountId: number,\n poolId: number,\n amount: bigint,\n minShares: bigint,\n): Promise<MethodParameters> => {\n const multiAction = new MultiAction();\n\n encodeSingleStakeFromMarginAccount(poolId, amount, minShares, multiAction);\n\n const { signature: 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\n const functionSignature = 'execute';\n const parameters = [\n { accountId, commands: multiAction.commands, sig: eip712Signature },\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 encodeTransferFromMAToPool = (\n accountId: number,\n amount: bigint,\n sig: EIP712Signature,\n poolId: number,\n minShares: bigint,\n receiver: string,\n): MethodParameters => {\n const functionSignature = 'transferFromMAToPool';\n const parameters = [{ accountId, amount, sig, poolId, minShares, receiver }];\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 encodeTransferFromPoolToMA = (\n owner: string,\n sig: EIP712Signature,\n sharesAmount: bigint,\n poolId: number,\n minOut: bigint,\n accountId: number,\n): MethodParameters => {\n const functionSignature = 'transferFromPoolToMA';\n const parameters = [{ owner, sig, sharesAmount, poolId, minOut, accountId }];\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 chainId: number,\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 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 encodeBridgeAndDepositPassivePool = (\n receiver: string,\n socketMsgGasLimit: bigint,\n socketConnector: string,\n socketBridgeOptions: string,\n socketFees: bigint,\n poolId: number,\n owner: string,\n amount: bigint,\n minShares: bigint,\n): MethodParameters => {\n const PERIPHERY_INTERFACE = new Interface(PeripheryAbi);\n const inputs = { poolId, owner, minShares };\n const peripheryCalldata = PERIPHERY_INTERFACE.encodeFunctionData(\n 'depositPassivePool((uint128,address,uint256))',\n [inputs],\n );\n\n const functionSignature = 'bridge';\n const parameters = [\n receiver,\n amount,\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"]}
|
|
@@ -15,9 +15,11 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
17
|
__exportStar(require("./types"), exports);
|
|
18
|
-
__exportStar(require("./lp"), exports);
|
|
19
18
|
__exportStar(require("./bridgeAndDepositPassivePool"), exports);
|
|
20
19
|
__exportStar(require("./transferFromMAToPool"), exports);
|
|
21
20
|
__exportStar(require("./transferFromPoolToMa"), exports);
|
|
22
21
|
__exportStar(require("./withdrawPassivePoolAndBridge"), exports);
|
|
22
|
+
__exportStar(require("./transferStakeToMarginAccount"), exports);
|
|
23
|
+
__exportStar(require("./unstakeFromMarginAccount"), exports);
|
|
24
|
+
__exportStar(require("./stakeFromMarginAccount"), exports);
|
|
23
25
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"/","sources":["services/lp/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0CAAwB;AACxB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"/","sources":["services/lp/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0CAAwB;AACxB,gEAA8C;AAC9C,yDAAuC;AACvC,yDAAuC;AACvC,iEAA+C;AAC/C,iEAA+C;AAC/C,6DAA2C;AAC3C,2DAAyC","sourcesContent":["export * from './types';\nexport * from './bridgeAndDepositPassivePool';\nexport * from './transferFromMAToPool';\nexport * from './transferFromPoolToMa';\nexport * from './withdrawPassivePoolAndBridge';\nexport * from './transferStakeToMarginAccount';\nexport * from './unstakeFromMarginAccount';\nexport * from './stakeFromMarginAccount';\n"]}
|
|
@@ -0,0 +1,67 @@
|
|
|
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.stakeFromMarginAccount = void 0;
|
|
40
|
+
var network_1 = require("../../utils/network");
|
|
41
|
+
var common_1 = require("@reyaxyz/common");
|
|
42
|
+
var encode_1 = require("./encode");
|
|
43
|
+
var signAndBroadcastTransaction_1 = require("../signAndBroadcastTransaction");
|
|
44
|
+
var stakeFromMarginAccount = function (params) { return __awaiter(void 0, void 0, void 0, function () {
|
|
45
|
+
var chainId, tokenInfo, amount, minShares, data, result;
|
|
46
|
+
return __generator(this, function (_a) {
|
|
47
|
+
switch (_a.label) {
|
|
48
|
+
case 0:
|
|
49
|
+
chainId = (0, network_1.getReyaNetwork)();
|
|
50
|
+
tokenInfo = (0, common_1.getTokenInfoByAddress)(params.pool.tokenAddress);
|
|
51
|
+
amount = (0, common_1.scale)(tokenInfo.decimals)(params.amount);
|
|
52
|
+
minShares = BigInt(0);
|
|
53
|
+
return [4 /*yield*/, (0, encode_1.encodeStakeFromMarginAccount)(params.signer, chainId, params.owner.coreSigNonce, params.marginAccountId, params.pool.id, amount, minShares)];
|
|
54
|
+
case 1:
|
|
55
|
+
data = (_a.sent()).calldata;
|
|
56
|
+
return [4 /*yield*/, (0, signAndBroadcastTransaction_1.signAndBroadcastTransaction)(data, chainId, common_1.ContractType.PERIPHERY_PROXY, {})];
|
|
57
|
+
case 2:
|
|
58
|
+
result = _a.sent();
|
|
59
|
+
return [2 /*return*/, {
|
|
60
|
+
transactionHash: (result === null || result === void 0 ? void 0 : result.txHash) || null,
|
|
61
|
+
coreSigNonce: Number(result === null || result === void 0 ? void 0 : result.coreSigNonce) || null,
|
|
62
|
+
}];
|
|
63
|
+
}
|
|
64
|
+
});
|
|
65
|
+
}); };
|
|
66
|
+
exports.stakeFromMarginAccount = stakeFromMarginAccount;
|
|
67
|
+
//# sourceMappingURL=stakeFromMarginAccount.js.map
|