@reyaxyz/sdk 0.76.2 → 0.77.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.
|
@@ -58,15 +58,17 @@ var isolatedOrder = function (params) { return __awaiter(void 0, void 0, void 0,
|
|
|
58
58
|
case 2:
|
|
59
59
|
if (!(_i < _a.length)) return [3 /*break*/, 5];
|
|
60
60
|
action = _a[_i];
|
|
61
|
+
// todo: p1: pack transfers into a single tx with multiple transfer commands (core sig issue)
|
|
61
62
|
return [4 /*yield*/, (0, margin_accounts_1.transferMarginBetweenAccounts)({
|
|
62
63
|
signer: params.signer,
|
|
63
64
|
owner: params.owner,
|
|
64
65
|
fromMarginAccountId: params.fromMarginAccountId,
|
|
65
66
|
toMarginAccountId: createAccountResult.accountId,
|
|
66
|
-
amount: action.collateralDelta,
|
|
67
|
+
amount: Math.abs(action.collateralDelta),
|
|
67
68
|
tokenAddress: action.collateralAddress,
|
|
68
69
|
})];
|
|
69
70
|
case 3:
|
|
71
|
+
// todo: p1: pack transfers into a single tx with multiple transfer commands (core sig issue)
|
|
70
72
|
_b.sent();
|
|
71
73
|
_b.label = 4;
|
|
72
74
|
case 4:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"isolatedOrder.js","sourceRoot":"/","sources":["services/isolated-order/isolatedOrder.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,sDAG4B;AAC5B,oCAAuC;AAEhC,IAAM,aAAa,GAAG,UAC3B,MAA2B;;;;oBAQC,qBAAM,IAAA,+BAAa,EAAC;oBAC9C,MAAM,EAAE,MAAM,CAAC,MAAM;oBACrB,YAAY,EAAE,MAAM,CAAC,KAAK,CAAC,OAAO;oBAClC,IAAI,EAAE,wBAAwB;iBAC/B,CAAC,EAAA;;gBAJI,mBAAmB,GAAG,SAI1B;gBAEF,IAAI,CAAC,mBAAmB,CAAC,SAAS,EAAE,CAAC;oBACnC,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;gBAC5E,CAAC;
|
|
1
|
+
{"version":3,"file":"isolatedOrder.js","sourceRoot":"/","sources":["services/isolated-order/isolatedOrder.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,sDAG4B;AAC5B,oCAAuC;AAEhC,IAAM,aAAa,GAAG,UAC3B,MAA2B;;;;oBAQC,qBAAM,IAAA,+BAAa,EAAC;oBAC9C,MAAM,EAAE,MAAM,CAAC,MAAM;oBACrB,YAAY,EAAE,MAAM,CAAC,KAAK,CAAC,OAAO;oBAClC,IAAI,EAAE,wBAAwB;iBAC/B,CAAC,EAAA;;gBAJI,mBAAmB,GAAG,SAI1B;gBAEF,IAAI,CAAC,mBAAmB,CAAC,SAAS,EAAE,CAAC;oBACnC,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;gBAC5E,CAAC;sBAIgD,EAA5B,KAAA,MAAM,CAAC,qBAAqB;;;qBAA5B,CAAA,cAA4B,CAAA;gBAAtC,MAAM;gBACf,6FAA6F;gBAC7F,qBAAM,IAAA,+CAA6B,EAAC;wBAClC,MAAM,EAAE,MAAM,CAAC,MAAM;wBACrB,KAAK,EAAE,MAAM,CAAC,KAAK;wBACnB,mBAAmB,EAAE,MAAM,CAAC,mBAAmB;wBAC/C,iBAAiB,EAAE,mBAAmB,CAAC,SAAS;wBAChD,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,eAAe,CAAC;wBACxC,YAAY,EAAE,MAAM,CAAC,iBAAiB;qBACvC,CAAC,EAAA;;gBARF,6FAA6F;gBAC7F,SAOE,CAAC;;;gBATgB,IAA4B,CAAA;;oBAexB,qBAAM,IAAA,mBAAU,EAAC;oBACxC,MAAM,EAAE,MAAM,CAAC,MAAM;oBACrB,KAAK,EAAE,MAAM,CAAC,KAAK;oBACnB,eAAe,EAAE,mBAAmB,CAAC,SAAS;oBAC9C,mBAAmB,EAAE,MAAM,CAAC,mBAAmB;oBAC/C,MAAM,EAAE,MAAM,CAAC,MAAM;iBACtB,CAAC,EAAA;;gBANI,gBAAgB,GAAG,SAMvB;gBAEF,sBAAO;wBACL,eAAe,EAAE,CAAA,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,eAAe,KAAI,IAAI;qBAC3D,EAAC;;;KACH,CAAC;AA/CW,QAAA,aAAa,iBA+CxB","sourcesContent":["import { IsolatedOrderParams, IsolatedOrderResult } from './types';\nimport {\n createAccount,\n transferMarginBetweenAccounts,\n} from '../margin-accounts';\nimport { matchOrder } from '../orders';\n\nexport const isolatedOrder = async (\n params: IsolatedOrderParams,\n): Promise<IsolatedOrderResult> => {\n // todo: p2 consider performing all steps in api and only call one api function from here?\n\n // step 1: create new account\n\n // todo: p2: consider having a function that creates an account and auto-generates a name in one go, use it t&cs also\n // todo: p2: error handling & logging\n const createAccountResult = await createAccount({\n signer: params.signer,\n ownerAddress: params.owner.address,\n name: 'Isolated Trade Account',\n });\n\n if (!createAccountResult.accountId) {\n throw new Error('New Account Id not available to execute isolated trade');\n }\n\n // step 2: transfer margin from source to destination account\n\n for (const action of params.editCollateralActions) {\n // todo: p1: pack transfers into a single tx with multiple transfer commands (core sig issue)\n await transferMarginBetweenAccounts({\n signer: params.signer,\n owner: params.owner,\n fromMarginAccountId: params.fromMarginAccountId,\n toMarginAccountId: createAccountResult.accountId,\n amount: Math.abs(action.collateralDelta),\n tokenAddress: action.collateralAddress,\n });\n }\n\n // step 3: execute trade\n\n // todo: p1: need to increase the nonce for this tx as well\n const matchOrderResult = await matchOrder({\n signer: params.signer,\n owner: params.owner,\n marginAccountId: createAccountResult.accountId,\n snappedAmountInBase: params.snappedAmountInBase,\n market: params.market,\n });\n\n return {\n transactionHash: matchOrderResult?.transactionHash || null,\n };\n};\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"isolatedOrder.d.ts","sourceRoot":"/","sources":["services/isolated-order/isolatedOrder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAOnE,eAAO,MAAM,aAAa,WAChB,mBAAmB,KAC1B,QAAQ,mBAAmB,
|
|
1
|
+
{"version":3,"file":"isolatedOrder.d.ts","sourceRoot":"/","sources":["services/isolated-order/isolatedOrder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAOnE,eAAO,MAAM,aAAa,WAChB,mBAAmB,KAC1B,QAAQ,mBAAmB,CA6C7B,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@reyaxyz/sdk",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.77.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.
|
|
32
|
+
"@reyaxyz/common": "0.90.0",
|
|
33
33
|
"bignumber.js": "^9.1.2",
|
|
34
34
|
"ethers": "6.9.0"
|
|
35
35
|
},
|
|
36
36
|
"packageManager": "pnpm@8.3.1",
|
|
37
|
-
"gitHead": "
|
|
37
|
+
"gitHead": "9a1fa7fed7448ce867f599ab211a8e99ce366f4c"
|
|
38
38
|
}
|
|
@@ -25,21 +25,22 @@ export const isolatedOrder = async (
|
|
|
25
25
|
}
|
|
26
26
|
|
|
27
27
|
// step 2: transfer margin from source to destination account
|
|
28
|
-
// todo: p1: pack transfers into a single tx with multiple transfer commands
|
|
29
28
|
|
|
30
29
|
for (const action of params.editCollateralActions) {
|
|
30
|
+
// todo: p1: pack transfers into a single tx with multiple transfer commands (core sig issue)
|
|
31
31
|
await transferMarginBetweenAccounts({
|
|
32
32
|
signer: params.signer,
|
|
33
33
|
owner: params.owner,
|
|
34
34
|
fromMarginAccountId: params.fromMarginAccountId,
|
|
35
35
|
toMarginAccountId: createAccountResult.accountId,
|
|
36
|
-
amount: action.collateralDelta,
|
|
36
|
+
amount: Math.abs(action.collateralDelta),
|
|
37
37
|
tokenAddress: action.collateralAddress,
|
|
38
38
|
});
|
|
39
39
|
}
|
|
40
40
|
|
|
41
41
|
// step 3: execute trade
|
|
42
42
|
|
|
43
|
+
// todo: p1: need to increase the nonce for this tx as well
|
|
43
44
|
const matchOrderResult = await matchOrder({
|
|
44
45
|
signer: params.signer,
|
|
45
46
|
owner: params.owner,
|