@reyaxyz/sdk 0.18.5 → 0.19.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.
Files changed (36) hide show
  1. package/dist/services/lp/bridgeAndDepositPassivePool.js +14 -22
  2. package/dist/services/lp/bridgeAndDepositPassivePool.js.map +1 -1
  3. package/dist/services/lp/transferFromMAToPool.js +7 -5
  4. package/dist/services/lp/transferFromMAToPool.js.map +1 -1
  5. package/dist/services/lp/types.js.map +1 -1
  6. package/dist/services/lp/withdrawPassivePoolAndBridge.js +9 -6
  7. package/dist/services/lp/withdrawPassivePoolAndBridge.js.map +1 -1
  8. package/dist/services/margin-accounts/bridgeAndDepositExistingMA.js +2 -1
  9. package/dist/services/margin-accounts/bridgeAndDepositExistingMA.js.map +1 -1
  10. package/dist/services/margin-accounts/bridgeAndDepositNewMA.js +12 -19
  11. package/dist/services/margin-accounts/bridgeAndDepositNewMA.js.map +1 -1
  12. package/dist/services/margin-accounts/types.js.map +1 -1
  13. package/dist/services/margin-accounts/withdrawMAAndBridge.js +4 -3
  14. package/dist/services/margin-accounts/withdrawMAAndBridge.js.map +1 -1
  15. package/dist/types/services/lp/transferFromMAToPool.d.ts.map +1 -1
  16. package/dist/types/services/lp/types.d.ts +10 -18
  17. package/dist/types/services/lp/types.d.ts.map +1 -1
  18. package/dist/types/services/lp/withdrawPassivePoolAndBridge.d.ts.map +1 -1
  19. package/dist/types/services/margin-accounts/bridgeAndDepositExistingMA.d.ts.map +1 -1
  20. package/dist/types/services/margin-accounts/types.d.ts +4 -6
  21. package/dist/types/services/margin-accounts/types.d.ts.map +1 -1
  22. package/dist/types/services/margin-accounts/withdrawMAAndBridge.d.ts.map +1 -1
  23. package/dist/types/utils/consts.d.ts +2 -0
  24. package/dist/types/utils/consts.d.ts.map +1 -0
  25. package/dist/utils/consts.js +5 -0
  26. package/dist/utils/consts.js.map +1 -0
  27. package/package.json +3 -3
  28. package/src/services/lp/bridgeAndDepositPassivePool.ts +7 -7
  29. package/src/services/lp/transferFromMAToPool.ts +8 -6
  30. package/src/services/lp/types.ts +15 -18
  31. package/src/services/lp/withdrawPassivePoolAndBridge.ts +24 -14
  32. package/src/services/margin-accounts/bridgeAndDepositExistingMA.ts +8 -3
  33. package/src/services/margin-accounts/bridgeAndDepositNewMA.ts +1 -1
  34. package/src/services/margin-accounts/types.ts +9 -7
  35. package/src/services/margin-accounts/withdrawMAAndBridge.ts +10 -5
  36. package/src/utils/consts.ts +1 -0
@@ -43,34 +43,26 @@ var executeTransaction_1 = require("../executeTransaction");
43
43
  var common_2 = require("../token/common");
44
44
  var encode_1 = require("./encode");
