@typus/typus-perp-sdk 1.1.11 → 1.1.13

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.
@@ -84,7 +84,7 @@ function parseUserHistory(raw_events) {
84
84
  return __generator(this, function (_a) {
85
85
  events = [];
86
86
  raw_events.forEach(function (event) {
87
- var _a;
87
+ var _a, _b;
88
88
  var type = event.contents.type.repr;
89
89
  if (type.endsWith("PythPrice")) {
90
90
  return;
@@ -96,7 +96,7 @@ function parseUserHistory(raw_events) {
96
96
  // console.log(tx_digest);
97
97
  // console.log(json);
98
98
  // console.log(timestamp);
99
- var _b = __read(type.split("::"), 3), pkg = _b[0], mod = _b[1], name = _b[2];
99
+ var _c = __read(type.split("::"), 3), pkg = _c[0], mod = _c[1], name = _c[2];
100
100
  switch (name) {
101
101
  case structs_2.CreateTradingOrderEvent.$typeName.split("::")[2]:
102
102
  case structs_2.CreateTradingOrderWithBidReceiptsEvent.$typeName.split("::")[2]:
@@ -163,7 +163,9 @@ function parseUserHistory(raw_events) {
163
163
  action = "Order Filled (Close Position)";
164
164
  related = events.findLast(function (e) { return e.position_id === json.linked_position_id && e.market === market; });
165
165
  // the "Place Order" is emit after Order Filled if filled immediately
166
- collateral = (realized_amount - realized_trading_fee) / Math.pow(10, (0, constants_1.assetToDecimal)(collateral_token));
166
+ if (realized_pnl > 0) {
167
+ collateral = (realized_amount - realized_trading_fee) / Math.pow(10, (0, constants_1.assetToDecimal)(collateral_token));
168
+ }
167
169
  }
168
170
  else {
169
171
  action = "Order Filled (Open Position)";
@@ -199,21 +201,10 @@ function parseUserHistory(raw_events) {
199
201
  if (index !== -1) {
200
202
  // true => user paid to pool
201
203
  var remaining_collateral_amount = json.remaining_collateral_amount / Math.pow(10, (0, constants_1.assetToDecimal)(events[index].collateral_token));
202
- events[index] = __assign(__assign({}, events[index]), { collateral: remaining_collateral_amount + Math.max(0, events[index].collateral) });
204
+ events[index] = __assign(__assign({}, events[index]), { collateral: remaining_collateral_amount + events[index].collateral });
203
205
  }
204
206
  break;
205
207
  case structs_1.RealizeFundingEvent.$typeName.split("::")[2]:
206
- // // same tx with order filled
207
- // var index = events.findLastIndex((e) => e.tx_digest == tx_digest);
208
- // // console.log(index);
209
- // if (index !== -1) {
210
- // // true => user paid to pool
211
- // let x = json.realized_funding_sign ? json.realized_funding_fee_usd / 10 ** 9 : -json.realized_funding_fee_usd / 10 ** 9;
212
- // events[index] = {
213
- // ...events[index],
214
- // realized_pnl: (events[index].realized_pnl ?? 0) - x,
215
- // };
216
- // }
217
208
  var base_token = (0, constants_1.typeArgToAsset)(json.symbol.base_token.name);
218
209
  var collateral_token = (0, constants_1.typeArgToAsset)(json.collateral_token.name);
219
210
  var market = "".concat(base_token, "/USD");
@@ -225,6 +216,13 @@ function parseUserHistory(raw_events) {
225
216
  var realized_funding_fee_usd = json.realized_funding_sign
226
217
  ? -json.realized_funding_fee_usd / Math.pow(10, 9)
227
218
  : json.realized_funding_fee_usd / Math.pow(10, 9);
219
+ // same tx with order filled
220
+ var index = events.findLastIndex(function (e) { return e.tx_digest == tx_digest && e.action == "Order Filled (Close Position)"; });
221
+ // console.log(index);
222
+ if (index !== -1 && realized_funding_fee < 0) {
223
+ // true => user paid to pool
224
+ events[index] = __assign(__assign({}, events[index]), { collateral: (_b = events[index].collateral) !== null && _b !== void 0 ? _b : 0 - realized_funding_fee });
225
+ }
228
226
  var e = {
229
227
  action: "Realize Funding",
230
228
  typeName: name,
@@ -457,10 +455,10 @@ function getRealizeFundingFromSentio(userAddress, startTimestamp, events) {
457
455
  status: "Filled",
458
456
  size: undefined,
459
457
  base_token: base_token,
460
- collateral: Number(x.realized_funding_fee),
458
+ collateral: -Number(x.realized_funding_fee),
461
459
  collateral_token: x.collateral_token,
462
460
  price: undefined,
463
- realized_pnl: Number(x.realized_funding_fee_usd),
461
+ realized_pnl: -Number(x.realized_funding_fee_usd),
464
462
  timestamp: x.timestamp,
465
463
  tx_digest: x.transaction_hash,
466
464
  dov_index: undefined,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@typus/typus-perp-sdk",
3
- "version": "1.1.11",
3
+ "version": "1.1.13",
4
4
  "repository": "https://github.com/Typus-Lab/typus-perp-sdk.git",
5
5
  "author": "Typus",
6
6
  "description": "typus perp sdk",