45
45
  var bridgeAndDepositPassivePool = function (params) { return __awaiter(void 0, void 0, void 0, function () {
46
- var network, chainId, tokenDecimals, amount, _a, data, value, _b, _c, result;
47
- var _d;
48
- return __generator(this, function (_e) {
49
- switch (_e.label) {
50
- case 0: return [4 /*yield*/, ((_d = params.signer.provider) === null || _d === void 0 ? void 0 : _d.getNetwork())];
46
+ var network, chainId, tokenDecimals, amount, _a, data, value, result;
47
+ var _b;
48
+ return __generator(this, function (_c) {
49
+ switch (_c.label) {
50
+ case 0: return [4 /*yield*/, ((_b = params.signer.provider) === null || _b === void 0 ? void 0 : _b.getNetwork())];
51
51
  case 1:
52
- network = _e.sent();
52
+ network = _c.sent();
53
53
  chainId = Number(network === null || network === void 0 ? void 0 : network.chainId);
54
- tokenDecimals = (0, common_2.getTokenDetails)(params.poolTokenAddress).tokenDecimals;
54
+ tokenDecimals = (0, common_2.getTokenDetails)(params.pool.token).tokenDecimals;
55
55
  amount = (0, common_2.scale)(tokenDecimals)(params.amount);
56
- _b = encode_1.encodeBridgeAndDepositPassivePool;
57
- _c = [(0, contractAddresses_1.getAddress)(chainId, contractAddresses_1.ContractType.PERIPHERY_PROXY),
58
- BigInt('10000000'),
59
- (0, common_1.getSocketConnector)({
60
- chainId: chainId,
61
- tokenAddress: params.poolTokenAddress,
62
- }),
63
- params.poolId];
64
- return [4 /*yield*/, params.signer.getAddress()];
65
- case 2:
66
- _a = _b.apply(void 0, _c.concat([_e.sent(), amount,
67
- params.minShares])), data = _a.calldata, value = _a.value;
56
+ _a = (0, encode_1.encodeBridgeAndDepositPassivePool)((0, contractAddresses_1.getAddress)(chainId, contractAddresses_1.ContractType.PERIPHERY_PROXY), BigInt('10000000'), (0, common_1.getSocketConnector)({
57
+ chainId: chainId,
58
+ tokenAddress: params.pool.token.toLowerCase(),
59
+ }), params.pool.id, params.ownerAddress, amount, BigInt(0)), data = _a.calldata, value = _a.value;
68
60
  return [4 /*yield*/, (0, executeTransaction_1.executeTransaction)(params.signer, data, value, chainId, (0, common_1.getSocketVault)({
69
61
  moneyInOutChainId: chainId,
70
- tokenAddress: params.poolTokenAddress,
62
+ tokenAddress: params.pool.token.toLowerCase(),
71
63
  }))];
72
- case 3:
73
- result = _e.sent();
64
+ case 2:
65
+ result = _c.sent();
74
66
  return [2 /*return*/, {
75
67
  transactionHash: (result === null || result === void 0 ? void 0 : result.hash) || null,
76
68
  }];
@@ -1 +1 @@
1
- {"version":3,"file":"bridgeAndDepositPassivePool.js","sourceRoot":"/","sources":["services/lp/bridgeAndDepositPassivePool.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0CAAqE;AACrE,mEAAyE;AACzE,4DAA2D;AAC3D,0CAAyD;AACzD,mCAA6D;AAMtD,IAAM,2BAA2B,GAAG,UACzC,MAAyC;;;;;oBAEzB,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;gBAEjC,aAAa,GAAK,IAAA,wBAAe,EAAC,MAAM,CAAC,gBAAgB,CAAC,cAA7C,CAA8C;gBAC7D,MAAM,GAAG,IAAA,cAAK,EAAC,aAAa,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAEjB,KAAA,0CAAiC,CAAA;sBACjE,IAAA,8BAAU,EAAC,OAAO,EAAE,gCAAY,CAAC,eAAe,CAAC;oBACjD,MAAM,CAAC,UAAU,CAAC;oBAClB,IAAA,2BAAkB,EAAC;wBACjB,OAAO,EAAE,OAAO;wBAChB,YAAY,EAAE,MAAM,CAAC,gBAAgB;qBACtC,CAAC;oBACF,MAAM,CAAC,MAAM;gBACb,qBAAM,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,EAAA;;gBAR5B,KAA4B,4BAQhC,SAAgC,EAChC,MAAM;oBACN,MAAM,CAAC,SAAS,GACjB,EAXiB,IAAI,cAAA,EAAE,KAAK,WAAA;gBAad,qBAAM,IAAA,uCAAkB,EACrC,MAAM,CAAC,MAAM,EACb,IAAI,EACJ,KAAK,EACL,OAAO,EACP,IAAA,uBAAc,EAAC;wBACb,iBAAiB,EAAE,OAAO;wBAC1B,YAAY,EAAE,MAAM,CAAC,gBAAgB;qBACtC,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;AApCW,QAAA,2BAA2B,+BAoCtC","sourcesContent":["import { getSocketConnector, getSocketVault } from '@reyaxyz/common';\nimport { ContractType, getAddress } from '../../utils/contractAddresses';\nimport { executeTransaction } from '../executeTransaction';\nimport { getTokenDetails, scale } from '../token/common';\nimport { encodeBridgeAndDepositPassivePool } from './encode';\nimport {\n BridgeAndDepositPassivePoolParams,\n BridgeAndDepositPassivePoolResult,\n} from './types';\n\nexport const bridgeAndDepositPassivePool = async (\n params: BridgeAndDepositPassivePoolParams,\n): Promise<BridgeAndDepositPassivePoolResult> => {\n const network = await params.signer.provider?.getNetwork();\n const chainId = Number(network?.chainId);\n\n const { tokenDecimals } = getTokenDetails(params.poolTokenAddress);\n const amount = scale(tokenDecimals)(params.amount);\n\n const { calldata: data, value } = encodeBridgeAndDepositPassivePool(\n getAddress(chainId, ContractType.PERIPHERY_PROXY),\n BigInt('10000000'),\n getSocketConnector({\n chainId: chainId,\n tokenAddress: params.poolTokenAddress,\n }),\n params.poolId,\n await params.signer.getAddress(),\n amount,\n params.minShares,\n );\n\n const result = await executeTransaction(\n params.signer,\n data,\n value,\n chainId,\n getSocketVault({\n moneyInOutChainId: chainId,\n tokenAddress: params.poolTokenAddress,\n }),\n );\n\n return {\n transactionHash: result?.hash || null,\n };\n};\n"]}
1
+ {"version":3,"file":"bridgeAndDepositPassivePool.js","sourceRoot":"/","sources":["services/lp/bridgeAndDepositPassivePool.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0CAA8E;AAC9E,mEAAyE;AACzE,4DAA2D;AAC3D,0CAAyD;AACzD,mCAA6D;AAMtD,IAAM,2BAA2B,GAAG,UACzC,MAAyC;;;;;oBAEzB,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;gBAEjC,aAAa,GAAK,IAAA,wBAAe,EAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,cAAvC,CAAwC;gBACvD,MAAM,GAAG,IAAA,cAAK,EAAC,aAAa,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAE7C,KAA4B,IAAA,0CAAiC,EACjE,IAAA,8BAAU,EAAC,OAAO,EAAE,gCAAY,CAAC,eAAe,CAAC,EACjD,MAAM,CAAC,UAAU,CAAC,EAClB,IAAA,2BAAkB,EAAC;oBACjB,OAAO,EAAE,OAAO;oBAChB,YAAY,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,EAAa;iBACzD,CAAC,EACF,MAAM,CAAC,IAAI,CAAC,EAAE,EACd,MAAM,CAAC,YAAY,EACnB,MAAM,EACN,MAAM,CAAC,CAAC,CAAC,CACV,EAXiB,IAAI,cAAA,EAAE,KAAK,WAAA,CAW3B;gBAEa,qBAAM,IAAA,uCAAkB,EACrC,MAAM,CAAC,MAAM,EACb,IAAI,EACJ,KAAK,EACL,OAAO,EACP,IAAA,uBAAc,EAAC;wBACb,iBAAiB,EAAE,OAAO;wBAC1B,YAAY,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,EAAa;qBACzD,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;AApCW,QAAA,2BAA2B,+BAoCtC","sourcesContent":["import { Address, getSocketConnector, getSocketVault } from '@reyaxyz/common';\nimport { ContractType, getAddress } from '../../utils/contractAddresses';\nimport { executeTransaction } from '../executeTransaction';\nimport { getTokenDetails, scale } from '../token/common';\nimport { encodeBridgeAndDepositPassivePool } from './encode';\nimport {\n BridgeAndDepositPassivePoolParams,\n BridgeAndDepositPassivePoolResult,\n} from './types';\n\nexport const bridgeAndDepositPassivePool = async (\n params: BridgeAndDepositPassivePoolParams,\n): Promise<BridgeAndDepositPassivePoolResult> => {\n const network = await params.signer.provider?.getNetwork();\n const chainId = Number(network?.chainId);\n\n const { tokenDecimals } = getTokenDetails(params.pool.token);\n const amount = scale(tokenDecimals)(params.amount);\n\n const { calldata: data, value } = encodeBridgeAndDepositPassivePool(\n getAddress(chainId, ContractType.PERIPHERY_PROXY),\n BigInt('10000000'),\n getSocketConnector({\n chainId: chainId,\n tokenAddress: params.pool.token.toLowerCase() as Address,\n }),\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 chainId,\n getSocketVault({\n moneyInOutChainId: chainId,\n tokenAddress: params.pool.token.toLowerCase() as Address,\n }),\n );\n\n return {\n transactionHash: result?.hash || null,\n };\n};\n"]}
@@ -37,11 +37,13 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
37
37
  };
38
38
  Object.defineProperty(exports, "__esModule", { value: true });
39
39
  exports.transferFromMAToPool = void 0;
40
+ var common_1 = require("@reyaxyz/common");
40
41
  var contractAddresses_1 = require("../../utils/contractAddresses");
41
42
  var executeTransaction_1 = require("../executeTransaction");
42
43
  var sign_1 = require("../sign");
43
- var common_1 = require("../token/common");
44
+ var common_2 = require("../token/common");
44
45
  var encode_1 = require("./encode");
46
+ var consts_1 = require("../../utils/consts");
45
47
  var transferFromMAToPool = function (params) { return __awaiter(void 0, void 0, void 0, function () {
46
48
  var network, chainId, eip712Signature, tokenDecimals, amount, _a, data, value, result;
47
49
  var _b;
@@ -51,12 +53,12 @@ var transferFromMAToPool = function (params) { return __awaiter(void 0, void 0,
51
53
  case 1:
52
54
  network = _c.sent();
53
55
  chainId = Number(network === null || network === void 0 ? void 0 : network.chainId);
54
- return [4 /*yield*/, (0, sign_1.signCoreCommands)(params.signer, chainId, params.accountId, params.accountSigNonce, params.deadline)];
56
+ return [4 /*yield*/, (0, sign_1.signCoreCommands)(params.signer, chainId, params.accountId, params.owner.coreSigNonce, (0, common_1.getCurrentTimestampInSeconds)() + consts_1.BRIDGE_DEADLINE_IN_SECONDS)];
55
57
  case 2:
56
58
  eip712Signature = _c.sent();
57
- tokenDecimals = (0, common_1.getTokenDetails)(params.poolTokenAddress).tokenDecimals;
58
- amount = (0, common_1.scale)(tokenDecimals)(params.amount);
59
- _a = (0, encode_1.encodeTransferFromMAToPool)(params.accountId, amount, eip712Signature, params.poolId, params.owner, params.minShares), data = _a.calldata, value = _a.value;
59
+ tokenDecimals = (0, common_2.getTokenDetails)(params.pool.token).tokenDecimals;
60
+ amount = (0, common_2.scale)(tokenDecimals)(params.amount);
61
+ _a = (0, encode_1.encodeTransferFromMAToPool)(params.accountId, amount, eip712Signature, params.pool.id, params.owner.address, BigInt(0)), data = _a.calldata, value = _a.value;
60
62
  return [4 /*yield*/, (0, executeTransaction_1.executeTransaction)(params.signer, data, value, chainId, contractAddresses_1.ContractType.PERIPHERY_PROXY)];
61
63
  case 3:
62
64
  result = _c.sent();
@@ -1 +1 @@
1
- {"version":3,"file":"transferFromMAToPool.js","sourceRoot":"/","sources":["services/lp/transferFromMAToPool.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,mEAA6D;AAC7D,4DAA2D;AAC3D,gCAA2C;AAC3C,0CAAyD;AACzD,mCAAsD;AAM/C,IAAM,oBAAoB,GAAG,UAClC,MAAkC;;;;;oBAElB,qBAAM,CAAA,MAAA,MAAM,CAAC,MAAM,CAAC,QAAQ,0CAAE,UAAU,EAAE,CAAA,EAAA;;gBAApD,OAAO,GAAG,SAA0C;gBACpD,OAAO,GAAG,MAAM,CAAC,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,CAAC,CAAC;gBAEjB,qBAAM,IAAA,uBAAgB,EAC5C,MAAM,CAAC,MAAM,EACb,OAAO,EACP,MAAM,CAAC,SAAS,EAChB,MAAM,CAAC,eAAe,EACtB,MAAM,CAAC,QAAQ,CAChB,EAAA;;gBANK,eAAe,GAAG,SAMvB;gBAEO,aAAa,GAAK,IAAA,wBAAe,EAAC,MAAM,CAAC,gBAAgB,CAAC,cAA7C,CAA8C;gBAC7D,MAAM,GAAG,IAAA,cAAK,EAAC,aAAa,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAE7C,KAA4B,IAAA,mCAA0B,EAC1D,MAAM,CAAC,SAAS,EAChB,MAAM,EACN,eAAe,EACf,MAAM,CAAC,MAAM,EACb,MAAM,CAAC,KAAK,EACZ,MAAM,CAAC,SAAS,CACjB,EAPiB,IAAI,cAAA,EAAE,KAAK,WAAA,CAO3B;gBAEa,qBAAM,IAAA,uCAAkB,EACrC,MAAM,CAAC,MAAM,EACb,IAAI,EACJ,KAAK,EACL,OAAO,EACP,gCAAY,CAAC,eAAe,CAC7B,EAAA;;gBANK,MAAM,GAAG,SAMd;gBAED,sBAAO;wBACL,eAAe,EAAE,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,IAAI,KAAI,IAAI;qBACtC,EAAC;;;KACH,CAAC;AArCW,QAAA,oBAAoB,wBAqC/B","sourcesContent":["import { ContractType } from '../../utils/contractAddresses';\nimport { executeTransaction } from '../executeTransaction';\nimport { signCoreCommands } from '../sign';\nimport { getTokenDetails, scale } from '../token/common';\nimport { encodeTransferFromMAToPool } from './encode';\nimport {\n TransferFromMAToPoolParams,\n TransferFromMAToPoolResult,\n} from './types';\n\nexport const transferFromMAToPool = async (\n params: TransferFromMAToPoolParams,\n): Promise<TransferFromMAToPoolResult> => {\n const network = await params.signer.provider?.getNetwork();\n const chainId = Number(network?.chainId);\n\n const eip712Signature = await signCoreCommands(\n params.signer,\n chainId,\n params.accountId,\n params.accountSigNonce,\n params.deadline,\n );\n\n const { tokenDecimals } = getTokenDetails(params.poolTokenAddress);\n const amount = scale(tokenDecimals)(params.amount);\n\n const { calldata: data, value } = encodeTransferFromMAToPool(\n params.accountId,\n amount,\n eip712Signature,\n params.poolId,\n params.owner,\n params.minShares,\n );\n\n const result = await executeTransaction(\n params.signer,\n data,\n value,\n chainId,\n ContractType.PERIPHERY_PROXY,\n );\n\n return {\n transactionHash: result?.hash || null,\n };\n};\n"]}
1
+ {"version":3,"file":"transferFromMAToPool.js","sourceRoot":"/","sources":["services/lp/transferFromMAToPool.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0CAA+D;AAC/D,mEAA6D;AAC7D,4DAA2D;AAC3D,gCAA2C;AAC3C,0CAAyD;AACzD,mCAAsD;AAKtD,6CAAgE;AAEzD,IAAM,oBAAoB,GAAG,UAClC,MAAkC;;;;;oBAElB,qBAAM,CAAA,MAAA,MAAM,CAAC,MAAM,CAAC,QAAQ,0CAAE,UAAU,EAAE,CAAA,EAAA;;gBAApD,OAAO,GAAG,SAA0C;gBACpD,OAAO,GAAG,MAAM,CAAC,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,CAAC,CAAC;gBAEjB,qBAAM,IAAA,uBAAgB,EAC5C,MAAM,CAAC,MAAM,EACb,OAAO,EACP,MAAM,CAAC,SAAS,EAChB,MAAM,CAAC,KAAK,CAAC,YAAY,EACzB,IAAA,qCAA4B,GAAE,GAAG,mCAA0B,CAC5D,EAAA;;gBANK,eAAe,GAAG,SAMvB;gBAEO,aAAa,GAAK,IAAA,wBAAe,EAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,cAAvC,CAAwC;gBACvD,MAAM,GAAG,IAAA,cAAK,EAAC,aAAa,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAE7C,KAA4B,IAAA,mCAA0B,EAC1D,MAAM,CAAC,SAAS,EAChB,MAAM,EACN,eAAe,EACf,MAAM,CAAC,IAAI,CAAC,EAAE,EACd,MAAM,CAAC,KAAK,CAAC,OAAO,EACpB,MAAM,CAAC,CAAC,CAAC,CACV,EAPiB,IAAI,cAAA,EAAE,KAAK,WAAA,CAO3B;gBAEa,qBAAM,IAAA,uCAAkB,EACrC,MAAM,CAAC,MAAM,EACb,IAAI,EACJ,KAAK,EACL,OAAO,EACP,gCAAY,CAAC,eAAe,CAC7B,EAAA;;gBANK,MAAM,GAAG,SAMd;gBAED,sBAAO;wBACL,eAAe,EAAE,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,IAAI,KAAI,IAAI;qBACtC,EAAC;;;KACH,CAAC;AArCW,QAAA,oBAAoB,wBAqC/B","sourcesContent":["import { getCurrentTimestampInSeconds } from '@reyaxyz/common';\nimport { ContractType } from '../../utils/contractAddresses';\nimport { executeTransaction } from '../executeTransaction';\nimport { signCoreCommands } from '../sign';\nimport { getTokenDetails, scale } from '../token/common';\nimport { encodeTransferFromMAToPool } from './encode';\nimport {\n TransferFromMAToPoolParams,\n TransferFromMAToPoolResult,\n} from './types';\nimport { BRIDGE_DEADLINE_IN_SECONDS } from '../../utils/consts';\n\nexport const transferFromMAToPool = async (\n params: TransferFromMAToPoolParams,\n): Promise<TransferFromMAToPoolResult> => {\n const network = await params.signer.provider?.getNetwork();\n const chainId = Number(network?.chainId);\n\n const eip712Signature = await signCoreCommands(\n params.signer,\n chainId,\n params.accountId,\n params.owner.coreSigNonce,\n getCurrentTimestampInSeconds() + BRIDGE_DEADLINE_IN_SECONDS,\n );\n\n const { tokenDecimals } = getTokenDetails(params.pool.token);\n const amount = scale(tokenDecimals)(params.amount);\n\n const { calldata: data, value } = encodeTransferFromMAToPool(\n params.accountId,\n amount,\n eip712Signature,\n params.pool.id,\n params.owner.address,\n BigInt(0),\n );\n\n const result = await executeTransaction(\n params.signer,\n data,\n value,\n chainId,\n ContractType.PERIPHERY_PROXY,\n );\n\n return {\n transactionHash: result?.hash || null,\n };\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"/","sources":["services/lp/types.ts"],"names":[],"mappings":"","sourcesContent":["import { JsonRpcSigner, Signer } from 'ethers';\nimport { LpPoolEntity, TokenEntity } from '@reyaxyz/common';\n\nexport type ProvideLiquidityParams = {\n signer: Signer | JsonRpcSigner;\n amount: number;\n lpPoolId: LpPoolEntity['id'];\n};\n\nexport type RemoveLiquidityParams = {\n signer: Signer | JsonRpcSigner;\n lpPoolId: LpPoolEntity['id'];\n amount: number;\n};\n\nexport type ProvideLiquidityResult = {\n transactionHash: string | null;\n};\n\nexport type RemoveLiquidityResult = {\n transactionHash: string | null;\n};\n\nexport type TransferFromMAToPoolParams = {\n signer: Signer | JsonRpcSigner;\n accountId: number;\n accountSigNonce: number; // todo\n deadline: number; // todo\n poolTokenAddress: TokenEntity['address']; // todo\n amount: number;\n poolId: number;\n owner: string;\n minShares: bigint; // todo\n};\n\nexport type TransferFromMAToPoolResult = {\n transactionHash: string | null;\n};\n\nexport type WithdrawPassivePoolAndBridgeParams = {\n signer: Signer | JsonRpcSigner;\n ownerAddress: string;\n poolId: number;\n poolTokenAddress: TokenEntity['address']; // todo\n sharesAmount: bigint; // todo ?\n minOut: bigint; // todo ?\n ownerSigNonce: number; //todo\n deadline: number; // todo\n};\n\nexport type WithdrawPassivePoolAndBridgeResult = {\n transactionHash: string | null;\n};\n\nexport type BridgeAndDepositPassivePoolParams = {\n signer: Signer | JsonRpcSigner;\n poolId: number;\n poolTokenAddress: TokenEntity['address']; // todo\n minShares: bigint; // todo\n amount: number;\n};\n\nexport type BridgeAndDepositPassivePoolResult = {\n transactionHash: string | null;\n};\n"]}
1
+ {"version":3,"file":"types.js","sourceRoot":"/","sources":["services/lp/types.ts"],"names":[],"mappings":"","sourcesContent":["import { JsonRpcSigner, Signer } from 'ethers';\nimport {\n LpPoolEntity,\n LpWithdrawBalanceEntity,\n MarginAccountEntity,\n OwnerMetadataEntity,\n} from '@reyaxyz/common';\n\nexport type ProvideLiquidityParams = {\n signer: Signer | JsonRpcSigner;\n amount: number;\n lpPoolId: LpPoolEntity['id'];\n};\n\nexport type RemoveLiquidityParams = {\n signer: Signer | JsonRpcSigner;\n lpPoolId: LpPoolEntity['id'];\n amount: number;\n};\n\nexport type ProvideLiquidityResult = {\n transactionHash: string | null;\n};\n\nexport type RemoveLiquidityResult = {\n transactionHash: string | null;\n};\n\nexport type TransferFromMAToPoolParams = {\n signer: Signer | JsonRpcSigner;\n owner: Pick<OwnerMetadataEntity, 'address' | 'coreSigNonce'>;\n accountId: MarginAccountEntity['id'];\n pool: Pick<LpPoolEntity, 'id' | 'token'>;\n amount: number;\n};\n\nexport type TransferFromMAToPoolResult = {\n transactionHash: string | null;\n};\n\nexport type WithdrawPassivePoolAndBridgeParams = {\n signer: Signer | JsonRpcSigner;\n owner: Pick<OwnerMetadataEntity, 'address' | 'poolSigNonce'>;\n pool: Pick<LpPoolEntity, 'id' | 'token'>;\n amount: number;\n sharePrice: LpWithdrawBalanceEntity['poolSharePrice'];\n};\n\nexport type WithdrawPassivePoolAndBridgeResult = {\n transactionHash: string | null;\n};\n\nexport type BridgeAndDepositPassivePoolParams = {\n signer: Signer | JsonRpcSigner;\n ownerAddress: OwnerMetadataEntity['address'];\n pool: Pick<LpPoolEntity, 'id' | 'token'>;\n amount: number;\n};\n\nexport type BridgeAndDepositPassivePoolResult = {\n transactionHash: string | null;\n};\n"]}
@@ -42,8 +42,10 @@ var executeTransaction_1 = require("../executeTransaction");
42
42
  var sign_1 = require("../sign");
43
43
  var encode_1 = require("./encode");
44
44
  var common_1 = require("@reyaxyz/common");
45
+ var consts_1 = require("../../utils/consts");
46
+ var common_2 = require("../token/common");
45
47
  var withdrawPassivePoolAndBridge = function (params) { return __awaiter(void 0, void 0, void 0, function () {
46
- var network, chainId, eip712Signature, _a, data, value, result;
48
+ var network, chainId, sharesAmount, eip712Signature, _a, data, value, result;
47
49
  var _b;
48
50
  return __generator(this, function (_c) {
49
51
  switch (_c.label) {
@@ -51,17 +53,18 @@ var withdrawPassivePoolAndBridge = function (params) { return __awaiter(void 0,
51
53
  case 1:
52
54
  network = _c.sent();
53
55
  chainId = Number(network === null || network === void 0 ? void 0 : network.chainId);
54
- return [4 /*yield*/, (0, sign_1.signPoolRemoveLiquidity)(params.signer, chainId, params.ownerAddress, params.poolId, params.sharesAmount, params.minOut, params.ownerSigNonce, params.deadline)];
56
+ sharesAmount = (0, common_2.scale)(30)(params.amount * params.sharePrice);
57
+ return [4 /*yield*/, (0, sign_1.signPoolRemoveLiquidity)(params.signer, chainId, params.owner.address, params.pool.id, sharesAmount, BigInt(0), params.owner.poolSigNonce, (0, common_1.getCurrentTimestampInSeconds)() + consts_1.BRIDGE_DEADLINE_IN_SECONDS)];
55
58
  case 2:
56
59
  eip712Signature = _c.sent();
57
- _a = (0, encode_1.encodeWithdrawPassivePoolAndBridge)(params.ownerAddress, params.poolId, params.sharesAmount, params.minOut, eip712Signature, BigInt('10000000'), //todo
60
+ _a = (0, encode_1.encodeWithdrawPassivePoolAndBridge)(params.owner.address, params.pool.id, sharesAmount, BigInt(0), eip712Signature, BigInt('10000000'), //todo
58
61
  (0, common_1.getSocketConnector)({
59
62
  chainId: chainId,
60
- tokenAddress: params.poolTokenAddress,
63
+ tokenAddress: params.pool.token.toLowerCase(),
61
64
  }), (0, common_1.getSocketController)({
62
65
  reyaChainId: chainId,
63
- tokenAddress: params.poolTokenAddress,
64
- }), params.ownerAddress), data = _a.calldata, value = _a.value;
66
+ tokenAddress: params.pool.token.toLowerCase(),
67
+ }), params.owner.address), data = _a.calldata, value = _a.value;
65
68
  return [4 /*yield*/, (0, executeTransaction_1.executeTransaction)(params.signer, data, value, chainId, contractAddresses_1.ContractType.PERIPHERY_PROXY)];
66
69
  case 3:
67
70
  result = _c.sent();
@@ -1 +1 @@
1
- {"version":3,"file":"withdrawPassivePoolAndBridge.js","sourceRoot":"/","sources":["services/lp/withdrawPassivePoolAndBridge.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,mEAA6D;AAC7D,4DAA2D;AAC3D,gCAAkD;AAKlD,mCAA8D;AAC9D,0CAA0E;AAEnE,IAAM,4BAA4B,GAAG,UAC1C,MAA0C;;;;;oBAE1B,qBAAM,CAAA,MAAA,MAAM,CAAC,MAAM,CAAC,QAAQ,0CAAE,UAAU,EAAE,CAAA,EAAA;;gBAApD,OAAO,GAAG,SAA0C;gBACpD,OAAO,GAAG,MAAM,CAAC,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,CAAC,CAAC;gBACjB,qBAAM,IAAA,8BAAuB,EACnD,MAAM,CAAC,MAAM,EACb,OAAO,EACP,MAAM,CAAC,YAAY,EACnB,MAAM,CAAC,MAAM,EACb,MAAM,CAAC,YAAY,EACnB,MAAM,CAAC,MAAM,EACb,MAAM,CAAC,aAAa,EACpB,MAAM,CAAC,QAAQ,CAChB,EAAA;;gBATK,eAAe,GAAG,SASvB;gBAEK,KAA4B,IAAA,2CAAkC,EAClE,MAAM,CAAC,YAAY,EACnB,MAAM,CAAC,MAAM,EACb,MAAM,CAAC,YAAY,EACnB,MAAM,CAAC,MAAM,EACb,eAAe,EACf,MAAM,CAAC,UAAU,CAAC,EAAE,MAAM;gBAC1B,IAAA,2BAAkB,EAAC;oBACjB,OAAO,EAAE,OAAO;oBAChB,YAAY,EAAE,MAAM,CAAC,gBAAgB;iBACtC,CAAC,EACF,IAAA,4BAAmB,EAAC;oBAClB,WAAW,EAAE,OAAO;oBACpB,YAAY,EAAE,MAAM,CAAC,gBAAgB;iBACtC,CAAC,EACF,MAAM,CAAC,YAAY,CACpB,EAhBiB,IAAI,cAAA,EAAE,KAAK,WAAA,CAgB3B;gBAEa,qBAAM,IAAA,uCAAkB,EACrC,MAAM,CAAC,MAAM,EACb,IAAI,EACJ,KAAK,EACL,OAAO,EACP,gCAAY,CAAC,eAAe,CAC7B,EAAA;;gBANK,MAAM,GAAG,SAMd;gBAED,sBAAO;wBACL,eAAe,EAAE,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,IAAI,KAAI,IAAI;qBACtC,EAAC;;;KACH,CAAC;AA7CW,QAAA,4BAA4B,gCA6CvC","sourcesContent":["import { ContractType } from '../../utils/contractAddresses';\nimport { executeTransaction } from '../executeTransaction';\nimport { signPoolRemoveLiquidity } from '../sign';\nimport {\n WithdrawPassivePoolAndBridgeParams,\n WithdrawPassivePoolAndBridgeResult,\n} from './types';\nimport { encodeWithdrawPassivePoolAndBridge } from './encode';\nimport { getSocketConnector, getSocketController } from '@reyaxyz/common';\n\nexport const withdrawPassivePoolAndBridge = async (\n params: WithdrawPassivePoolAndBridgeParams,\n): Promise<WithdrawPassivePoolAndBridgeResult> => {\n const network = await params.signer.provider?.getNetwork();\n const chainId = Number(network?.chainId);\n const eip712Signature = await signPoolRemoveLiquidity(\n params.signer,\n chainId,\n params.ownerAddress,\n params.poolId,\n params.sharesAmount,\n params.minOut,\n params.ownerSigNonce,\n params.deadline,\n );\n\n const { calldata: data, value } = encodeWithdrawPassivePoolAndBridge(\n params.ownerAddress,\n params.poolId,\n params.sharesAmount,\n params.minOut,\n eip712Signature,\n BigInt('10000000'), //todo\n getSocketConnector({\n chainId: chainId,\n tokenAddress: params.poolTokenAddress,\n }),\n getSocketController({\n reyaChainId: chainId,\n tokenAddress: params.poolTokenAddress,\n }),\n params.ownerAddress,\n );\n\n const result = await executeTransaction(\n params.signer,\n data,\n value,\n chainId,\n ContractType.PERIPHERY_PROXY,\n );\n\n return {\n transactionHash: result?.hash || null,\n };\n};\n"]}
1
+ {"version":3,"file":"withdrawPassivePoolAndBridge.js","sourceRoot":"/","sources":["services/lp/withdrawPassivePoolAndBridge.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,mEAA6D;AAC7D,4DAA2D;AAC3D,gCAAkD;AAKlD,mCAA8D;AAC9D,0CAKyB;AACzB,6CAAgE;AAChE,0CAAwC;AAEjC,IAAM,4BAA4B,GAAG,UAC1C,MAA0C;;;;;oBAE1B,qBAAM,CAAA,MAAA,MAAM,CAAC,MAAM,CAAC,QAAQ,0CAAE,UAAU,EAAE,CAAA,EAAA;;gBAApD,OAAO,GAAG,SAA0C;gBACpD,OAAO,GAAG,MAAM,CAAC,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,CAAC,CAAC;gBAEnC,YAAY,GAAG,IAAA,cAAK,EAAC,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;gBAE1C,qBAAM,IAAA,8BAAuB,EACnD,MAAM,CAAC,MAAM,EACb,OAAO,EACP,MAAM,CAAC,KAAK,CAAC,OAAO,EACpB,MAAM,CAAC,IAAI,CAAC,EAAE,EACd,YAAY,EACZ,MAAM,CAAC,CAAC,CAAC,EACT,MAAM,CAAC,KAAK,CAAC,YAAY,EACzB,IAAA,qCAA4B,GAAE,GAAG,mCAA0B,CAC5D,EAAA;;gBATK,eAAe,GAAG,SASvB;gBAEK,KAA4B,IAAA,2CAAkC,EAClE,MAAM,CAAC,KAAK,CAAC,OAAO,EACpB,MAAM,CAAC,IAAI,CAAC,EAAE,EACd,YAAY,EACZ,MAAM,CAAC,CAAC,CAAC,EACT,eAAe,EACf,MAAM,CAAC,UAAU,CAAC,EAAE,MAAM;gBAC1B,IAAA,2BAAkB,EAAC;oBACjB,OAAO,EAAE,OAAO;oBAChB,YAAY,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,EAAa;iBACzD,CAAC,EACF,IAAA,4BAAmB,EAAC;oBAClB,WAAW,EAAE,OAAO;oBACpB,YAAY,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,EAAa;iBACzD,CAAC,EACF,MAAM,CAAC,KAAK,CAAC,OAAO,CACrB,EAhBiB,IAAI,cAAA,EAAE,KAAK,WAAA,CAgB3B;gBAEa,qBAAM,IAAA,uCAAkB,EACrC,MAAM,CAAC,MAAM,EACb,IAAI,EACJ,KAAK,EACL,OAAO,EACP,gCAAY,CAAC,eAAe,CAC7B,EAAA;;gBANK,MAAM,GAAG,SAMd;gBAED,sBAAO;wBACL,eAAe,EAAE,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,IAAI,KAAI,IAAI;qBACtC,EAAC;;;KACH,CAAC;AAhDW,QAAA,4BAA4B,gCAgDvC","sourcesContent":["import { ContractType } from '../../utils/contractAddresses';\nimport { executeTransaction } from '../executeTransaction';\nimport { signPoolRemoveLiquidity } from '../sign';\nimport {\n WithdrawPassivePoolAndBridgeParams,\n WithdrawPassivePoolAndBridgeResult,\n} from './types';\nimport { encodeWithdrawPassivePoolAndBridge } from './encode';\nimport {\n Address,\n getCurrentTimestampInSeconds,\n getSocketConnector,\n getSocketController,\n} from '@reyaxyz/common';\nimport { BRIDGE_DEADLINE_IN_SECONDS } from '../../utils/consts';\nimport { scale } from '../token/common';\n\nexport const withdrawPassivePoolAndBridge = async (\n params: WithdrawPassivePoolAndBridgeParams,\n): Promise<WithdrawPassivePoolAndBridgeResult> => {\n const network = await params.signer.provider?.getNetwork();\n const chainId = Number(network?.chainId);\n\n const sharesAmount = scale(30)(params.amount * params.sharePrice);\n\n const eip712Signature = await signPoolRemoveLiquidity(\n params.signer,\n chainId,\n params.owner.address,\n params.pool.id,\n sharesAmount,\n BigInt(0),\n params.owner.poolSigNonce,\n getCurrentTimestampInSeconds() + BRIDGE_DEADLINE_IN_SECONDS,\n );\n\n const { calldata: data, value } = encodeWithdrawPassivePoolAndBridge(\n params.owner.address,\n params.pool.id,\n sharesAmount,\n BigInt(0),\n eip712Signature,\n BigInt('10000000'), //todo\n getSocketConnector({\n chainId: chainId,\n tokenAddress: params.pool.token.toLowerCase() as Address,\n }),\n getSocketController({\n reyaChainId: chainId,\n tokenAddress: params.pool.token.toLowerCase() as Address,\n }),\n params.owner.address,\n );\n\n const result = await executeTransaction(\n params.signer,\n data,\n value,\n chainId,\n ContractType.PERIPHERY_PROXY,\n );\n\n return {\n transactionHash: result?.hash || null,\n };\n};\n"]}
@@ -43,6 +43,7 @@ var executeTransaction_1 = require("../executeTransaction");
43
43
  var common_2 = require("../token/common");
44
44
  var encode_1 = require("./encode");
45
45
  var sign_1 = require("../sign");
46
+ var consts_1 = require("../../utils/consts");
46
47
  var bridgeAndDepositExisingMA = function (params) { return __awaiter(void 0, void 0, void 0, function () {
47
48
  var network, chainId, eip712Signature, tokenDecimals, amount, _a, data, value, result;
48
49
  var _b;
@@ -52,7 +53,7 @@ var bridgeAndDepositExisingMA = function (params) { return __awaiter(void 0, voi
52
53
  case 1:
53
54
  network = _c.sent();
54
55
  chainId = Number(network === null || network === void 0 ? void 0 : network.chainId);
55
- return [4 /*yield*/, (0, sign_1.signCoreCommands)(params.signer, chainId, params.accountId, params.accountSigNonce, params.deadline)];
56
+ return [4 /*yield*/, (0, sign_1.signCoreCommands)(params.signer, chainId, params.accountId, params.owner.coreSigNonce, (0, common_1.getCurrentTimestampInSeconds)() + consts_1.BRIDGE_DEADLINE_IN_SECONDS)];
56
57
  case 2:
57
58
  eip712Signature = _c.sent();
58
59
  tokenDecimals = (0, common_2.getTokenDetails)(params.tokenAddress).tokenDecimals;
@@ -1 +1 @@
1
- {"version":3,"file":"bridgeAndDepositExistingMA.js","sourceRoot":"/","sources":["services/margin-accounts/bridgeAndDepositExistingMA.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0CAAqE;AACrE,mEAAyE;AACzE,4DAA2D;AAC3D,0CAAyD;AACzD,mCAA4D;AAK5D,gCAA2C;AAEpC,IAAM,yBAAyB,GAAG,UACvC,MAAuC;;;;;oBAEvB,qBAAM,CAAA,MAAA,MAAM,CAAC,MAAM,CAAC,QAAQ,0CAAE,UAAU,EAAE,CAAA,EAAA;;gBAApD,OAAO,GAAG,SAA0C;gBACpD,OAAO,GAAG,MAAM,CAAC,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,CAAC,CAAC;gBACjB,qBAAM,IAAA,uBAAgB,EAC5C,MAAM,CAAC,MAAM,EACb,OAAO,EACP,MAAM,CAAC,SAAS,EAChB,MAAM,CAAC,eAAe,EACtB,MAAM,CAAC,QAAQ,CAChB,EAAA;;gBANK,eAAe,GAAG,SAMvB;gBAEO,aAAa,GAAK,IAAA,wBAAe,EAAC,MAAM,CAAC,YAAY,CAAC,cAAzC,CAA0C;gBACzD,MAAM,GAAG,IAAA,cAAK,EAAC,aAAa,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAE7C,KAA4B,IAAA,yCAAgC,EAChE,IAAA,8BAAU,EAAC,OAAO,EAAE,gCAAY,CAAC,eAAe,CAAC,EACjD,MAAM,CAAC,UAAU,CAAC,EAClB,IAAA,2BAAkB,EAAC;oBACjB,OAAO,EAAE,OAAO;oBAChB,YAAY,EAAE,MAAM,CAAC,YAAY;iBAClC,CAAC,EACF,MAAM,CAAC,SAAS,EAChB,MAAM,CAAC,YAAY,EACnB,MAAM,EACN,eAAe,CAChB,EAXiB,IAAI,cAAA,EAAE,KAAK,WAAA,CAW3B;gBAEa,qBAAM,IAAA,uCAAkB,EACrC,MAAM,CAAC,MAAM,EACb,IAAI,EACJ,KAAK,EACL,OAAO,EACP,IAAA,uBAAc,EAAC;wBACb,iBAAiB,EAAE,OAAO;wBAC1B,YAAY,EAAE,MAAM,CAAC,YAAY;qBAClC,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;AA3CW,QAAA,yBAAyB,6BA2CpC","sourcesContent":["import { getSocketConnector, getSocketVault } from '@reyaxyz/common';\nimport { ContractType, getAddress } from '../../utils/contractAddresses';\nimport { executeTransaction } from '../executeTransaction';\nimport { getTokenDetails, scale } from '../token/common';\nimport { encodeBridgeAndDepositExistingMA } from './encode';\nimport {\n BridgeAndDepositExisingMAParams,\n BridgeAndDepositExisingMAResult,\n} from './types';\nimport { signCoreCommands } from '../sign';\n\nexport const bridgeAndDepositExisingMA = async (\n params: BridgeAndDepositExisingMAParams,\n): Promise<BridgeAndDepositExisingMAResult> => {\n const network = await params.signer.provider?.getNetwork();\n const chainId = Number(network?.chainId);\n const eip712Signature = await signCoreCommands(\n params.signer,\n chainId,\n params.accountId,\n params.accountSigNonce,\n params.deadline,\n );\n\n const { tokenDecimals } = getTokenDetails(params.tokenAddress);\n const amount = scale(tokenDecimals)(params.amount);\n\n const { calldata: data, value } = encodeBridgeAndDepositExistingMA(\n getAddress(chainId, ContractType.PERIPHERY_PROXY),\n BigInt('10000000'),\n getSocketConnector({\n chainId: chainId,\n tokenAddress: params.tokenAddress,\n }),\n params.accountId,\n params.tokenAddress,\n amount,\n eip712Signature,\n );\n\n const result = await executeTransaction(\n params.signer,\n data,\n value,\n chainId,\n getSocketVault({\n moneyInOutChainId: chainId,\n tokenAddress: params.tokenAddress,\n }),\n );\n\n return {\n transactionHash: result?.hash || null,\n };\n};\n"]}
1
+ {"version":3,"file":"bridgeAndDepositExistingMA.js","sourceRoot":"/","sources":["services/margin-accounts/bridgeAndDepositExistingMA.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0CAIyB;AACzB,mEAAyE;AACzE,4DAA2D;AAC3D,0CAAyD;AACzD,mCAA4D;AAK5D,gCAA2C;AAC3C,6CAAgE;AAEzD,IAAM,yBAAyB,GAAG,UACvC,MAAuC;;;;;oBAEvB,qBAAM,CAAA,MAAA,MAAM,CAAC,MAAM,CAAC,QAAQ,0CAAE,UAAU,EAAE,CAAA,EAAA;;gBAApD,OAAO,GAAG,SAA0C;gBACpD,OAAO,GAAG,MAAM,CAAC,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,CAAC,CAAC;gBACjB,qBAAM,IAAA,uBAAgB,EAC5C,MAAM,CAAC,MAAM,EACb,OAAO,EACP,MAAM,CAAC,SAAS,EAChB,MAAM,CAAC,KAAK,CAAC,YAAY,EACzB,IAAA,qCAA4B,GAAE,GAAG,mCAA0B,CAC5D,EAAA;;gBANK,eAAe,GAAG,SAMvB;gBAEO,aAAa,GAAK,IAAA,wBAAe,EAAC,MAAM,CAAC,YAAY,CAAC,cAAzC,CAA0C;gBACzD,MAAM,GAAG,IAAA,cAAK,EAAC,aAAa,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAE7C,KAA4B,IAAA,yCAAgC,EAChE,IAAA,8BAAU,EAAC,OAAO,EAAE,gCAAY,CAAC,eAAe,CAAC,EACjD,MAAM,CAAC,UAAU,CAAC,EAClB,IAAA,2BAAkB,EAAC;oBACjB,OAAO,EAAE,OAAO;oBAChB,YAAY,EAAE,MAAM,CAAC,YAAY;iBAClC,CAAC,EACF,MAAM,CAAC,SAAS,EAChB,MAAM,CAAC,YAAY,EACnB,MAAM,EACN,eAAe,CAChB,EAXiB,IAAI,cAAA,EAAE,KAAK,WAAA,CAW3B;gBAEa,qBAAM,IAAA,uCAAkB,EACrC,MAAM,CAAC,MAAM,EACb,IAAI,EACJ,KAAK,EACL,OAAO,EACP,IAAA,uBAAc,EAAC;wBACb,iBAAiB,EAAE,OAAO;wBAC1B,YAAY,EAAE,MAAM,CAAC,YAAY;qBAClC,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;AA3CW,QAAA,yBAAyB,6BA2CpC","sourcesContent":["import {\n getCurrentTimestampInSeconds,\n getSocketConnector,\n getSocketVault,\n} from '@reyaxyz/common';\nimport { ContractType, getAddress } from '../../utils/contractAddresses';\nimport { executeTransaction } from '../executeTransaction';\nimport { getTokenDetails, scale } from '../token/common';\nimport { encodeBridgeAndDepositExistingMA } from './encode';\nimport {\n BridgeAndDepositExisingMAParams,\n BridgeAndDepositExisingMAResult,\n} from './types';\nimport { signCoreCommands } from '../sign';\nimport { BRIDGE_DEADLINE_IN_SECONDS } from '../../utils/consts';\n\nexport const bridgeAndDepositExisingMA = async (\n params: BridgeAndDepositExisingMAParams,\n): Promise<BridgeAndDepositExisingMAResult> => {\n const network = await params.signer.provider?.getNetwork();\n const chainId = Number(network?.chainId);\n const eip712Signature = await signCoreCommands(\n params.signer,\n chainId,\n params.accountId,\n params.owner.coreSigNonce,\n getCurrentTimestampInSeconds() + BRIDGE_DEADLINE_IN_SECONDS,\n );\n\n const { tokenDecimals } = getTokenDetails(params.tokenAddress);\n const amount = scale(tokenDecimals)(params.amount);\n\n const { calldata: data, value } = encodeBridgeAndDepositExistingMA(\n getAddress(chainId, ContractType.PERIPHERY_PROXY),\n BigInt('10000000'),\n getSocketConnector({\n chainId: chainId,\n tokenAddress: params.tokenAddress,\n }),\n params.accountId,\n params.tokenAddress,\n amount,\n eip712Signature,\n );\n\n const result = await executeTransaction(\n params.signer,\n data,\n value,\n chainId,\n getSocketVault({\n moneyInOutChainId: chainId,\n tokenAddress: params.tokenAddress,\n }),\n );\n\n return {\n transactionHash: result?.hash || null,\n };\n};\n"]}
@@ -43,33 +43,26 @@ var executeTransaction_1 = require("../executeTransaction");
43
43
  var common_2 = require("../token/common");
44
44
  var encode_1 = require("./encode");
45
45
  var bridgeAndDepositNewMA = function (params) { return __awaiter(void 0, void 0, void 0, function () {
46
- var network, chainId, tokenDecimals, amount, _a, data, value, _b, _c, result;
47
- var _d;
48
- return __generator(this, function (_e) {
49
- switch (_e.label) {
50
- case 0: return [4 /*yield*/, ((_d = params.signer.provider) === null || _d === void 0 ? void 0 : _d.getNetwork())];
46
+ var network, chainId, tokenDecimals, amount, _a, data, value, result;
47
+ var _b;
48
+ return __generator(this, function (_c) {
49
+ switch (_c.label) {
50
+ case 0: return [4 /*yield*/, ((_b = params.signer.provider) === null || _b === void 0 ? void 0 : _b.getNetwork())];
51
51
  case 1:
52
- network = _e.sent();
52
+ network = _c.sent();
53
53
  chainId = Number(network === null || network === void 0 ? void 0 : network.chainId);
54
54
  tokenDecimals = (0, common_2.getTokenDetails)(params.tokenAddress).tokenDecimals;
55
55
  amount = (0, common_2.scale)(tokenDecimals)(params.amount);
56
- _b = encode_1.encodeBridgeAndDepositNewMA;
57
- _c = [(0, contractAddresses_1.getAddress)(chainId, contractAddresses_1.ContractType.PERIPHERY_PROXY),
58
- BigInt('10000000'),
59
- (0, common_1.getSocketConnector)({
60
- chainId: chainId,
61
- tokenAddress: params.tokenAddress,
62
- })];
63
- return [4 /*yield*/, params.signer.getAddress()];
64
- case 2:
65
- _a = _b.apply(void 0, _c.concat([_e.sent(), params.tokenAddress,
66
- amount])), data = _a.calldata, value = _a.value;
56
+ _a = (0, encode_1.encodeBridgeAndDepositNewMA)((0, contractAddresses_1.getAddress)(chainId, contractAddresses_1.ContractType.PERIPHERY_PROXY), BigInt('10000000'), (0, common_1.getSocketConnector)({
57
+ chainId: chainId,
58
+ tokenAddress: params.tokenAddress,
59
+ }), params.ownerAddress, params.tokenAddress, amount), data = _a.calldata, value = _a.value;
67
60
  return [4 /*yield*/, (0, executeTransaction_1.executeTransaction)(params.signer, data, value, chainId, (0, common_1.getSocketVault)({
68
61
  moneyInOutChainId: chainId,
69
62
  tokenAddress: params.tokenAddress,
70
63
  }))];
71
- case 3:
72
- result = _e.sent();
64
+ case 2:
65
+ result = _c.sent();
73
66
  return [2 /*return*/, {
74
67
  transactionHash: (result === null || result === void 0 ? void 0 : result.hash) || null,
75
68
  }];
@@ -1 +1 @@
1
- {"version":3,"file":"bridgeAndDepositNewMA.js","sourceRoot":"/","sources":["services/margin-accounts/bridgeAndDepositNewMA.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0CAAqE;AACrE,mEAAyE;AACzE,4DAA2D;AAC3D,0CAAyD;AACzD,mCAAuD;AAMhD,IAAM,qBAAqB,GAAG,UACnC,MAAmC;;;;;oBAEnB,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;gBAEjC,aAAa,GAAK,IAAA,wBAAe,EAAC,MAAM,CAAC,YAAY,CAAC,cAAzC,CAA0C;gBACzD,MAAM,GAAG,IAAA,cAAK,EAAC,aAAa,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAEjB,KAAA,oCAA2B,CAAA;sBAC3D,IAAA,8BAAU,EAAC,OAAO,EAAE,gCAAY,CAAC,eAAe,CAAC;oBACjD,MAAM,CAAC,UAAU,CAAC;oBAClB,IAAA,2BAAkB,EAAC;wBACjB,OAAO,EAAE,OAAO;wBAChB,YAAY,EAAE,MAAM,CAAC,YAAY;qBAClC,CAAC;gBACF,qBAAM,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,EAAA;;gBAP5B,KAA4B,4BAOhC,SAAgC,EAChC,MAAM,CAAC,YAAY;oBACnB,MAAM,GACP,EAViB,IAAI,cAAA,EAAE,KAAK,WAAA;gBAYd,qBAAM,IAAA,uCAAkB,EACrC,MAAM,CAAC,MAAM,EACb,IAAI,EACJ,KAAK,EACL,OAAO,EACP,IAAA,uBAAc,EAAC;wBACb,iBAAiB,EAAE,OAAO;wBAC1B,YAAY,EAAE,MAAM,CAAC,YAAY;qBAClC,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;AAnCW,QAAA,qBAAqB,yBAmChC","sourcesContent":["import { getSocketConnector, getSocketVault } from '@reyaxyz/common';\nimport { ContractType, getAddress } from '../../utils/contractAddresses';\nimport { executeTransaction } from '../executeTransaction';\nimport { getTokenDetails, scale } from '../token/common';\nimport { encodeBridgeAndDepositNewMA } from './encode';\nimport {\n BridgeAndDepositNewMAParams,\n BridgeAndDepositNewMAResult,\n} from './types';\n\nexport const bridgeAndDepositNewMA = async (\n params: BridgeAndDepositNewMAParams,\n): Promise<BridgeAndDepositNewMAResult> => {\n const network = await params.signer.provider?.getNetwork();\n const chainId = Number(network?.chainId);\n\n const { tokenDecimals } = getTokenDetails(params.tokenAddress);\n const amount = scale(tokenDecimals)(params.amount);\n\n const { calldata: data, value } = encodeBridgeAndDepositNewMA(\n getAddress(chainId, ContractType.PERIPHERY_PROXY),\n BigInt('10000000'),\n getSocketConnector({\n chainId: chainId,\n tokenAddress: params.tokenAddress,\n }),\n await params.signer.getAddress(),\n params.tokenAddress,\n amount,\n );\n\n const result = await executeTransaction(\n params.signer,\n data,\n value,\n chainId,\n getSocketVault({\n moneyInOutChainId: chainId,\n tokenAddress: params.tokenAddress,\n }),\n );\n\n return {\n transactionHash: result?.hash || null,\n };\n};\n"]}
1
+ {"version":3,"file":"bridgeAndDepositNewMA.js","sourceRoot":"/","sources":["services/margin-accounts/bridgeAndDepositNewMA.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0CAAqE;AACrE,mEAAyE;AACzE,4DAA2D;AAC3D,0CAAyD;AACzD,mCAAuD;AAMhD,IAAM,qBAAqB,GAAG,UACnC,MAAmC;;;;;oBAEnB,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;gBAEjC,aAAa,GAAK,IAAA,wBAAe,EAAC,MAAM,CAAC,YAAY,CAAC,cAAzC,CAA0C;gBACzD,MAAM,GAAG,IAAA,cAAK,EAAC,aAAa,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAE7C,KAA4B,IAAA,oCAA2B,EAC3D,IAAA,8BAAU,EAAC,OAAO,EAAE,gCAAY,CAAC,eAAe,CAAC,EACjD,MAAM,CAAC,UAAU,CAAC,EAClB,IAAA,2BAAkB,EAAC;oBACjB,OAAO,EAAE,OAAO;oBAChB,YAAY,EAAE,MAAM,CAAC,YAAY;iBAClC,CAAC,EACF,MAAM,CAAC,YAAY,EACnB,MAAM,CAAC,YAAY,EACnB,MAAM,CACP,EAViB,IAAI,cAAA,EAAE,KAAK,WAAA,CAU3B;gBAEa,qBAAM,IAAA,uCAAkB,EACrC,MAAM,CAAC,MAAM,EACb,IAAI,EACJ,KAAK,EACL,OAAO,EACP,IAAA,uBAAc,EAAC;wBACb,iBAAiB,EAAE,OAAO;wBAC1B,YAAY,EAAE,MAAM,CAAC,YAAY;qBAClC,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;AAnCW,QAAA,qBAAqB,yBAmChC","sourcesContent":["import { getSocketConnector, getSocketVault } from '@reyaxyz/common';\nimport { ContractType, getAddress } from '../../utils/contractAddresses';\nimport { executeTransaction } from '../executeTransaction';\nimport { getTokenDetails, scale } from '../token/common';\nimport { encodeBridgeAndDepositNewMA } from './encode';\nimport {\n BridgeAndDepositNewMAParams,\n BridgeAndDepositNewMAResult,\n} from './types';\n\nexport const bridgeAndDepositNewMA = async (\n params: BridgeAndDepositNewMAParams,\n): Promise<BridgeAndDepositNewMAResult> => {\n const network = await params.signer.provider?.getNetwork();\n const chainId = Number(network?.chainId);\n\n const { tokenDecimals } = getTokenDetails(params.tokenAddress);\n const amount = scale(tokenDecimals)(params.amount);\n\n const { calldata: data, value } = encodeBridgeAndDepositNewMA(\n getAddress(chainId, ContractType.PERIPHERY_PROXY),\n BigInt('10000000'),\n getSocketConnector({\n chainId: chainId,\n tokenAddress: params.tokenAddress,\n }),\n params.ownerAddress,\n params.tokenAddress,\n amount,\n );\n\n const result = await executeTransaction(\n params.signer,\n data,\n value,\n chainId,\n getSocketVault({\n moneyInOutChainId: chainId,\n tokenAddress: params.tokenAddress,\n }),\n );\n\n return {\n transactionHash: result?.hash || null,\n };\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"/","sources":["services/margin-accounts/types.ts"],"names":[],"mappings":"","sourcesContent":["import { JsonRpcSigner, Signer } from 'ethers';\nimport { MarginAccountEntity, TokenEntity } from '@reyaxyz/common';\n\nexport type CreateAccountParams = {\n signer: Signer | JsonRpcSigner;\n ownerAddress: string;\n};\n\nexport type CreateAccountResult = {\n transactionHash: string | null;\n};\n\nexport type DepositParams = {\n signer: Signer | JsonRpcSigner;\n marginAccountId: MarginAccountEntity['id'];\n tokenAddress: TokenEntity['address'];\n amount: number;\n};\n\nexport type DepositResult = {\n transactionHash: string | null;\n};\n\nexport type WithdrawParams = {\n signer: Signer | JsonRpcSigner;\n marginAccountId: MarginAccountEntity['id'];\n tokenAddress: TokenEntity['address'];\n amount: number;\n};\n\nexport type WithdrawResult = {\n transactionHash: string | null;\n};\n\nexport type SimulateDepositResult = {\n bridgeGasFees: number;\n marginRatioHealth: MarginAccountEntity['marginRatioHealth'];\n marginRatio: MarginAccountEntity['marginRatioPercentage'];\n};\n\n// TODO: Milan reevaluate these params\nexport type SimulateDepositParams = {\n signer: Signer | JsonRpcSigner;\n marginAccountId: MarginAccountEntity['id'];\n tokenAddress: TokenEntity['address'];\n amount: number;\n};\n\nexport type SimulateWithdrawResult = {\n bridgeGasFees: number;\n\n marginRatioHealth: MarginAccountEntity['marginRatioHealth'];\n marginRatio: MarginAccountEntity['marginRatioPercentage'];\n};\n\n// TODO: Milan reevaluate these params\nexport type SimulateWithdrawParams = {\n signer: Signer | JsonRpcSigner;\n marginAccountId: MarginAccountEntity['id'];\n tokenAddress: TokenEntity['address'];\n amount: number;\n};\n\nexport type TransferMarginBetweenAccountsParams = {\n signer: Signer | JsonRpcSigner;\n fromMarginAccountId: MarginAccountEntity['id'];\n toMarginAccountId: MarginAccountEntity['id'];\n tokenAddress: TokenEntity['address'];\n amount: number;\n};\n\nexport type TransferMarginBetweenAccountsResult = {\n transactionHash: string | null;\n};\n\nexport type WithdrawMAAndBridgeParams = {\n signer: Signer | JsonRpcSigner;\n accountId: MarginAccountEntity['id'];\n accountSigNonce: number; // todo\n deadline: number; // todo\n tokenAddress: TokenEntity['address'];\n amount: number;\n poolTokenAddress: TokenEntity['address']; // todo\n receiverAddress: string; // todo\n};\n\nexport type WithdrawMAAndBridgeParamsResult = {\n transactionHash: string | null;\n};\n\nexport type BridgeAndDepositNewMAParams = {\n signer: Signer | JsonRpcSigner;\n tokenAddress: TokenEntity['address'];\n amount: number;\n};\n\nexport type BridgeAndDepositNewMAResult = {\n transactionHash: string | null;\n};\n\nexport type BridgeAndDepositExisingMAParams = {\n signer: Signer | JsonRpcSigner;\n accountId: MarginAccountEntity['id'];\n accountSigNonce: number; // todo\n deadline: number; // todo\n tokenAddress: TokenEntity['address'];\n amount: number;\n};\n\nexport type BridgeAndDepositExisingMAResult = {\n transactionHash: string | null;\n};\n"]}
1
+ {"version":3,"file":"types.js","sourceRoot":"/","sources":["services/margin-accounts/types.ts"],"names":[],"mappings":"","sourcesContent":["import { JsonRpcSigner, Signer } from 'ethers';\nimport {\n MarginAccountEntity,\n OwnerMetadataEntity,\n TokenEntity,\n} from '@reyaxyz/common';\n\nexport type CreateAccountParams = {\n signer: Signer | JsonRpcSigner;\n ownerAddress: string;\n};\n\nexport type CreateAccountResult = {\n transactionHash: string | null;\n};\n\nexport type DepositParams = {\n signer: Signer | JsonRpcSigner;\n marginAccountId: MarginAccountEntity['id'];\n tokenAddress: TokenEntity['address'];\n amount: number;\n};\n\nexport type DepositResult = {\n transactionHash: string | null;\n};\n\nexport type WithdrawParams = {\n signer: Signer | JsonRpcSigner;\n marginAccountId: MarginAccountEntity['id'];\n tokenAddress: TokenEntity['address'];\n amount: number;\n};\n\nexport type WithdrawResult = {\n transactionHash: string | null;\n};\n\nexport type SimulateDepositResult = {\n bridgeGasFees: number;\n marginRatioHealth: MarginAccountEntity['marginRatioHealth'];\n marginRatio: MarginAccountEntity['marginRatioPercentage'];\n};\n\n// TODO: Milan reevaluate these params\nexport type SimulateDepositParams = {\n signer: Signer | JsonRpcSigner;\n marginAccountId: MarginAccountEntity['id'];\n tokenAddress: TokenEntity['address'];\n amount: number;\n};\n\nexport type SimulateWithdrawResult = {\n bridgeGasFees: number;\n\n marginRatioHealth: MarginAccountEntity['marginRatioHealth'];\n marginRatio: MarginAccountEntity['marginRatioPercentage'];\n};\n\n// TODO: Milan reevaluate these params\nexport type SimulateWithdrawParams = {\n signer: Signer | JsonRpcSigner;\n marginAccountId: MarginAccountEntity['id'];\n tokenAddress: TokenEntity['address'];\n amount: number;\n};\n\nexport type TransferMarginBetweenAccountsParams = {\n signer: Signer | JsonRpcSigner;\n fromMarginAccountId: MarginAccountEntity['id'];\n toMarginAccountId: MarginAccountEntity['id'];\n tokenAddress: TokenEntity['address'];\n amount: number;\n};\n\nexport type TransferMarginBetweenAccountsResult = {\n transactionHash: string | null;\n};\n\nexport type WithdrawMAAndBridgeParams = {\n signer: Signer | JsonRpcSigner;\n owner: Pick<OwnerMetadataEntity, 'address' | 'coreSigNonce'>;\n accountId: MarginAccountEntity['id'];\n tokenAddress: TokenEntity['address'];\n amount: number;\n receiverAddress: string;\n};\n\nexport type WithdrawMAAndBridgeParamsResult = {\n transactionHash: string | null;\n};\n\nexport type BridgeAndDepositNewMAParams = {\n signer: Signer | JsonRpcSigner;\n ownerAddress: OwnerMetadataEntity['address'];\n tokenAddress: TokenEntity['address'];\n amount: number;\n};\n\nexport type BridgeAndDepositNewMAResult = {\n transactionHash: string | null;\n};\n\nexport type BridgeAndDepositExisingMAParams = {\n signer: Signer | JsonRpcSigner;\n owner: Pick<OwnerMetadataEntity, 'address' | 'coreSigNonce'>;\n accountId: MarginAccountEntity['id'];\n tokenAddress: TokenEntity['address'];\n amount: number;\n};\n\nexport type BridgeAndDepositExisingMAResult = {\n transactionHash: string | null;\n};\n"]}
@@ -43,6 +43,7 @@ var executeTransaction_1 = require("../executeTransaction");
43
43
  var sign_1 = require("../sign");
44
44
  var common_2 = require("../token/common");
45
45
  var encode_1 = require("./encode");
46
+ var consts_1 = require("../../utils/consts");
46
47
  var withdrawMAAndBridge = function (params) { return __awaiter(void 0, void 0, void 0, function () {
47
48
  var network, chainId, eip712Signature, tokenDecimals, amount, _a, data, value, result;
48
49
  var _b;
@@ -52,17 +53,17 @@ var withdrawMAAndBridge = function (params) { return __awaiter(void 0, void 0, v
52
53
  case 1:
53
54
  network = _c.sent();
54
55
  chainId = Number(network === null || network === void 0 ? void 0 : network.chainId);
55
- return [4 /*yield*/, (0, sign_1.signCoreCommands)(params.signer, chainId, params.accountId, params.accountSigNonce, params.deadline)];
56
+ return [4 /*yield*/, (0, sign_1.signCoreCommands)(params.signer, chainId, params.accountId, params.owner.coreSigNonce, (0, common_1.getCurrentTimestampInSeconds)() + consts_1.BRIDGE_DEADLINE_IN_SECONDS)];
56
57
  case 2:
57
58
  eip712Signature = _c.sent();
58
59
  tokenDecimals = (0, common_2.getTokenDetails)(params.tokenAddress).tokenDecimals;
59
60
  amount = (0, common_2.scale)(tokenDecimals)(params.amount);
60
61
  _a = (0, encode_1.encodeWithdrawMAAndBridge)(params.accountId, params.tokenAddress, amount, eip712Signature, BigInt('10000000'), (0, common_1.getSocketConnector)({
61
62
  chainId: chainId,
62
- tokenAddress: params.poolTokenAddress,
63
+ tokenAddress: params.tokenAddress,
63
64
  }), (0, common_1.getSocketController)({
64
65
  reyaChainId: chainId,
65
- tokenAddress: params.poolTokenAddress,
66
+ tokenAddress: params.tokenAddress,
66
67
  }), params.receiverAddress), data = _a.calldata, value = _a.value;
67
68
  return [4 /*yield*/, (0, executeTransaction_1.executeTransaction)(params.signer, data, value, chainId, contractAddresses_1.ContractType.CORE_PROXY)];
68
69
  case 3:
@@ -1 +1 @@
1
- {"version":3,"file":"withdrawMAAndBridge.js","sourceRoot":"/","sources":["services/margin-accounts/withdrawMAAndBridge.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0CAA0E;AAC1E,mEAA6D;AAC7D,4DAA2D;AAC3D,gCAA2C;AAC3C,0CAAyD;AACzD,mCAAqD;AAM9C,IAAM,mBAAmB,GAAG,UACjC,MAAiC;;;;;oBAEjB,qBAAM,CAAA,MAAA,MAAM,CAAC,MAAM,CAAC,QAAQ,0CAAE,UAAU,EAAE,CAAA,EAAA;;gBAApD,OAAO,GAAG,SAA0C;gBACpD,OAAO,GAAG,MAAM,CAAC,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,CAAC,CAAC;gBACjB,qBAAM,IAAA,uBAAgB,EAC5C,MAAM,CAAC,MAAM,EACb,OAAO,EACP,MAAM,CAAC,SAAS,EAChB,MAAM,CAAC,eAAe,EACtB,MAAM,CAAC,QAAQ,CAChB,EAAA;;gBANK,eAAe,GAAG,SAMvB;gBAEO,aAAa,GAAK,IAAA,wBAAe,EAAC,MAAM,CAAC,YAAY,CAAC,cAAzC,CAA0C;gBACzD,MAAM,GAAG,IAAA,cAAK,EAAC,aAAa,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAE7C,KAA4B,IAAA,kCAAyB,EACzD,MAAM,CAAC,SAAS,EAChB,MAAM,CAAC,YAAY,EACnB,MAAM,EACN,eAAe,EACf,MAAM,CAAC,UAAU,CAAC,EAClB,IAAA,2BAAkB,EAAC;oBACjB,OAAO,EAAE,OAAO;oBAChB,YAAY,EAAE,MAAM,CAAC,gBAAgB;iBACtC,CAAC,EACF,IAAA,4BAAmB,EAAC;oBAClB,WAAW,EAAE,OAAO;oBACpB,YAAY,EAAE,MAAM,CAAC,gBAAgB;iBACtC,CAAC,EACF,MAAM,CAAC,eAAe,CACvB,EAfiB,IAAI,cAAA,EAAE,KAAK,WAAA,CAe3B;gBAEa,qBAAM,IAAA,uCAAkB,EACrC,MAAM,CAAC,MAAM,EACb,IAAI,EACJ,KAAK,EACL,OAAO,EACP,gCAAY,CAAC,UAAU,CACxB,EAAA;;gBANK,MAAM,GAAG,SAMd;gBAED,sBAAO;wBACL,eAAe,EAAE,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,IAAI,KAAI,IAAI;qBACtC,EAAC;;;KACH,CAAC;AA5CW,QAAA,mBAAmB,uBA4C9B","sourcesContent":["import { getSocketConnector, getSocketController } from '@reyaxyz/common';\nimport { ContractType } from '../../utils/contractAddresses';\nimport { executeTransaction } from '../executeTransaction';\nimport { signCoreCommands } from '../sign';\nimport { getTokenDetails, scale } from '../token/common';\nimport { encodeWithdrawMAAndBridge } from './encode';\nimport {\n WithdrawMAAndBridgeParams,\n WithdrawMAAndBridgeParamsResult,\n} from './types';\n\nexport const withdrawMAAndBridge = async (\n params: WithdrawMAAndBridgeParams,\n): Promise<WithdrawMAAndBridgeParamsResult> => {\n const network = await params.signer.provider?.getNetwork();\n const chainId = Number(network?.chainId);\n const eip712Signature = await signCoreCommands(\n params.signer,\n chainId,\n params.accountId,\n params.accountSigNonce,\n params.deadline,\n );\n\n const { tokenDecimals } = getTokenDetails(params.tokenAddress);\n const amount = scale(tokenDecimals)(params.amount);\n\n const { calldata: data, value } = encodeWithdrawMAAndBridge(\n params.accountId,\n params.tokenAddress,\n amount,\n eip712Signature,\n BigInt('10000000'),\n getSocketConnector({\n chainId: chainId,\n tokenAddress: params.poolTokenAddress,\n }),\n getSocketController({\n reyaChainId: chainId,\n tokenAddress: params.poolTokenAddress,\n }),\n params.receiverAddress,\n );\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"]}
1
+ {"version":3,"file":"withdrawMAAndBridge.js","sourceRoot":"/","sources":["services/margin-accounts/withdrawMAAndBridge.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0CAIyB;AACzB,mEAA6D;AAC7D,4DAA2D;AAC3D,gCAA2C;AAC3C,0CAAyD;AACzD,mCAAqD;AAKrD,6CAAgE;AAEzD,IAAM,mBAAmB,GAAG,UACjC,MAAiC;;;;;oBAEjB,qBAAM,CAAA,MAAA,MAAM,CAAC,MAAM,CAAC,QAAQ,0CAAE,UAAU,EAAE,CAAA,EAAA;;gBAApD,OAAO,GAAG,SAA0C;gBACpD,OAAO,GAAG,MAAM,CAAC,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,CAAC,CAAC;gBACjB,qBAAM,IAAA,uBAAgB,EAC5C,MAAM,CAAC,MAAM,EACb,OAAO,EACP,MAAM,CAAC,SAAS,EAChB,MAAM,CAAC,KAAK,CAAC,YAAY,EACzB,IAAA,qCAA4B,GAAE,GAAG,mCAA0B,CAC5D,EAAA;;gBANK,eAAe,GAAG,SAMvB;gBAEO,aAAa,GAAK,IAAA,wBAAe,EAAC,MAAM,CAAC,YAAY,CAAC,cAAzC,CAA0C;gBACzD,MAAM,GAAG,IAAA,cAAK,EAAC,aAAa,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAE7C,KAA4B,IAAA,kCAAyB,EACzD,MAAM,CAAC,SAAS,EAChB,MAAM,CAAC,YAAY,EACnB,MAAM,EACN,eAAe,EACf,MAAM,CAAC,UAAU,CAAC,EAClB,IAAA,2BAAkB,EAAC;oBACjB,OAAO,EAAE,OAAO;oBAChB,YAAY,EAAE,MAAM,CAAC,YAAY;iBAClC,CAAC,EACF,IAAA,4BAAmB,EAAC;oBAClB,WAAW,EAAE,OAAO;oBACpB,YAAY,EAAE,MAAM,CAAC,YAAY;iBAClC,CAAC,EACF,MAAM,CAAC,eAAe,CACvB,EAfiB,IAAI,cAAA,EAAE,KAAK,WAAA,CAe3B;gBAEa,qBAAM,IAAA,uCAAkB,EACrC,MAAM,CAAC,MAAM,EACb,IAAI,EACJ,KAAK,EACL,OAAO,EACP,gCAAY,CAAC,UAAU,CACxB,EAAA;;gBANK,MAAM,GAAG,SAMd;gBAED,sBAAO;wBACL,eAAe,EAAE,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,IAAI,KAAI,IAAI;qBACtC,EAAC;;;KACH,CAAC;AA5CW,QAAA,mBAAmB,uBA4C9B","sourcesContent":["import {\n getCurrentTimestampInSeconds,\n getSocketConnector,\n getSocketController,\n} from '@reyaxyz/common';\nimport { ContractType } from '../../utils/contractAddresses';\nimport { executeTransaction } from '../executeTransaction';\nimport { signCoreCommands } from '../sign';\nimport { getTokenDetails, scale } from '../token/common';\nimport { encodeWithdrawMAAndBridge } from './encode';\nimport {\n WithdrawMAAndBridgeParams,\n WithdrawMAAndBridgeParamsResult,\n} from './types';\nimport { BRIDGE_DEADLINE_IN_SECONDS } from '../../utils/consts';\n\nexport const withdrawMAAndBridge = async (\n params: WithdrawMAAndBridgeParams,\n): Promise<WithdrawMAAndBridgeParamsResult> => {\n const network = await params.signer.provider?.getNetwork();\n const chainId = Number(network?.chainId);\n const eip712Signature = await signCoreCommands(\n params.signer,\n chainId,\n params.accountId,\n params.owner.coreSigNonce,\n getCurrentTimestampInSeconds() + BRIDGE_DEADLINE_IN_SECONDS,\n );\n\n const { tokenDecimals } = getTokenDetails(params.tokenAddress);\n const amount = scale(tokenDecimals)(params.amount);\n\n const { calldata: data, value } = encodeWithdrawMAAndBridge(\n params.accountId,\n params.tokenAddress,\n amount,\n eip712Signature,\n BigInt('10000000'),\n getSocketConnector({\n chainId: chainId,\n tokenAddress: params.tokenAddress,\n }),\n getSocketController({\n reyaChainId: chainId,\n tokenAddress: params.tokenAddress,\n }),\n params.receiverAddress,\n );\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"]}
@@ -1 +1 @@
1
- {"version":3,"file":"transferFromMAToPool.d.ts","sourceRoot":"/","sources":["services/lp/transferFromMAToPool.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,0BAA0B,EAC1B,0BAA0B,EAC3B,MAAM,SAAS,CAAC;AAEjB,eAAO,MAAM,oBAAoB,WACvB,0BAA0B,KACjC,QAAQ,0BAA0B,CAmCpC,CAAC"}
1
+ {"version":3,"file":"transferFromMAToPool.d.ts","sourceRoot":"/","sources":["services/lp/transferFromMAToPool.ts"],"names":[],"mappings":"AAMA,OAAO,EACL,0BAA0B,EAC1B,0BAA0B,EAC3B,MAAM,SAAS,CAAC;AAGjB,eAAO,MAAM,oBAAoB,WACvB,0BAA0B,KACjC,QAAQ,0BAA0B,CAmCpC,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { JsonRpcSigner, Signer } from 'ethers';
2
- import { LpPoolEntity, TokenEntity } from '@reyaxyz/common';
2
+ import { LpPoolEntity, LpWithdrawBalanceEntity, MarginAccountEntity, OwnerMetadataEntity } from '@reyaxyz/common';
3
3
  export type ProvideLiquidityParams = {
4
4
  signer: Signer | JsonRpcSigner;
5
5
  amount: number;
@@ -18,36 +18,28 @@ export type RemoveLiquidityResult = {
18
18
  };
19
19
  export type TransferFromMAToPoolParams = {
20
20
  signer: Signer | JsonRpcSigner;
21
- accountId: number;
22
- accountSigNonce: number;
23
- deadline: number;
24
- poolTokenAddress: TokenEntity['address'];
21
+ owner: Pick<OwnerMetadataEntity, 'address' | 'coreSigNonce'>;
22
+ accountId: MarginAccountEntity['id'];
23
+ pool: Pick<LpPoolEntity, 'id' | 'token'>;
25
24
  amount: number;
26
- poolId: number;
27
- owner: string;
28
- minShares: bigint;
29
25
  };
30
26
  export type TransferFromMAToPoolResult = {
31
27
  transactionHash: string | null;
32
28
  };
33
29
  export type WithdrawPassivePoolAndBridgeParams = {
34
30
  signer: Signer | JsonRpcSigner;
35
- ownerAddress: string;
36
- poolId: number;
37
- poolTokenAddress: TokenEntity['address'];
38
- sharesAmount: bigint;
39
- minOut: bigint;
40
- ownerSigNonce: number;
41
- deadline: number;
31
+ owner: Pick<OwnerMetadataEntity, 'address' | 'poolSigNonce'>;
32
+ pool: Pick<LpPoolEntity, 'id' | 'token'>;
33
+ amount: number;
34
+ sharePrice: LpWithdrawBalanceEntity['poolSharePrice'];
42
35
  };
43
36
  export type WithdrawPassivePoolAndBridgeResult = {
44
37
  transactionHash: string | null;
45
38
  };
46
39
  export type BridgeAndDepositPassivePoolParams = {
47
40
  signer: Signer | JsonRpcSigner;
48
- poolId: number;
49
- poolTokenAddress: TokenEntity['address'];
50
- minShares: bigint;
41
+ ownerAddress: OwnerMetadataEntity['address'];
42
+ pool: Pick<LpPoolEntity, 'id' | 'token'>;
51
43
  amount: number;
52
44
  };
53
45
  export type BridgeAndDepositPassivePoolResult = {
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"/","sources":["services/lp/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE5D,MAAM,MAAM,sBAAsB,GAAG;IACnC,MAAM,EAAE,MAAM,GAAG,aAAa,CAAC;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC;CAC9B,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,MAAM,EAAE,MAAM,GAAG,aAAa,CAAC;IAC/B,QAAQ,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC;IAC7B,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IACnC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG;IACvC,MAAM,EAAE,MAAM,GAAG,aAAa,CAAC;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,EAAE,MAAM,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,gBAAgB,EAAE,WAAW,CAAC,SAAS,CAAC,CAAC;IACzC,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG;IACvC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,kCAAkC,GAAG;IAC/C,MAAM,EAAE,MAAM,GAAG,aAAa,CAAC;IAC/B,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,gBAAgB,EAAE,WAAW,CAAC,SAAS,CAAC,CAAC;IACzC,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,kCAAkC,GAAG;IAC/C,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,iCAAiC,GAAG;IAC9C,MAAM,EAAE,MAAM,GAAG,aAAa,CAAC;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,gBAAgB,EAAE,WAAW,CAAC,SAAS,CAAC,CAAC;IACzC,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,iCAAiC,GAAG;IAC9C,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;CAChC,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"/","sources":["services/lp/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAC/C,OAAO,EACL,YAAY,EACZ,uBAAuB,EACvB,mBAAmB,EACnB,mBAAmB,EACpB,MAAM,iBAAiB,CAAC;AAEzB,MAAM,MAAM,sBAAsB,GAAG;IACnC,MAAM,EAAE,MAAM,GAAG,aAAa,CAAC;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC;CAC9B,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,MAAM,EAAE,MAAM,GAAG,aAAa,CAAC;IAC/B,QAAQ,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC;IAC7B,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IACnC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG;IACvC,MAAM,EAAE,MAAM,GAAG,aAAa,CAAC;IAC/B,KAAK,EAAE,IAAI,CAAC,mBAAmB,EAAE,SAAS,GAAG,cAAc,CAAC,CAAC;IAC7D,SAAS,EAAE,mBAAmB,CAAC,IAAI,CAAC,CAAC;IACrC,IAAI,EAAE,IAAI,CAAC,YAAY,EAAE,IAAI,GAAG,OAAO,CAAC,CAAC;IACzC,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG;IACvC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,kCAAkC,GAAG;IAC/C,MAAM,EAAE,MAAM,GAAG,aAAa,CAAC;IAC/B,KAAK,EAAE,IAAI,CAAC,mBAAmB,EAAE,SAAS,GAAG,cAAc,CAAC,CAAC;IAC7D,IAAI,EAAE,IAAI,CAAC,YAAY,EAAE,IAAI,GAAG,OAAO,CAAC,CAAC;IACzC,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,uBAAuB,CAAC,gBAAgB,CAAC,CAAC;CACvD,CAAC;AAEF,MAAM,MAAM,kCAAkC,GAAG;IAC/C,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,iCAAiC,GAAG;IAC9C,MAAM,EAAE,MAAM,GAAG,aAAa,CAAC;IAC/B,YAAY,EAAE,mBAAmB,CAAC,SAAS,CAAC,CAAC;IAC7C,IAAI,EAAE,IAAI,CAAC,YAAY,EAAE,IAAI,GAAG,OAAO,CAAC,CAAC;IACzC,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,iCAAiC,GAAG;IAC9C,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;CAChC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"withdrawPassivePoolAndBridge.d.ts","sourceRoot":"/","sources":["services/lp/withdrawPassivePoolAndBridge.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,kCAAkC,EAClC,kCAAkC,EACnC,MAAM,SAAS,CAAC;AAIjB,eAAO,MAAM,4BAA4B,WAC/B,kCAAkC,KACzC,QAAQ,kCAAkC,CA2C5C,CAAC"}
1
+ {"version":3,"file":"withdrawPassivePoolAndBridge.d.ts","sourceRoot":"/","sources":["services/lp/withdrawPassivePoolAndBridge.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,kCAAkC,EAClC,kCAAkC,EACnC,MAAM,SAAS,CAAC;AAWjB,eAAO,MAAM,4BAA4B,WAC/B,kCAAkC,KACzC,QAAQ,kCAAkC,CA8C5C,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"bridgeAndDepositExistingMA.d.ts","sourceRoot":"/","sources":["services/margin-accounts/bridgeAndDepositExistingMA.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,+BAA+B,EAC/B,+BAA+B,EAChC,MAAM,SAAS,CAAC;AAGjB,eAAO,MAAM,yBAAyB,WAC5B,+BAA+B,KACtC,QAAQ,+BAA+B,CAyCzC,CAAC"}
1
+ {"version":3,"file":"bridgeAndDepositExistingMA.d.ts","sourceRoot":"/","sources":["services/margin-accounts/bridgeAndDepositExistingMA.ts"],"names":[],"mappings":"AASA,OAAO,EACL,+BAA+B,EAC/B,+BAA+B,EAChC,MAAM,SAAS,CAAC;AAIjB,eAAO,MAAM,yBAAyB,WAC5B,+BAA+B,KACtC,QAAQ,+BAA+B,CAyCzC,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { JsonRpcSigner, Signer } from 'ethers';
2
- import { MarginAccountEntity, TokenEntity } from '@reyaxyz/common';
2
+ import { MarginAccountEntity, OwnerMetadataEntity, TokenEntity } from '@reyaxyz/common';
3
3
  export type CreateAccountParams = {
4
4
  signer: Signer | JsonRpcSigner;
5
5
  ownerAddress: string;
@@ -59,12 +59,10 @@ export type TransferMarginBetweenAccountsResult = {
59
59
  };
60
60
  export type WithdrawMAAndBridgeParams = {
61
61
  signer: Signer | JsonRpcSigner;
62
+ owner: Pick<OwnerMetadataEntity, 'address' | 'coreSigNonce'>;
62
63
  accountId: MarginAccountEntity['id'];
63
- accountSigNonce: number;
64
- deadline: number;
65
64
  tokenAddress: TokenEntity['address'];
66
65
  amount: number;
67
- poolTokenAddress: TokenEntity['address'];
68
66
  receiverAddress: string;
69
67
  };
70
68
  export type WithdrawMAAndBridgeParamsResult = {
@@ -72,6 +70,7 @@ export type WithdrawMAAndBridgeParamsResult = {
72
70
  };
73
71
  export type BridgeAndDepositNewMAParams = {
74
72
  signer: Signer | JsonRpcSigner;
73
+ ownerAddress: OwnerMetadataEntity['address'];
75
74
  tokenAddress: TokenEntity['address'];
76
75
  amount: number;
77
76
  };
@@ -80,9 +79,8 @@ export type BridgeAndDepositNewMAResult = {
80
79
  };
81
80
  export type BridgeAndDepositExisingMAParams = {
82
81
  signer: Signer | JsonRpcSigner;
82
+ owner: Pick<OwnerMetadataEntity, 'address' | 'coreSigNonce'>;
83
83
  accountId: MarginAccountEntity['id'];
84
- accountSigNonce: number;
85
- deadline: number;
86
84
  tokenAddress: TokenEntity['address'];
87
85
  amount: number;
88
86
  };
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"/","sources":["services/margin-accounts/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"/","sources":["services/margin-accounts/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"withdrawMAAndBridge.d.ts","sourceRoot":"/","sources":["services/margin-accounts/withdrawMAAndBridge.ts"],"names":[],"mappings":"AAMA,OAAO,EACL,yBAAyB,EACzB,+BAA+B,EAChC,MAAM,SAAS,CAAC;AAEjB,eAAO,MAAM,mBAAmB,WACtB,yBAAyB,KAChC,QAAQ,+BAA+B,CA0CzC,CAAC"}
1
+ {"version":3,"file":"withdrawMAAndBridge.d.ts","sourceRoot":"/","sources":["services/margin-accounts/withdrawMAAndBridge.ts"],"names":[],"mappings":"AAUA,OAAO,EACL,yBAAyB,EACzB,+BAA+B,EAChC,MAAM,SAAS,CAAC;AAGjB,eAAO,MAAM,mBAAmB,WACtB,yBAAyB,KAChC,QAAQ,+BAA+B,CA0CzC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare const BRIDGE_DEADLINE_IN_SECONDS: number;
2
+ //# sourceMappingURL=consts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"consts.d.ts","sourceRoot":"/","sources":["utils/consts.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,0BAA0B,QAAU,CAAC"}
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BRIDGE_DEADLINE_IN_SECONDS = void 0;
4
+ exports.BRIDGE_DEADLINE_IN_SECONDS = 15 * 60; // 15 minutes
5
+ //# sourceMappingURL=consts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"consts.js","sourceRoot":"/","sources":["utils/consts.ts"],"names":[],"mappings":";;;AAAa,QAAA,0BAA0B,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,aAAa","sourcesContent":["export const BRIDGE_DEADLINE_IN_SECONDS = 15 * 60; // 15 minutes\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@reyaxyz/sdk",
3
- "version": "0.18.5",
3
+ "version": "0.19.0",
4
4
  "publishConfig": {
5
5
  "access": "public",
6
6
  "registry": "https://registry.npmjs.org"
@@ -29,10 +29,10 @@
29
29
  "generate:coverage-badges": "npx istanbul-badges-readme --silent"
30
30
  },
31
31
  "dependencies": {
32
- "@reyaxyz/common": "0.10.0",
32
+ "@reyaxyz/common": "0.11.0",
33
33
  "bignumber.js": "^9.1.2",
34
34
  "ethers": "6.9.0"
35
35
  },
36
36
  "packageManager": "pnpm@8.10.4",
37
- "gitHead": "10811561a2dbbbb4425414347012f15762fe904b"
37
+ "gitHead": "22943658ebc6568b3ee543b5fd213c40fc96574a"
38
38
  }
@@ -1,4 +1,4 @@
1
- import { getSocketConnector, getSocketVault } from '@reyaxyz/common';
1
+ import { Address, getSocketConnector, getSocketVault } from '@reyaxyz/common';
2
2
  import { ContractType, getAddress } from '../../utils/contractAddresses';
3
3
  import { executeTransaction } from '../executeTransaction';
4
4
  import { getTokenDetails, scale } from '../token/common';
@@ -14,7 +14,7 @@ export const bridgeAndDepositPassivePool = async (
14
14
  const network = await params.signer.provider?.getNetwork();
15
15
  const chainId = Number(network?.chainId);
16
16
 
17
- const { tokenDecimals } = getTokenDetails(params.poolTokenAddress);
17
+ const { tokenDecimals } = getTokenDetails(params.pool.token);
18
18
  const amount = scale(tokenDecimals)(params.amount);
19
19
 
20
20
  const { calldata: data, value } = encodeBridgeAndDepositPassivePool(
@@ -22,12 +22,12 @@ export const bridgeAndDepositPassivePool = async (
22
22
  BigInt('10000000'),
23
23
  getSocketConnector({
24
24
  chainId: chainId,
25
- tokenAddress: params.poolTokenAddress,
25
+ tokenAddress: params.pool.token.toLowerCase() as Address,
26
26
  }),
27
- params.poolId,
28
- await params.signer.getAddress(),
27
+ params.pool.id,
28
+ params.ownerAddress,
29
29
  amount,
30
- params.minShares,
30
+ BigInt(0),
31
31
  );
32
32
 
33
33
  const result = await executeTransaction(
@@ -37,7 +37,7 @@ export const bridgeAndDepositPassivePool = async (
37
37
  chainId,
38
38
  getSocketVault({
39
39
  moneyInOutChainId: chainId,
40
- tokenAddress: params.poolTokenAddress,
40
+ tokenAddress: params.pool.token.toLowerCase() as Address,
41
41
  }),
42
42
  );
43
43
 
@@ -1,3 +1,4 @@
1
+ import { getCurrentTimestampInSeconds } from '@reyaxyz/common';
1
2
  import { ContractType } from '../../utils/contractAddresses';
2
3
  import { executeTransaction } from '../executeTransaction';
3
4
  import { signCoreCommands } from '../sign';
@@ -7,6 +8,7 @@ import {
7
8
  TransferFromMAToPoolParams,
8
9
  TransferFromMAToPoolResult,
9
10
  } from './types';
11
+ import { BRIDGE_DEADLINE_IN_SECONDS } from '../../utils/consts';
10
12
 
11
13
  export const transferFromMAToPool = async (
12
14
  params: TransferFromMAToPoolParams,
@@ -18,20 +20,20 @@ export const transferFromMAToPool = async (
18
20
  params.signer,
19
21
  chainId,
20
22
  params.accountId,
21
- params.accountSigNonce,
22
- params.deadline,
23
+ params.owner.coreSigNonce,
24
+ getCurrentTimestampInSeconds() + BRIDGE_DEADLINE_IN_SECONDS,
23
25
  );
24
26
 
25
- const { tokenDecimals } = getTokenDetails(params.poolTokenAddress);
27
+ const { tokenDecimals } = getTokenDetails(params.pool.token);
26
28
  const amount = scale(tokenDecimals)(params.amount);
27
29
 
28
30
  const { calldata: data, value } = encodeTransferFromMAToPool(
29
31
  params.accountId,
30
32
  amount,
31
33
  eip712Signature,
32
- params.poolId,
33
- params.owner,
34
- params.minShares,
34
+ params.pool.id,
35
+ params.owner.address,
36
+ BigInt(0),
35
37
  );
36
38
 
37
39
  const result = await executeTransaction(
@@ -1,5 +1,10 @@
1
1
  import { JsonRpcSigner, Signer } from 'ethers';
2
- import { LpPoolEntity, TokenEntity } from '@reyaxyz/common';
2
+ import {
3
+ LpPoolEntity,
4
+ LpWithdrawBalanceEntity,
5
+ MarginAccountEntity,
6
+ OwnerMetadataEntity,
7
+ } from '@reyaxyz/common';
3
8
 
4
9
  export type ProvideLiquidityParams = {
5
10
  signer: Signer | JsonRpcSigner;
@@ -23,14 +28,10 @@ export type RemoveLiquidityResult = {
23
28
 
24
29
  export type TransferFromMAToPoolParams = {
25
30
  signer: Signer | JsonRpcSigner;
26
- accountId: number;
27
- accountSigNonce: number; // todo
28
- deadline: number; // todo
29
- poolTokenAddress: TokenEntity['address']; // todo
31
+ owner: Pick<OwnerMetadataEntity, 'address' | 'coreSigNonce'>;
32
+ accountId: MarginAccountEntity['id'];
33
+ pool: Pick<LpPoolEntity, 'id' | 'token'>;
30
34
  amount: number;
31
- poolId: number;
32
- owner: string;
33
- minShares: bigint; // todo
34
35
  };
35
36
 
36
37
  export type TransferFromMAToPoolResult = {
@@ -39,13 +40,10 @@ export type TransferFromMAToPoolResult = {
39
40
 
40
41
  export type WithdrawPassivePoolAndBridgeParams = {
41
42
  signer: Signer | JsonRpcSigner;
42
- ownerAddress: string;
43
- poolId: number;
44
- poolTokenAddress: TokenEntity['address']; // todo
45
- sharesAmount: bigint; // todo ?
46
- minOut: bigint; // todo ?
47
- ownerSigNonce: number; //todo
48
- deadline: number; // todo
43
+ owner: Pick<OwnerMetadataEntity, 'address' | 'poolSigNonce'>;
44
+ pool: Pick<LpPoolEntity, 'id' | 'token'>;
45
+ amount: number;
46
+ sharePrice: LpWithdrawBalanceEntity['poolSharePrice'];
49
47
  };
50
48
 
51
49
  export type WithdrawPassivePoolAndBridgeResult = {
@@ -54,9 +52,8 @@ export type WithdrawPassivePoolAndBridgeResult = {
54
52
 
55
53
  export type BridgeAndDepositPassivePoolParams = {
56
54
  signer: Signer | JsonRpcSigner;
57
- poolId: number;
58
- poolTokenAddress: TokenEntity['address']; // todo
59
- minShares: bigint; // todo
55
+ ownerAddress: OwnerMetadataEntity['address'];
56
+ pool: Pick<LpPoolEntity, 'id' | 'token'>;
60
57
  amount: number;
61
58
  };
62
59
 
@@ -6,40 +6,50 @@ import {
6
6
  WithdrawPassivePoolAndBridgeResult,
7
7
  } from './types';
8
8
  import { encodeWithdrawPassivePoolAndBridge } from './encode';
9
- import { getSocketConnector, getSocketController } from '@reyaxyz/common';
9
+ import {
10
+ Address,
11
+ getCurrentTimestampInSeconds,
12
+ getSocketConnector,
13
+ getSocketController,
14
+ } from '@reyaxyz/common';
15
+ import { BRIDGE_DEADLINE_IN_SECONDS } from '../../utils/consts';
16
+ import { scale } from '../token/common';
10
17
 
11
18
  export const withdrawPassivePoolAndBridge = async (
12
19
  params: WithdrawPassivePoolAndBridgeParams,
13
20
  ): Promise<WithdrawPassivePoolAndBridgeResult> => {
14
21
  const network = await params.signer.provider?.getNetwork();
15
22
  const chainId = Number(network?.chainId);
23
+
24
+ const sharesAmount = scale(30)(params.amount * params.sharePrice);
25
+
16
26
  const eip712Signature = await signPoolRemoveLiquidity(
17
27
  params.signer,
18
28
  chainId,
19
- params.ownerAddress,
20
- params.poolId,
21
- params.sharesAmount,
22
- params.minOut,
23
- params.ownerSigNonce,
24
- params.deadline,
29
+ params.owner.address,
30
+ params.pool.id,
31
+ sharesAmount,
32
+ BigInt(0),
33
+ params.owner.poolSigNonce,
34
+ getCurrentTimestampInSeconds() + BRIDGE_DEADLINE_IN_SECONDS,
25
35
  );
26
36
 
27
37
  const { calldata: data, value } = encodeWithdrawPassivePoolAndBridge(
28
- params.ownerAddress,
29
- params.poolId,
30
- params.sharesAmount,
31
- params.minOut,
38
+ params.owner.address,
39
+ params.pool.id,
40
+ sharesAmount,
41
+ BigInt(0),
32
42
  eip712Signature,
33
43
  BigInt('10000000'), //todo
34
44
  getSocketConnector({
35
45
  chainId: chainId,
36
- tokenAddress: params.poolTokenAddress,
46
+ tokenAddress: params.pool.token.toLowerCase() as Address,
37
47
  }),
38
48
  getSocketController({
39
49
  reyaChainId: chainId,
40
- tokenAddress: params.poolTokenAddress,
50
+ tokenAddress: params.pool.token.toLowerCase() as Address,
41
51
  }),
42
- params.ownerAddress,
52
+ params.owner.address,
43
53
  );
44
54
 
45
55
  const result = await executeTransaction(
@@ -1,4 +1,8 @@
1
- import { getSocketConnector, getSocketVault } from '@reyaxyz/common';
1
+ import {
2
+ getCurrentTimestampInSeconds,
3
+ getSocketConnector,
4
+ getSocketVault,
5
+ } from '@reyaxyz/common';
2
6
  import { ContractType, getAddress } from '../../utils/contractAddresses';
3
7
  import { executeTransaction } from '../executeTransaction';
4
8
  import { getTokenDetails, scale } from '../token/common';
@@ -8,6 +12,7 @@ import {
8
12
  BridgeAndDepositExisingMAResult,
9
13
  } from './types';
10
14
  import { signCoreCommands } from '../sign';
15
+ import { BRIDGE_DEADLINE_IN_SECONDS } from '../../utils/consts';
11
16
 
12
17
  export const bridgeAndDepositExisingMA = async (
13
18
  params: BridgeAndDepositExisingMAParams,
@@ -18,8 +23,8 @@ export const bridgeAndDepositExisingMA = async (
18
23
  params.signer,
19
24
  chainId,
20
25
  params.accountId,
21
- params.accountSigNonce,
22
- params.deadline,
26
+ params.owner.coreSigNonce,
27
+ getCurrentTimestampInSeconds() + BRIDGE_DEADLINE_IN_SECONDS,
23
28
  );
24
29
 
25
30
  const { tokenDecimals } = getTokenDetails(params.tokenAddress);
@@ -24,7 +24,7 @@ export const bridgeAndDepositNewMA = async (
24
24
  chainId: chainId,
25
25
  tokenAddress: params.tokenAddress,
26
26
  }),
27
- await params.signer.getAddress(),
27
+ params.ownerAddress,
28
28
  params.tokenAddress,
29
29
  amount,
30
30
  );
@@ -1,5 +1,9 @@
1
1
  import { JsonRpcSigner, Signer } from 'ethers';
2
- import { MarginAccountEntity, TokenEntity } from '@reyaxyz/common';
2
+ import {
3
+ MarginAccountEntity,
4
+ OwnerMetadataEntity,
5
+ TokenEntity,
6
+ } from '@reyaxyz/common';
3
7
 
4
8
  export type CreateAccountParams = {
5
9
  signer: Signer | JsonRpcSigner;
@@ -75,13 +79,11 @@ export type TransferMarginBetweenAccountsResult = {
75
79
 
76
80
  export type WithdrawMAAndBridgeParams = {
77
81
  signer: Signer | JsonRpcSigner;
82
+ owner: Pick<OwnerMetadataEntity, 'address' | 'coreSigNonce'>;
78
83
  accountId: MarginAccountEntity['id'];
79
- accountSigNonce: number; // todo
80
- deadline: number; // todo
81
84
  tokenAddress: TokenEntity['address'];
82
85
  amount: number;
83
- poolTokenAddress: TokenEntity['address']; // todo
84
- receiverAddress: string; // todo
86
+ receiverAddress: string;
85
87
  };
86
88
 
87
89
  export type WithdrawMAAndBridgeParamsResult = {
@@ -90,6 +92,7 @@ export type WithdrawMAAndBridgeParamsResult = {
90
92
 
91
93
  export type BridgeAndDepositNewMAParams = {
92
94
  signer: Signer | JsonRpcSigner;
95
+ ownerAddress: OwnerMetadataEntity['address'];
93
96
  tokenAddress: TokenEntity['address'];
94
97
  amount: number;
95
98
  };
@@ -100,9 +103,8 @@ export type BridgeAndDepositNewMAResult = {
100
103
 
101
104
  export type BridgeAndDepositExisingMAParams = {
102
105
  signer: Signer | JsonRpcSigner;
106
+ owner: Pick<OwnerMetadataEntity, 'address' | 'coreSigNonce'>;
103
107
  accountId: MarginAccountEntity['id'];
104
- accountSigNonce: number; // todo
105
- deadline: number; // todo
106
108
  tokenAddress: TokenEntity['address'];
107
109
  amount: number;
108
110
  };
@@ -1,4 +1,8 @@
1
- import { getSocketConnector, getSocketController } from '@reyaxyz/common';
1
+ import {
2
+ getCurrentTimestampInSeconds,
3
+ getSocketConnector,
4
+ getSocketController,
5
+ } from '@reyaxyz/common';
2
6
  import { ContractType } from '../../utils/contractAddresses';
3
7
  import { executeTransaction } from '../executeTransaction';
4
8
  import { signCoreCommands } from '../sign';
@@ -8,6 +12,7 @@ import {
8
12
  WithdrawMAAndBridgeParams,
9
13
  WithdrawMAAndBridgeParamsResult,
10
14
  } from './types';
15
+ import { BRIDGE_DEADLINE_IN_SECONDS } from '../../utils/consts';
11
16
 
12
17
  export const withdrawMAAndBridge = async (
13
18
  params: WithdrawMAAndBridgeParams,
@@ -18,8 +23,8 @@ export const withdrawMAAndBridge = async (
18
23
  params.signer,
19
24
  chainId,
20
25
  params.accountId,
21
- params.accountSigNonce,
22
- params.deadline,
26
+ params.owner.coreSigNonce,
27
+ getCurrentTimestampInSeconds() + BRIDGE_DEADLINE_IN_SECONDS,
23
28
  );
24
29
 
25
30
  const { tokenDecimals } = getTokenDetails(params.tokenAddress);
@@ -33,11 +38,11 @@ export const withdrawMAAndBridge = async (
33
38
  BigInt('10000000'),
34
39
  getSocketConnector({
35
40
  chainId: chainId,
36
- tokenAddress: params.poolTokenAddress,
41
+ tokenAddress: params.tokenAddress,
37
42
  }),
38
43
  getSocketController({
39
44
  reyaChainId: chainId,
40
- tokenAddress: params.poolTokenAddress,
45
+ tokenAddress: params.tokenAddress,
41
46
  }),
42
47
  params.receiverAddress,
43
48
  );
@@ -0,0 +1 @@
1
+ export const BRIDGE_DEADLINE_IN_SECONDS = 15 * 60; // 15 minutes