@lifi/perps-sdk-provider-ondo 26.0.1 → 28.0.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 (156) hide show
  1. package/README.md +5 -0
  2. package/dist/cjs/OndoProvider.d.ts.map +1 -1
  3. package/dist/cjs/OndoProvider.js +28 -23
  4. package/dist/cjs/OndoProvider.js.map +1 -1
  5. package/dist/cjs/auth/sessionToken.d.ts +9 -0
  6. package/dist/cjs/auth/sessionToken.d.ts.map +1 -0
  7. package/dist/cjs/auth/sessionToken.js +28 -0
  8. package/dist/cjs/auth/sessionToken.js.map +1 -0
  9. package/dist/cjs/auth/signActions.d.ts.map +1 -1
  10. package/dist/cjs/auth/signActions.js +6 -20
  11. package/dist/cjs/auth/signActions.js.map +1 -1
  12. package/dist/cjs/utils/availableToTrade.d.ts.map +1 -1
  13. package/dist/cjs/utils/availableToTrade.js +11 -21
  14. package/dist/cjs/utils/availableToTrade.js.map +1 -1
  15. package/dist/cjs/utils/index.d.ts +1 -2
  16. package/dist/cjs/utils/index.d.ts.map +1 -1
  17. package/dist/cjs/utils/index.js +2 -3
  18. package/dist/cjs/utils/index.js.map +1 -1
  19. package/dist/cjs/utils/mapActivity.d.ts +2 -2
  20. package/dist/cjs/utils/mapActivity.d.ts.map +1 -1
  21. package/dist/cjs/utils/mapActivity.js +21 -4
  22. package/dist/cjs/utils/mapActivity.js.map +1 -1
  23. package/dist/cjs/utils/mapFill.d.ts +1 -1
  24. package/dist/cjs/utils/mapFill.d.ts.map +1 -1
  25. package/dist/cjs/utils/mapFill.js +30 -24
  26. package/dist/cjs/utils/mapFill.js.map +1 -1
  27. package/dist/cjs/utils/mapOrder.d.ts +1 -1
  28. package/dist/cjs/utils/mapOrder.d.ts.map +1 -1
  29. package/dist/cjs/utils/mapOrder.js +54 -22
  30. package/dist/cjs/utils/mapOrder.js.map +1 -1
  31. package/dist/cjs/utils/mapPortfolioHistory.d.ts +1 -1
  32. package/dist/cjs/utils/mapPortfolioHistory.d.ts.map +1 -1
  33. package/dist/cjs/utils/mapPortfolioHistory.js +11 -11
  34. package/dist/cjs/utils/mapPortfolioHistory.js.map +1 -1
  35. package/dist/cjs/utils/mapPosition.d.ts +2 -1
  36. package/dist/cjs/utils/mapPosition.d.ts.map +1 -1
  37. package/dist/cjs/utils/mapPosition.js +33 -19
  38. package/dist/cjs/utils/mapPosition.js.map +1 -1
  39. package/dist/cjs/utils/venueValues.d.ts +2 -0
  40. package/dist/cjs/utils/venueValues.d.ts.map +1 -0
  41. package/dist/cjs/utils/venueValues.js +19 -0
  42. package/dist/cjs/utils/venueValues.js.map +1 -0
  43. package/dist/cjs/utils/withdrawableBalances.d.ts.map +1 -1
  44. package/dist/cjs/utils/withdrawableBalances.js +6 -6
  45. package/dist/cjs/utils/withdrawableBalances.js.map +1 -1
  46. package/dist/cjs/websocket/OndoWsProvider.d.ts.map +1 -1
  47. package/dist/cjs/websocket/OndoWsProvider.js +34 -12
  48. package/dist/cjs/websocket/OndoWsProvider.js.map +1 -1
  49. package/dist/esm/OndoProvider.d.ts.map +1 -1
  50. package/dist/esm/OndoProvider.js +30 -25
  51. package/dist/esm/OndoProvider.js.map +1 -1
  52. package/dist/esm/auth/sessionToken.d.ts +27 -0
  53. package/dist/esm/auth/sessionToken.d.ts.map +1 -0
  54. package/dist/esm/auth/sessionToken.js +40 -0
  55. package/dist/esm/auth/sessionToken.js.map +1 -0
  56. package/dist/esm/auth/signActions.d.ts.map +1 -1
  57. package/dist/esm/auth/signActions.js +8 -22
  58. package/dist/esm/auth/signActions.js.map +1 -1
  59. package/dist/esm/utils/availableToTrade.d.ts.map +1 -1
  60. package/dist/esm/utils/availableToTrade.js +12 -20
  61. package/dist/esm/utils/availableToTrade.js.map +1 -1
  62. package/dist/esm/utils/index.d.ts +1 -2
  63. package/dist/esm/utils/index.d.ts.map +1 -1
  64. package/dist/esm/utils/index.js +1 -2
  65. package/dist/esm/utils/index.js.map +1 -1
  66. package/dist/esm/utils/mapActivity.d.ts +12 -6
  67. package/dist/esm/utils/mapActivity.d.ts.map +1 -1
  68. package/dist/esm/utils/mapActivity.js +31 -8
  69. package/dist/esm/utils/mapActivity.js.map +1 -1
  70. package/dist/esm/utils/mapFill.d.ts +3 -2
  71. package/dist/esm/utils/mapFill.d.ts.map +1 -1
  72. package/dist/esm/utils/mapFill.js +34 -26
  73. package/dist/esm/utils/mapFill.js.map +1 -1
  74. package/dist/esm/utils/mapOrder.d.ts +6 -2
  75. package/dist/esm/utils/mapOrder.d.ts.map +1 -1
  76. package/dist/esm/utils/mapOrder.js +60 -24
  77. package/dist/esm/utils/mapOrder.js.map +1 -1
  78. package/dist/esm/utils/mapPortfolioHistory.d.ts +3 -2
  79. package/dist/esm/utils/mapPortfolioHistory.d.ts.map +1 -1
  80. package/dist/esm/utils/mapPortfolioHistory.js +14 -13
  81. package/dist/esm/utils/mapPortfolioHistory.js.map +1 -1
  82. package/dist/esm/utils/mapPosition.d.ts +12 -4
  83. package/dist/esm/utils/mapPosition.d.ts.map +1 -1
  84. package/dist/esm/utils/mapPosition.js +41 -21
  85. package/dist/esm/utils/mapPosition.js.map +1 -1
  86. package/dist/esm/utils/venueValues.d.ts +6 -0
  87. package/dist/esm/utils/venueValues.d.ts.map +1 -0
  88. package/dist/esm/utils/venueValues.js +19 -0
  89. package/dist/esm/utils/venueValues.js.map +1 -0
  90. package/dist/esm/utils/withdrawableBalances.d.ts +2 -2
  91. package/dist/esm/utils/withdrawableBalances.d.ts.map +1 -1
  92. package/dist/esm/utils/withdrawableBalances.js +9 -9
  93. package/dist/esm/utils/withdrawableBalances.js.map +1 -1
  94. package/dist/esm/websocket/OndoWsProvider.d.ts +6 -1
  95. package/dist/esm/websocket/OndoWsProvider.d.ts.map +1 -1
  96. package/dist/esm/websocket/OndoWsProvider.js +42 -15
  97. package/dist/esm/websocket/OndoWsProvider.js.map +1 -1
  98. package/dist/types/OndoProvider.d.ts.map +1 -1
  99. package/dist/types/auth/sessionToken.d.ts +27 -0
  100. package/dist/types/auth/sessionToken.d.ts.map +1 -0
  101. package/dist/types/auth/signActions.d.ts.map +1 -1
  102. package/dist/types/utils/availableToTrade.d.ts.map +1 -1
  103. package/dist/types/utils/index.d.ts +1 -2
  104. package/dist/types/utils/index.d.ts.map +1 -1
  105. package/dist/types/utils/mapActivity.d.ts +12 -6
  106. package/dist/types/utils/mapActivity.d.ts.map +1 -1
  107. package/dist/types/utils/mapFill.d.ts +3 -2
  108. package/dist/types/utils/mapFill.d.ts.map +1 -1
  109. package/dist/types/utils/mapOrder.d.ts +6 -2
  110. package/dist/types/utils/mapOrder.d.ts.map +1 -1
  111. package/dist/types/utils/mapPortfolioHistory.d.ts +3 -2
  112. package/dist/types/utils/mapPortfolioHistory.d.ts.map +1 -1
  113. package/dist/types/utils/mapPosition.d.ts +12 -4
  114. package/dist/types/utils/mapPosition.d.ts.map +1 -1
  115. package/dist/types/utils/venueValues.d.ts +6 -0
  116. package/dist/types/utils/venueValues.d.ts.map +1 -0
  117. package/dist/types/utils/withdrawableBalances.d.ts +2 -2
  118. package/dist/types/utils/withdrawableBalances.d.ts.map +1 -1
  119. package/dist/types/websocket/OndoWsProvider.d.ts +6 -1
  120. package/dist/types/websocket/OndoWsProvider.d.ts.map +1 -1
  121. package/package.json +3 -3
  122. package/src/OndoProvider.ts +50 -36
  123. package/src/auth/sessionToken.ts +57 -0
  124. package/src/auth/signActions.ts +14 -36
  125. package/src/utils/availableToTrade.ts +30 -21
  126. package/src/utils/index.ts +1 -2
  127. package/src/utils/mapActivity.ts +35 -10
  128. package/src/utils/mapFill.ts +46 -27
  129. package/src/utils/mapOrder.ts +89 -28
  130. package/src/utils/mapPortfolioHistory.ts +21 -19
  131. package/src/utils/mapPosition.ts +55 -23
  132. package/src/utils/venueValues.ts +23 -0
  133. package/src/utils/withdrawableBalances.ts +15 -11
  134. package/src/websocket/OndoWsProvider.ts +66 -18
  135. package/dist/cjs/utils/decimal.d.ts +0 -3
  136. package/dist/cjs/utils/decimal.d.ts.map +0 -1
  137. package/dist/cjs/utils/decimal.js +0 -22
  138. package/dist/cjs/utils/decimal.js.map +0 -1
  139. package/dist/cjs/utils/liquidation.d.ts +0 -4
  140. package/dist/cjs/utils/liquidation.d.ts.map +0 -1
  141. package/dist/cjs/utils/liquidation.js +0 -16
  142. package/dist/cjs/utils/liquidation.js.map +0 -1
  143. package/dist/esm/utils/decimal.d.ts +0 -10
  144. package/dist/esm/utils/decimal.d.ts.map +0 -1
  145. package/dist/esm/utils/decimal.js +0 -22
  146. package/dist/esm/utils/decimal.js.map +0 -1
  147. package/dist/esm/utils/liquidation.d.ts +0 -20
  148. package/dist/esm/utils/liquidation.d.ts.map +0 -1
  149. package/dist/esm/utils/liquidation.js +0 -29
  150. package/dist/esm/utils/liquidation.js.map +0 -1
  151. package/dist/types/utils/decimal.d.ts +0 -10
  152. package/dist/types/utils/decimal.d.ts.map +0 -1
  153. package/dist/types/utils/liquidation.d.ts +0 -20
  154. package/dist/types/utils/liquidation.d.ts.map +0 -1
  155. package/src/utils/decimal.ts +0 -24
  156. package/src/utils/liquidation.ts +0 -37
@@ -4,8 +4,13 @@ exports.mapWithdrawalActivity = exports.mapDepositActivity = exports.mapLiquidat
4
4
  const perps_sdk_1 = require("@lifi/perps-sdk");
5
5
  const perps_types_1 = require("@lifi/perps-types");
6
6
  const constants_js_1 = require("../constants.js");
7
+ const venueValues_js_1 = require("./venueValues.js");
8
+ const activityTimestamp = (row, time) => (0, venueValues_js_1.rowTimestampToIsoStringOrWarn)(row, 'time', time);
7
9
  const mapFundingActivity = (transfer, market) => {
8
- const timestamp = new Date(transfer.time).toISOString();
10
+ const timestamp = activityTimestamp('funding', transfer.time);
11
+ if (timestamp === undefined) {
12
+ return null;
13
+ }
9
14
  return {
10
15
  id: `funding:${transfer.market}:${timestamp}`,
11
16
  provider: constants_js_1.ONDO_PROVIDER_KEY,
@@ -27,10 +32,14 @@ const mapLiquidationActivity = (event, resolveMarket) => {
27
32
  if (firstPosition === undefined) {
28
33
  return null;
29
34
  }
35
+ const timestamp = activityTimestamp('liquidation', event.time);
36
+ if (timestamp === undefined) {
37
+ return null;
38
+ }
30
39
  return {
31
40
  id: event.id,
32
41
  provider: constants_js_1.ONDO_PROVIDER_KEY,
33
- timestamp: new Date(event.time).toISOString(),
42
+ timestamp,
34
43
  type: perps_types_1.ActivityType.LIQUIDATION,
35
44
  ...(event.filledQuoteSize === undefined
36
45
  ? {}
@@ -60,11 +69,15 @@ const ondoExplorerLink = (chainId, txid) => {
60
69
  : (0, perps_sdk_1.explorerTxUrl)(explorerChainId, txid);
61
70
  };
62
71
  const mapDepositActivity = (deposit, assetRegistry) => {
72
+ const timestamp = activityTimestamp('deposit', deposit.time);
73
+ if (timestamp === undefined) {
74
+ return null;
75
+ }
63
76
  const explorerLink = ondoExplorerLink(deposit.chainId, deposit.txid);
64
77
  return {
65
78
  id: depositId(deposit),
66
79
  provider: constants_js_1.ONDO_PROVIDER_KEY,
67
- timestamp: new Date(deposit.time).toISOString(),
80
+ timestamp,
68
81
  type: perps_types_1.ActivityType.DEPOSIT,
69
82
  asset: assetRegistry.require(deposit.coin),
70
83
  amount: deposit.size,
@@ -87,11 +100,15 @@ const mapWithdrawalActivity = (withdrawal, assetRegistry) => {
87
100
  if (!SETTLING_WITHDRAWAL_STATUSES.has(withdrawal.status)) {
88
101
  return null;
89
102
  }
103
+ const timestamp = activityTimestamp('withdrawal', withdrawal.time);
104
+ if (timestamp === undefined) {
105
+ return null;
106
+ }
90
107
  const explorerLink = ondoExplorerLink(withdrawal.chainId, withdrawal.txid);
91
108
  return {
92
109
  id: withdrawal.withdrawal_id,
93
110
  provider: constants_js_1.ONDO_PROVIDER_KEY,
94
- timestamp: new Date(withdrawal.time).toISOString(),
111
+ timestamp,
95
112
  type: perps_types_1.ActivityType.WITHDRAWAL,
96
113
  asset: assetRegistry.require(withdrawal.coin),
97
114
  amount: withdrawal.size,
@@ -1 +1 @@
1
- {"version":3,"file":"mapActivity.js","sourceRoot":"","sources":["../../../src/utils/mapActivity.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mapActivity.js","sourceRoot":"","sources":["../../../src/utils/mapActivity.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
1
  import type { Fill, MarketDisplay } from '@lifi/perps-types';
2
2
  import type { OndoFill } from '../types/wire.js';
3
- export declare const mapFill: (fill: OndoFill, market: MarketDisplay) => Fill;
3
+ export declare const mapFill: (fill: OndoFill, market: MarketDisplay) => Fill | undefined;
4
4
  //# sourceMappingURL=mapFill.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"mapFill.d.ts","sourceRoot":"","sources":["../../../src/utils/mapFill.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAE5D,OAAO,KAAK,EAAE,QAAQ,EAAqB,MAAM,kBAAkB,CAAA;AAqBnE,eAAO,MAAM,OAAO,GAAI,MAAM,QAAQ,EAAE,QAAQ,aAAa,KAAG,IAwB9D,CAAA"}
1
+ {"version":3,"file":"mapFill.d.ts","sourceRoot":"","sources":["../../../src/utils/mapFill.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAE5D,OAAO,KAAK,EAAE,QAAQ,EAAqB,MAAM,kBAAkB,CAAA;AA0BnE,eAAO,MAAM,OAAO,GAClB,MAAM,QAAQ,EACd,QAAQ,aAAa,KACpB,IAAI,GAAG,SAkCT,CAAA"}
@@ -1,8 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.mapFill = void 0;
4
+ const perps_sdk_1 = require("@lifi/perps-sdk");
4
5
  const perps_types_1 = require("@lifi/perps-types");
5
- const decimal_js_1 = require("./decimal.js");
6
+ const venueValues_js_1 = require("./venueValues.js");
6
7
  const DIRECTION_CLASSIFICATIONS = {
7
8
  openLong: perps_types_1.FillClassification.OPENED_LONG,
8
9
  openShort: perps_types_1.FillClassification.OPENED_SHORT,
@@ -11,28 +12,33 @@ const DIRECTION_CLASSIFICATIONS = {
11
12
  flipLongToShort: perps_types_1.FillClassification.SWITCHED_SHORT,
12
13
  flipShortToLong: perps_types_1.FillClassification.SWITCHED_LONG,
13
14
  };
14
- const mapFill = (fill, market) => ({
15
- id: fill.id,
16
- orderId: fill.orderId,
17
- clientOrderId: fill.clientOrderId,
18
- market,
19
- side: fill.side === 'buy' ? perps_types_1.OrderSide.BUY : perps_types_1.OrderSide.SELL,
20
- size: fill.size,
21
- price: fill.price,
22
- liquidity: fill.isMaker ? perps_types_1.LiquidityRole.MAKER : perps_types_1.LiquidityRole.TAKER,
23
- fee: {
24
- amount: (0, decimal_js_1.toWireBig)(fill.fee, 'fee')
25
- .minus((0, decimal_js_1.toWireBig)(fill.feeRebate ?? '0', 'feeRebate'))
26
- .toFixed(),
27
- asset: market.quoteAsset.displaySymbol,
28
- },
29
- realizedPnl: fill.pnl,
30
- classification: fill.direction !== undefined
31
- ? DIRECTION_CLASSIFICATIONS[fill.direction]
32
- : fill.side === 'buy'
33
- ? perps_types_1.FillClassification.OPENED_LONG
34
- : perps_types_1.FillClassification.OPENED_SHORT,
35
- createdAt: new Date(fill.time).toISOString(),
36
- });
15
+ const netFeeAmount = (fill) => (0, perps_sdk_1.safeSubtractDecimalString)(fill.fee, fill.feeRebate ?? '0');
16
+ const mapFill = (fill, market) => {
17
+ const createdAt = (0, venueValues_js_1.rowTimestampToIsoStringOrWarn)('fill', 'time', fill.time, market.id);
18
+ if (createdAt === undefined) {
19
+ return undefined;
20
+ }
21
+ const feeAmount = netFeeAmount(fill);
22
+ return {
23
+ id: fill.id,
24
+ orderId: fill.orderId,
25
+ clientOrderId: fill.clientOrderId,
26
+ market,
27
+ side: fill.side === 'buy' ? perps_types_1.OrderSide.BUY : perps_types_1.OrderSide.SELL,
28
+ size: fill.size,
29
+ price: fill.price,
30
+ liquidity: fill.isMaker ? perps_types_1.LiquidityRole.MAKER : perps_types_1.LiquidityRole.TAKER,
31
+ fee: feeAmount === undefined
32
+ ? undefined
33
+ : { amount: feeAmount, asset: market.quoteAsset.displaySymbol },
34
+ realizedPnl: fill.pnl,
35
+ classification: fill.direction !== undefined
36
+ ? DIRECTION_CLASSIFICATIONS[fill.direction]
37
+ : fill.side === 'buy'
38
+ ? perps_types_1.FillClassification.BUY
39
+ : perps_types_1.FillClassification.SELL,
40
+ createdAt,
41
+ };
42
+ };
37
43
  exports.mapFill = mapFill;
38
44
  //# sourceMappingURL=mapFill.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"mapFill.js","sourceRoot":"","sources":["../../../src/utils/mapFill.ts"],"names":[],"mappings":";;;AACA,mDAAgF;AAEhF,6CAAwC;AAExC,MAAM,yBAAyB,GAC7B;IACE,QAAQ,EAAE,gCAAkB,CAAC,WAAW;IACxC,SAAS,EAAE,gCAAkB,CAAC,YAAY;IAC1C,SAAS,EAAE,gCAAkB,CAAC,WAAW;IACzC,UAAU,EAAE,gCAAkB,CAAC,YAAY;IAC3C,eAAe,EAAE,gCAAkB,CAAC,cAAc;IAClD,eAAe,EAAE,gCAAkB,CAAC,aAAa;CAClD,CAAA;AAUI,MAAM,OAAO,GAAG,CAAC,IAAc,EAAE,MAAqB,EAAQ,EAAE,CAAC,CAAC;IACvE,EAAE,EAAE,IAAI,CAAC,EAAE;IACX,OAAO,EAAE,IAAI,CAAC,OAAO;IACrB,aAAa,EAAE,IAAI,CAAC,aAAa;IACjC,MAAM;IACN,IAAI,EAAE,IAAI,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,uBAAS,CAAC,GAAG,CAAC,CAAC,CAAC,uBAAS,CAAC,IAAI;IAC1D,IAAI,EAAE,IAAI,CAAC,IAAI;IACf,KAAK,EAAE,IAAI,CAAC,KAAK;IACjB,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,2BAAa,CAAC,KAAK,CAAC,CAAC,CAAC,2BAAa,CAAC,KAAK;IAEnE,GAAG,EAAE;QACH,MAAM,EAAE,IAAA,sBAAS,EAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC;aAC/B,KAAK,CAAC,IAAA,sBAAS,EAAC,IAAI,CAAC,SAAS,IAAI,GAAG,EAAE,WAAW,CAAC,CAAC;aACpD,OAAO,EAAE;QACZ,KAAK,EAAE,MAAM,CAAC,UAAU,CAAC,aAAa;KACvC;IACD,WAAW,EAAE,IAAI,CAAC,GAAG;IACrB,cAAc,EACZ,IAAI,CAAC,SAAS,KAAK,SAAS;QAC1B,CAAC,CAAC,yBAAyB,CAAC,IAAI,CAAC,SAAS,CAAC;QAC3C,CAAC,CAAC,IAAI,CAAC,IAAI,KAAK,KAAK;YACnB,CAAC,CAAC,gCAAkB,CAAC,WAAW;YAChC,CAAC,CAAC,gCAAkB,CAAC,YAAY;IACvC,SAAS,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE;CAC7C,CAAC,CAAA;AAxBW,QAAA,OAAO,WAwBlB"}
1
+ {"version":3,"file":"mapFill.js","sourceRoot":"","sources":["../../../src/utils/mapFill.ts"],"names":[],"mappings":";;;AAAA,+CAA2D;AAE3D,mDAAgF;AAEhF,qDAAgE;AAEhE,MAAM,yBAAyB,GAC7B;IACE,QAAQ,EAAE,gCAAkB,CAAC,WAAW;IACxC,SAAS,EAAE,gCAAkB,CAAC,YAAY;IAC1C,SAAS,EAAE,gCAAkB,CAAC,WAAW;IACzC,UAAU,EAAE,gCAAkB,CAAC,YAAY;IAC3C,eAAe,EAAE,gCAAkB,CAAC,cAAc;IAClD,eAAe,EAAE,gCAAkB,CAAC,aAAa;CAClD,CAAA;AAGH,MAAM,YAAY,GAAG,CAAC,IAAc,EAAsB,EAAE,CAC1D,IAAA,qCAAyB,EAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,IAAI,GAAG,CAAC,CAAA;AAWrD,MAAM,OAAO,GAAG,CACrB,IAAc,EACd,MAAqB,EACH,EAAE;IACpB,MAAM,SAAS,GAAG,IAAA,8CAA6B,EAC7C,MAAM,EACN,MAAM,EACN,IAAI,CAAC,IAAI,EACT,MAAM,CAAC,EAAE,CACV,CAAA;IACD,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;QAC5B,OAAO,SAAS,CAAA;IAClB,CAAC;IACD,MAAM,SAAS,GAAG,YAAY,CAAC,IAAI,CAAC,CAAA;IACpC,OAAO;QACL,EAAE,EAAE,IAAI,CAAC,EAAE;QACX,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,aAAa,EAAE,IAAI,CAAC,aAAa;QACjC,MAAM;QACN,IAAI,EAAE,IAAI,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,uBAAS,CAAC,GAAG,CAAC,CAAC,CAAC,uBAAS,CAAC,IAAI;QAC1D,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,2BAAa,CAAC,KAAK,CAAC,CAAC,CAAC,2BAAa,CAAC,KAAK;QAEnE,GAAG,EACD,SAAS,KAAK,SAAS;YACrB,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,CAAC,UAAU,CAAC,aAAa,EAAE;QACnE,WAAW,EAAE,IAAI,CAAC,GAAG;QACrB,cAAc,EACZ,IAAI,CAAC,SAAS,KAAK,SAAS;YAC1B,CAAC,CAAC,yBAAyB,CAAC,IAAI,CAAC,SAAS,CAAC;YAC3C,CAAC,CAAC,IAAI,CAAC,IAAI,KAAK,KAAK;gBACnB,CAAC,CAAC,gCAAkB,CAAC,GAAG;gBACxB,CAAC,CAAC,gCAAkB,CAAC,IAAI;QAC/B,SAAS;KACV,CAAA;AACH,CAAC,CAAA;AArCY,QAAA,OAAO,WAqCnB"}
@@ -1,7 +1,7 @@
1
1
  import { type MarketDisplay, type Order, OrderStatus } from '@lifi/perps-types';
2
2
  import type { OndoOrder, OndoTwapOrder } from '../types/wire.js';
3
3
  export declare const mapOrderStatus: (status: string) => OrderStatus;
4
- export declare const mapOrder: (order: OndoOrder | OndoTwapOrder, market: MarketDisplay, parentOrderId?: string) => Order;
4
+ export declare const mapOrder: (order: OndoOrder | OndoTwapOrder, market: MarketDisplay, parentOrderId?: string) => Order | undefined;
5
5
  export declare const mapOrderUpdates: (rows: OndoOrder[], resolveMarket: (market: string) => MarketDisplay | undefined) => {
6
6
  orders: Order[];
7
7
  terminated: string[];
@@ -1 +1 @@
1
- {"version":3,"file":"mapOrder.d.ts","sourceRoot":"","sources":["../../../src/utils/mapOrder.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,KAAK,EAGV,WAAW,EAIZ,MAAM,mBAAmB,CAAA;AAC1B,OAAO,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAIhE,eAAO,MAAM,cAAc,GAAI,QAAQ,MAAM,KAAG,WAiB/C,CAAA;AAiCD,eAAO,MAAM,QAAQ,GACnB,OAAO,SAAS,GAAG,aAAa,EAChC,QAAQ,aAAa,EACrB,gBAAgB,MAAM,KACrB,KA2GF,CAAA;AAOD,eAAO,MAAM,eAAe,GAC1B,MAAM,SAAS,EAAE,EACjB,eAAe,CAAC,MAAM,EAAE,MAAM,KAAK,aAAa,GAAG,SAAS,KAC3D;IAAE,MAAM,EAAE,KAAK,EAAE,CAAC;IAAC,UAAU,EAAE,MAAM,EAAE,CAAA;CA0BzC,CAAA"}
1
+ {"version":3,"file":"mapOrder.d.ts","sourceRoot":"","sources":["../../../src/utils/mapOrder.ts"],"names":[],"mappings":"AAWA,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,KAAK,EAGV,WAAW,EAIZ,MAAM,mBAAmB,CAAA;AAE1B,OAAO,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAyBhE,eAAO,MAAM,cAAc,GAAI,QAAQ,MAAM,KAAG,WAiB/C,CAAA;AAqCD,eAAO,MAAM,QAAQ,GACnB,OAAO,SAAS,GAAG,aAAa,EAChC,QAAQ,aAAa,EACrB,gBAAgB,MAAM,KACrB,KAAK,GAAG,SAmIV,CAAA;AAOD,eAAO,MAAM,eAAe,GAC1B,MAAM,SAAS,EAAE,EACjB,eAAe,CAAC,MAAM,EAAE,MAAM,KAAK,aAAa,GAAG,SAAS,KAC3D;IAAE,MAAM,EAAE,KAAK,EAAE,CAAC;IAAC,UAAU,EAAE,MAAM,EAAE,CAAA;CA+BzC,CAAA"}
@@ -3,7 +3,20 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.mapOrderUpdates = exports.mapOrder = exports.mapOrderStatus = void 0;
4
4
  const perps_sdk_1 = require("@lifi/perps-sdk");
5
5
  const perps_types_1 = require("@lifi/perps-types");
6
- const decimal_js_1 = require("./decimal.js");
6
+ const constants_js_1 = require("../constants.js");
7
+ const venueValues_js_1 = require("./venueValues.js");
8
+ const skipOrder = (marketId, field, value) => {
9
+ (0, perps_sdk_1.warnSkippedVenueRow)(constants_js_1.ONDO_PROVIDER_KEY, 'order', field, value, { marketId });
10
+ return undefined;
11
+ };
12
+ const orderSizeOrSkip = (marketId, field, value) => {
13
+ try {
14
+ return (0, perps_sdk_1.unknownToDecimalString)(value, field, constants_js_1.ONDO_PROVIDER_KEY);
15
+ }
16
+ catch {
17
+ return skipOrder(marketId, field, value);
18
+ }
19
+ };
7
20
  const mapOrderStatus = (status) => {
8
21
  switch (status) {
9
22
  case 'open':
@@ -44,36 +57,53 @@ const mapTimeInForce = (tif) => {
44
57
  };
45
58
  const mapOrder = (order, market, parentOrderId) => {
46
59
  const twap = 'twapId' in order;
47
- const filled = (0, decimal_js_1.toWireBig)(order.filledSize, 'filledSize');
48
- const totalSize = twap
49
- ? (0, decimal_js_1.toWireBig)(order.totalSize, 'totalSize')
50
- : (0, decimal_js_1.toWireBig)(order.size, 'size');
60
+ const filledSize = orderSizeOrSkip(market.id, 'filledSize', order.filledSize);
61
+ if (filledSize === undefined) {
62
+ return undefined;
63
+ }
64
+ const sizeValue = twap
65
+ ? orderSizeOrSkip(market.id, 'totalSize', order.totalSize)
66
+ : orderSizeOrSkip(market.id, 'size', order.size);
67
+ if (sizeValue === undefined) {
68
+ return undefined;
69
+ }
70
+ const isPartlyFilled = (0, perps_sdk_1.isDecimalStringGreaterThan)(filledSize, '0');
51
71
  const status = twap
52
72
  ? twapStatus(order.orderStatus)
53
73
  : (0, exports.mapOrderStatus)(order.status);
54
- const createdAt = new Date(twap ? order.startTime : order.createdAt).toISOString();
74
+ const [createdField, createdValue] = twap
75
+ ? ['startTime', order.startTime]
76
+ : ['createdAt', order.createdAt];
77
+ const createdAt = (0, venueValues_js_1.rowTimestampToIsoStringOrWarn)('order', createdField, createdValue, market.id);
78
+ if (createdAt === undefined) {
79
+ return undefined;
80
+ }
81
+ const updatedValue = twap
82
+ ? (order.finishTime ?? order.startTime)
83
+ : (order.canceledAt ?? order.filledAt ?? order.createdAt);
84
+ const updatedAt = (0, venueValues_js_1.rowTimestampToIsoStringOrWarn)('order', 'updatedAt', updatedValue, market.id);
85
+ if (updatedAt === undefined) {
86
+ return undefined;
87
+ }
88
+ const averagePrice = twap
89
+ ? order.avgFilledPrice
90
+ : isPartlyFilled
91
+ ? (0, perps_sdk_1.safeDivideDecimalString)(order.filledCost, filledSize)
92
+ : undefined;
55
93
  const base = {
56
94
  orderId: twap ? order.twapId : order.orderId,
57
95
  market,
58
96
  side: order.side === 'buy' ? perps_types_1.OrderSide.BUY : perps_types_1.OrderSide.SELL,
59
- status: status === perps_types_1.OrderStatus.OPEN && filled.gt(0)
97
+ status: status === perps_types_1.OrderStatus.OPEN && isPartlyFilled
60
98
  ? perps_types_1.OrderStatus.PARTIALLY_FILLED
61
99
  : status,
62
- originalSize: totalSize.toFixed(),
63
- remainingSize: totalSize.minus(filled).toFixed(),
64
- filledSize: order.filledSize,
100
+ originalSize: sizeValue,
101
+ remainingSize: (0, perps_sdk_1.subtractDecimalString)(sizeValue, filledSize),
102
+ filledSize,
65
103
  reduceOnly: order.reduceOnly ?? false,
66
104
  createdAt,
67
- updatedAt: new Date(twap
68
- ? (order.finishTime ?? order.startTime)
69
- : (order.canceledAt ?? order.filledAt ?? order.createdAt)).toISOString(),
70
- ...(filled.gt(0)
71
- ? {
72
- averagePrice: twap
73
- ? order.avgFilledPrice
74
- : (0, decimal_js_1.toWireBig)(order.filledCost, 'filledCost').div(filled).toFixed(),
75
- }
76
- : {}),
105
+ updatedAt,
106
+ ...(isPartlyFilled && averagePrice !== undefined ? { averagePrice } : {}),
77
107
  };
78
108
  if (parentOrderId !== undefined) {
79
109
  base.parentOrderId = parentOrderId;
@@ -125,12 +155,13 @@ const mapOrder = (order, market, parentOrderId) => {
125
155
  ...(limit ? { limitPrice: order.price } : {}),
126
156
  };
127
157
  }
158
+ const marketOrder = order.type === 'market';
128
159
  return {
129
160
  ...base,
130
- type: order.type === 'market' ? perps_types_1.OrderType.MARKET : perps_types_1.OrderType.LIMIT,
161
+ type: marketOrder ? perps_types_1.OrderType.MARKET : perps_types_1.OrderType.LIMIT,
131
162
  price: order.price,
132
163
  timeInForce: order.timeInForce === undefined
133
- ? order.type === 'market'
164
+ ? marketOrder
134
165
  ? perps_types_1.TimeInForce.IOC
135
166
  : perps_types_1.TimeInForce.GTC
136
167
  : mapTimeInForce(order.timeInForce),
@@ -152,6 +183,7 @@ const mapOrderUpdates = (rows, resolveMarket) => {
152
183
  if (!(error instanceof perps_sdk_1.PerpsError)) {
153
184
  throw error;
154
185
  }
186
+ perps_sdk_1.wsLog.droppedRow(constants_js_1.ONDO_PROVIDER_KEY, 'order', `${row.orderId}: ${error.message}`);
155
187
  continue;
156
188
  }
157
189
  if (!perps_sdk_1.ACTIVE_ORDER_STATUSES.has(status)) {
@@ -1 +1 @@
1
- {"version":3,"file":"mapOrder.js","sourceRoot":"","sources":["../../../src/utils/mapOrder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mapOrder.js","sourceRoot":"","sources":["../../../src/utils/mapOrder.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { type PortfolioHistoryRange, type PortfolioHistoryResponse } from '@lifi/perps-types';
1
+ import type { PortfolioHistoryRange, PortfolioHistoryResponse } from '@lifi/perps-types';
2
2
  import type { OndoPortfolioGraphPoint, OndoPortfolioSummary } from '../types/wire.js';
3
3
  export declare const mapPortfolioHistory: (range: PortfolioHistoryRange, graph: OndoPortfolioGraphPoint[], summary: OndoPortfolioSummary) => PortfolioHistoryResponse;
4
4
  //# sourceMappingURL=mapPortfolioHistory.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"mapPortfolioHistory.d.ts","sourceRoot":"","sources":["../../../src/utils/mapPortfolioHistory.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,KAAK,qBAAqB,EAC1B,KAAK,wBAAwB,EAC9B,MAAM,mBAAmB,CAAA;AAC1B,OAAO,KAAK,EACV,uBAAuB,EACvB,oBAAoB,EACrB,MAAM,kBAAkB,CAAA;AAmCzB,eAAO,MAAM,mBAAmB,GAC9B,OAAO,qBAAqB,EAC5B,OAAO,uBAAuB,EAAE,EAChC,SAAS,oBAAoB,KAC5B,wBAYF,CAAA"}
1
+ {"version":3,"file":"mapPortfolioHistory.d.ts","sourceRoot":"","sources":["../../../src/utils/mapPortfolioHistory.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAEV,qBAAqB,EACrB,wBAAwB,EACzB,MAAM,mBAAmB,CAAA;AAE1B,OAAO,KAAK,EACV,uBAAuB,EACvB,oBAAoB,EACrB,MAAM,kBAAkB,CAAA;AAwCzB,eAAO,MAAM,mBAAmB,GAC9B,OAAO,qBAAqB,EAC5B,OAAO,uBAAuB,EAAE,EAChC,SAAS,oBAAoB,KAC5B,wBAQF,CAAA"}
@@ -2,7 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.mapPortfolioHistory = void 0;
4
4
  const perps_sdk_1 = require("@lifi/perps-sdk");
5
- const perps_types_1 = require("@lifi/perps-types");
5
+ const constants_js_1 = require("../constants.js");
6
6
  const summaryVolume = (summary, range) => {
7
7
  switch (range) {
8
8
  case '7d':
@@ -15,19 +15,19 @@ const summaryVolume = (summary, range) => {
15
15
  return undefined;
16
16
  }
17
17
  };
18
- const pointTimestamp = (time) => {
19
- const parsed = Date.parse(time);
20
- if (Number.isNaN(parsed)) {
21
- throw new perps_sdk_1.PerpsError(perps_types_1.PerpsErrorCode.ThirdPartyError, `Ondo portfolio graph point carries an unparsable time '${time}'.`);
18
+ const POINT_ROW = 'portfolio point';
19
+ const mapPoint = (point) => {
20
+ const timestamp = Date.parse(point.time);
21
+ if (Number.isNaN(timestamp)) {
22
+ (0, perps_sdk_1.warnSkippedVenueRow)(constants_js_1.ONDO_PROVIDER_KEY, POINT_ROW, 'time', point.time, {
23
+ expected: 'timestamp',
24
+ });
25
+ return undefined;
22
26
  }
23
- return parsed;
27
+ return { timestamp, accountValue: point.marginBalance, pnl: point.totalPnL };
24
28
  };
25
29
  const mapPortfolioHistory = (range, graph, summary) => {
26
- const points = graph.map((point) => ({
27
- timestamp: pointTimestamp(point.time),
28
- accountValue: point.marginBalance,
29
- pnl: point.totalPnL,
30
- }));
30
+ const points = graph.flatMap((point) => mapPoint(point) ?? []);
31
31
  return {
32
32
  range,
33
33
  points,
@@ -1 +1 @@
1
- {"version":3,"file":"mapPortfolioHistory.js","sourceRoot":"","sources":["../../../src/utils/mapPortfolioHistory.ts"],"names":[],"mappings":";;;AAAA,+CAA4C;AAC5C,mDAI0B;AAM1B,MAAM,aAAa,GAAG,CACpB,OAA6B,EAC7B,KAA4B,EACR,EAAE;IACtB,QAAQ,KAAK,EAAE,CAAC;QACd,KAAK,IAAI;YACP,OAAO,OAAO,CAAC,QAAQ,CAAA;QACzB,KAAK,KAAK;YACR,OAAO,OAAO,CAAC,SAAS,CAAA;QAC1B,KAAK,KAAK;YACR,OAAO,OAAO,CAAC,aAAa,CAAA;QAC9B,KAAK,KAAK;YACR,OAAO,SAAS,CAAA;IACpB,CAAC;AACH,CAAC,CAAA;AAED,MAAM,cAAc,GAAG,CAAC,IAAY,EAAU,EAAE;IAC9C,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;IAC/B,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;QACzB,MAAM,IAAI,sBAAU,CAClB,4BAAc,CAAC,eAAe,EAC9B,0DAA0D,IAAI,IAAI,CACnE,CAAA;IACH,CAAC;IACD,OAAO,MAAM,CAAA;AACf,CAAC,CAAA;AAQM,MAAM,mBAAmB,GAAG,CACjC,KAA4B,EAC5B,KAAgC,EAChC,OAA6B,EACH,EAAE;IAC5B,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QACnC,SAAS,EAAE,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC;QACrC,YAAY,EAAE,KAAK,CAAC,aAAa;QACjC,GAAG,EAAE,KAAK,CAAC,QAAQ;KACpB,CAAC,CAAC,CAAA;IACH,OAAO;QACL,KAAK;QACL,MAAM;QACN,MAAM,EAAE,aAAa,CAAC,OAAO,EAAE,KAAK,CAAC;QACrC,QAAQ,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG;KAC7B,CAAA;AACH,CAAC,CAAA;AAhBY,QAAA,mBAAmB,uBAgB/B"}
1
+ {"version":3,"file":"mapPortfolioHistory.js","sourceRoot":"","sources":["../../../src/utils/mapPortfolioHistory.ts"],"names":[],"mappings":";;;AAAA,+CAAqD;AAMrD,kDAAmD;AAMnD,MAAM,aAAa,GAAG,CACpB,OAA6B,EAC7B,KAA4B,EACR,EAAE;IACtB,QAAQ,KAAK,EAAE,CAAC;QACd,KAAK,IAAI;YACP,OAAO,OAAO,CAAC,QAAQ,CAAA;QACzB,KAAK,KAAK;YACR,OAAO,OAAO,CAAC,SAAS,CAAA;QAC1B,KAAK,KAAK;YACR,OAAO,OAAO,CAAC,aAAa,CAAA;QAC9B,KAAK,KAAK;YACR,OAAO,SAAS,CAAA;IACpB,CAAC;AACH,CAAC,CAAA;AAED,MAAM,SAAS,GAAG,iBAAiB,CAAA;AAEnC,MAAM,QAAQ,GAAG,CACf,KAA8B,EACK,EAAE;IACrC,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;IACxC,IAAI,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC;QAC5B,IAAA,+BAAmB,EAAC,gCAAiB,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,IAAI,EAAE;YACpE,QAAQ,EAAE,WAAW;SACtB,CAAC,CAAA;QACF,OAAO,SAAS,CAAA;IAClB,CAAC;IACD,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,KAAK,CAAC,aAAa,EAAE,GAAG,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAA;AAC9E,CAAC,CAAA;AASM,MAAM,mBAAmB,GAAG,CACjC,KAA4B,EAC5B,KAAgC,EAChC,OAA6B,EACH,EAAE;IAC5B,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAA;IAC9D,OAAO;QACL,KAAK;QACL,MAAM;QACN,MAAM,EAAE,aAAa,CAAC,OAAO,EAAE,KAAK,CAAC;QACrC,QAAQ,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG;KAC7B,CAAA;AACH,CAAC,CAAA;AAZY,QAAA,mBAAmB,uBAY/B"}
@@ -1,5 +1,6 @@
1
1
  import type { PerpsMarketDisplay, Position } from '@lifi/perps-types';
2
2
  import type { OndoPosition } from '../types/wire.js';
3
- export declare const mapPosition: (pos: OndoPosition, market: PerpsMarketDisplay) => Position;
3
+ export declare const mapPosition: (pos: OndoPosition, market: PerpsMarketDisplay) => Position | undefined;
4
+ export declare const isOpenPosition: (p: OndoPosition) => boolean;
4
5
  export declare const mapOpenPositions: (positions: OndoPosition[], resolveMarket: (market: string) => PerpsMarketDisplay) => Position[];
5
6
  //# sourceMappingURL=mapPosition.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"mapPosition.d.ts","sourceRoot":"","sources":["../../../src/utils/mapPosition.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAErE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAUpD,eAAO,MAAM,WAAW,GACtB,KAAK,YAAY,EACjB,QAAQ,kBAAkB,KACzB,QAaD,CAAA;AASF,eAAO,MAAM,gBAAgB,GAC3B,WAAW,YAAY,EAAE,EACzB,eAAe,CAAC,MAAM,EAAE,MAAM,KAAK,kBAAkB,KACpD,QAAQ,EAK6C,CAAA"}
1
+ {"version":3,"file":"mapPosition.d.ts","sourceRoot":"","sources":["../../../src/utils/mapPosition.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,kBAAkB,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAGrE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAUpD,eAAO,MAAM,WAAW,GACtB,KAAK,YAAY,EACjB,QAAQ,kBAAkB,KACzB,QAAQ,GAAG,SA8Bb,CAAA;AAOD,eAAO,MAAM,cAAc,GAAI,GAAG,YAAY,KAAG,OAC6B,CAAA;AAU9E,eAAO,MAAM,gBAAgB,GAC3B,WAAW,YAAY,EAAE,EACzB,eAAe,CAAC,MAAM,EAAE,MAAM,KAAK,kBAAkB,KACpD,QAAQ,EAIP,CAAA"}
@@ -1,25 +1,39 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.mapOpenPositions = exports.mapPosition = void 0;
3
+ exports.mapOpenPositions = exports.isOpenPosition = exports.mapPosition = void 0;
4
+ const perps_sdk_1 = require("@lifi/perps-sdk");
4
5
  const perps_types_1 = require("@lifi/perps-types");
5
- const decimal_js_1 = require("./decimal.js");
6
- const mapPosition = (pos, market) => ({
7
- market,
8
- side: pos.direction === 'short' ? perps_types_1.PositionSide.SHORT : perps_types_1.PositionSide.LONG,
9
- size: (0, decimal_js_1.toWireBig)(pos.netQuantity, 'netQuantity').abs().toFixed(),
10
- entryPrice: pos.averageEntryPrice,
11
- markPrice: pos.markPrice,
12
- liquidationPrice: pos.liquidationPrice,
13
- unrealizedPnl: pos.unrealizedPnl,
14
- accruedFunding: pos.netFundingSinceNeutral,
15
- leverage: Number.parseFloat(pos.leverage),
16
- marginUsed: pos.usedMargin,
17
- initialMarginRequirement: pos.usedMargin,
18
- marginMode: perps_types_1.MarginMode.CROSS,
19
- });
6
+ const constants_js_1 = require("../constants.js");
7
+ const mapPosition = (pos, market) => {
8
+ let size;
9
+ try {
10
+ size = (0, perps_sdk_1.absDecimalString)((0, perps_sdk_1.unknownToDecimalString)(pos.netQuantity, 'netQuantity', constants_js_1.ONDO_PROVIDER_KEY));
11
+ }
12
+ catch {
13
+ (0, perps_sdk_1.warnSkippedVenueRow)(constants_js_1.ONDO_PROVIDER_KEY, 'position', 'netQuantity', pos.netQuantity, { marketId: market.id });
14
+ return undefined;
15
+ }
16
+ return {
17
+ market,
18
+ side: pos.direction === 'short' ? perps_types_1.PositionSide.SHORT : perps_types_1.PositionSide.LONG,
19
+ size,
20
+ entryPrice: pos.averageEntryPrice,
21
+ markPrice: pos.markPrice,
22
+ liquidationPrice: pos.liquidationPrice,
23
+ unrealizedPnl: pos.unrealizedPnl,
24
+ accruedFunding: pos.netFundingSinceNeutral,
25
+ leverage: pos.leverage,
26
+ marginUsed: pos.usedMargin,
27
+ initialMarginRequirement: pos.usedMargin,
28
+ marginMode: perps_types_1.MarginMode.CROSS,
29
+ };
30
+ };
20
31
  exports.mapPosition = mapPosition;
21
- const mapOpenPositions = (positions, resolveMarket) => positions
22
- .filter((p) => p.direction !== 'neutral' && Number.parseFloat(p.netQuantity) !== 0)
23
- .map((p) => (0, exports.mapPosition)(p, resolveMarket(p.market)));
32
+ const isOpenPosition = (p) => p.direction !== 'neutral' && (0, perps_sdk_1.safeIsDecimalStringZero)(p.netQuantity) !== true;
33
+ exports.isOpenPosition = isOpenPosition;
34
+ const mapOpenPositions = (positions, resolveMarket) => positions.filter(exports.isOpenPosition).flatMap((p) => {
35
+ const position = (0, exports.mapPosition)(p, resolveMarket(p.market));
36
+ return position === undefined ? [] : [position];
37
+ });
24
38
  exports.mapOpenPositions = mapOpenPositions;
25
39
  //# sourceMappingURL=mapPosition.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"mapPosition.js","sourceRoot":"","sources":["../../../src/utils/mapPosition.ts"],"names":[],"mappings":";;;AACA,mDAA4D;AAE5D,6CAAwC;AASjC,MAAM,WAAW,GAAG,CACzB,GAAiB,EACjB,MAA0B,EAChB,EAAE,CAAC,CAAC;IACd,MAAM;IACN,IAAI,EAAE,GAAG,CAAC,SAAS,KAAK,OAAO,CAAC,CAAC,CAAC,0BAAY,CAAC,KAAK,CAAC,CAAC,CAAC,0BAAY,CAAC,IAAI;IACxE,IAAI,EAAE,IAAA,sBAAS,EAAC,GAAG,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE;IAC/D,UAAU,EAAE,GAAG,CAAC,iBAAiB;IACjC,SAAS,EAAE,GAAG,CAAC,SAAS;IACxB,gBAAgB,EAAE,GAAG,CAAC,gBAAgB;IACtC,aAAa,EAAE,GAAG,CAAC,aAAa;IAChC,cAAc,EAAE,GAAG,CAAC,sBAAsB;IAC1C,QAAQ,EAAE,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC;IACzC,UAAU,EAAE,GAAG,CAAC,UAAU;IAC1B,wBAAwB,EAAE,GAAG,CAAC,UAAU;IACxC,UAAU,EAAE,wBAAU,CAAC,KAAK;CAC7B,CAAC,CAAA;AAhBW,QAAA,WAAW,eAgBtB;AASK,MAAM,gBAAgB,GAAG,CAC9B,SAAyB,EACzB,aAAqD,EACzC,EAAE,CACd,SAAS;KACN,MAAM,CACL,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,SAAS,IAAI,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,CAC3E;KACA,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAA,mBAAW,EAAC,CAAC,EAAE,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;AAR3C,QAAA,gBAAgB,oBAQ2B"}
1
+ {"version":3,"file":"mapPosition.js","sourceRoot":"","sources":["../../../src/utils/mapPosition.ts"],"names":[],"mappings":";;;AAAA,+CAKwB;AAExB,mDAA4D;AAC5D,kDAAmD;AAW5C,MAAM,WAAW,GAAG,CACzB,GAAiB,EACjB,MAA0B,EACJ,EAAE;IACxB,IAAI,IAAY,CAAA;IAChB,IAAI,CAAC;QACH,IAAI,GAAG,IAAA,4BAAgB,EACrB,IAAA,kCAAsB,EAAC,GAAG,CAAC,WAAW,EAAE,aAAa,EAAE,gCAAiB,CAAC,CAC1E,CAAA;IACH,CAAC;IAAC,MAAM,CAAC;QACP,IAAA,+BAAmB,EACjB,gCAAiB,EACjB,UAAU,EACV,aAAa,EACb,GAAG,CAAC,WAAW,EACf,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,EAAE,CACxB,CAAA;QACD,OAAO,SAAS,CAAA;IAClB,CAAC;IACD,OAAO;QACL,MAAM;QACN,IAAI,EAAE,GAAG,CAAC,SAAS,KAAK,OAAO,CAAC,CAAC,CAAC,0BAAY,CAAC,KAAK,CAAC,CAAC,CAAC,0BAAY,CAAC,IAAI;QACxE,IAAI;QACJ,UAAU,EAAE,GAAG,CAAC,iBAAiB;QACjC,SAAS,EAAE,GAAG,CAAC,SAAS;QACxB,gBAAgB,EAAE,GAAG,CAAC,gBAAgB;QACtC,aAAa,EAAE,GAAG,CAAC,aAAa;QAChC,cAAc,EAAE,GAAG,CAAC,sBAAsB;QAC1C,QAAQ,EAAE,GAAG,CAAC,QAAQ;QACtB,UAAU,EAAE,GAAG,CAAC,UAAU;QAC1B,wBAAwB,EAAE,GAAG,CAAC,UAAU;QACxC,UAAU,EAAE,wBAAU,CAAC,KAAK;KAC7B,CAAA;AACH,CAAC,CAAA;AAjCY,QAAA,WAAW,eAiCvB;AAOM,MAAM,cAAc,GAAG,CAAC,CAAe,EAAW,EAAE,CACzD,CAAC,CAAC,SAAS,KAAK,SAAS,IAAI,IAAA,mCAAuB,EAAC,CAAC,CAAC,WAAW,CAAC,KAAK,IAAI,CAAA;AADjE,QAAA,cAAc,kBACmD;AAUvE,MAAM,gBAAgB,GAAG,CAC9B,SAAyB,EACzB,aAAqD,EACzC,EAAE,CACd,SAAS,CAAC,MAAM,CAAC,sBAAc,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;IAC7C,MAAM,QAAQ,GAAG,IAAA,mBAAW,EAAC,CAAC,EAAE,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAA;IACxD,OAAO,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAA;AACjD,CAAC,CAAC,CAAA;AAPS,QAAA,gBAAgB,oBAOzB"}
@@ -0,0 +1,2 @@
1
+ export declare const rowTimestampToIsoStringOrWarn: (row: string, field: string, value: string, marketId?: string) => string | undefined;
2
+ //# sourceMappingURL=venueValues.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"venueValues.d.ts","sourceRoot":"","sources":["../../../src/utils/venueValues.ts"],"names":[],"mappings":"AAOA,eAAO,MAAM,6BAA6B,GACxC,KAAK,MAAM,EACX,OAAO,MAAM,EACb,OAAO,MAAM,EACb,WAAW,MAAM,KAChB,MAAM,GAAG,SAUX,CAAA"}
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.rowTimestampToIsoStringOrWarn = void 0;
4
+ const perps_sdk_1 = require("@lifi/perps-sdk");
5
+ const constants_js_1 = require("../constants.js");
6
+ const rowTimestampToIsoStringOrWarn = (row, field, value, marketId) => {
7
+ try {
8
+ return (0, perps_sdk_1.timestampToIsoString)(value);
9
+ }
10
+ catch {
11
+ (0, perps_sdk_1.warnSkippedVenueRow)(constants_js_1.ONDO_PROVIDER_KEY, row, field, value, {
12
+ marketId,
13
+ expected: 'timestamp',
14
+ });
15
+ return undefined;
16
+ }
17
+ };
18
+ exports.rowTimestampToIsoStringOrWarn = rowTimestampToIsoStringOrWarn;
19
+ //# sourceMappingURL=venueValues.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"venueValues.js","sourceRoot":"","sources":["../../../src/utils/venueValues.ts"],"names":[],"mappings":";;;AAAA,+CAA2E;AAC3E,kDAAmD;AAM5C,MAAM,6BAA6B,GAAG,CAC3C,GAAW,EACX,KAAa,EACb,KAAa,EACb,QAAiB,EACG,EAAE;IACtB,IAAI,CAAC;QACH,OAAO,IAAA,gCAAoB,EAAC,KAAK,CAAC,CAAA;IACpC,CAAC;IAAC,MAAM,CAAC;QACP,IAAA,+BAAmB,EAAC,gCAAiB,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE;YACxD,QAAQ;YACR,QAAQ,EAAE,WAAW;SACtB,CAAC,CAAA;QACF,OAAO,SAAS,CAAA;IAClB,CAAC;AACH,CAAC,CAAA;AAfY,QAAA,6BAA6B,iCAezC"}
@@ -1 +1 @@
1
- {"version":3,"file":"withdrawableBalances.d.ts","sourceRoot":"","sources":["../../../src/utils/withdrawableBalances.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,2BAA2B,EACjC,MAAM,iBAAiB,CAAA;AACxB,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAA;AAgB1D,eAAO,MAAM,wBAAwB,GACnC,SAAS,MAAM,EACf,SAAS,kBAAkB,EAC3B,mBAAmB,MAAM,KACxB,2BAA2B,EAuB7B,CAAA"}
1
+ {"version":3,"file":"withdrawableBalances.d.ts","sourceRoot":"","sources":["../../../src/utils/withdrawableBalances.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,2BAA2B,EAEjC,MAAM,iBAAiB,CAAA;AAExB,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAA;AAe1D,eAAO,MAAM,wBAAwB,GACnC,SAAS,MAAM,EACf,SAAS,kBAAkB,EAC3B,mBAAmB,MAAM,KACxB,2BAA2B,EAyB7B,CAAA"}
@@ -2,20 +2,20 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ondoWithdrawableBalances = void 0;
4
4
  const perps_sdk_1 = require("@lifi/perps-sdk");
5
- const decimal_js_1 = require("./decimal.js");
5
+ const constants_js_1 = require("../constants.js");
6
6
  const ondoWithdrawableBalances = (assetId, balance, withdrawalFeeUsd) => {
7
- const available = (0, decimal_js_1.toWireBig)(balance.withdrawableMargin, 'balance.withdrawableMargin');
8
- if (!available.gt(0)) {
7
+ const available = (0, perps_sdk_1.unknownToDecimalString)(balance.withdrawableMargin, 'balance.withdrawableMargin', constants_js_1.ONDO_PROVIDER_KEY);
8
+ if (!(0, perps_sdk_1.isDecimalStringGreaterThan)(available, '0')) {
9
9
  return [];
10
10
  }
11
11
  const row = {
12
12
  assetId,
13
- route: 'perps',
14
- available: available.toFixed(),
13
+ categoryId: constants_js_1.ONDO_PROVIDER_KEY,
14
+ available,
15
15
  ...(withdrawalFeeUsd === undefined
16
16
  ? {}
17
17
  : {
18
- withdrawalFee: (0, decimal_js_1.toWireBig)(withdrawalFeeUsd, 'account.withdrawalFeeUSD').toFixed(),
18
+ withdrawalFee: (0, perps_sdk_1.unknownToDecimalString)(withdrawalFeeUsd, 'account.withdrawalFeeUSD', constants_js_1.ONDO_PROVIDER_KEY),
19
19
  isFeeDeducted: false,
20
20
  }),
21
21
  };
@@ -1 +1 @@
1
- {"version":3,"file":"withdrawableBalances.js","sourceRoot":"","sources":["../../../src/utils/withdrawableBalances.ts"],"names":[],"mappings":";;;AAAA,+CAGwB;AAExB,6CAAwC;AAejC,MAAM,wBAAwB,GAAG,CACtC,OAAe,EACf,OAA2B,EAC3B,gBAAyB,EACM,EAAE;IACjC,MAAM,SAAS,GAAG,IAAA,sBAAS,EACzB,OAAO,CAAC,kBAAkB,EAC1B,4BAA4B,CAC7B,CAAA;IACD,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrB,OAAO,EAAE,CAAA;IACX,CAAC;IACD,MAAM,GAAG,GAAG;QACV,OAAO;QACP,KAAK,EAAE,OAAgB;QACvB,SAAS,EAAE,SAAS,CAAC,OAAO,EAAE;QAC9B,GAAG,CAAC,gBAAgB,KAAK,SAAS;YAChC,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC;gBACE,aAAa,EAAE,IAAA,sBAAS,EACtB,gBAAgB,EAChB,0BAA0B,CAC3B,CAAC,OAAO,EAAE;gBACX,aAAa,EAAE,KAAK;aACrB,CAAC;KACP,CAAA;IACD,OAAO,CAAC,EAAE,GAAG,GAAG,EAAE,GAAG,EAAE,IAAA,gCAAoB,EAAC,GAAG,CAAC,EAAE,CAAC,CAAA;AACrD,CAAC,CAAA;AA3BY,QAAA,wBAAwB,4BA2BpC"}
1
+ {"version":3,"file":"withdrawableBalances.js","sourceRoot":"","sources":["../../../src/utils/withdrawableBalances.ts"],"names":[],"mappings":";;;AAAA,+CAKwB;AACxB,kDAAmD;AAgB5C,MAAM,wBAAwB,GAAG,CACtC,OAAe,EACf,OAA2B,EAC3B,gBAAyB,EACM,EAAE;IACjC,MAAM,SAAS,GAAG,IAAA,kCAAsB,EACtC,OAAO,CAAC,kBAAkB,EAC1B,4BAA4B,EAC5B,gCAAiB,CAClB,CAAA;IACD,IAAI,CAAC,IAAA,sCAA0B,EAAC,SAAS,EAAE,GAAG,CAAC,EAAE,CAAC;QAChD,OAAO,EAAE,CAAA;IACX,CAAC;IACD,MAAM,GAAG,GAAG;QACV,OAAO;QACP,UAAU,EAAE,gCAAiB;QAC7B,SAAS;QACT,GAAG,CAAC,gBAAgB,KAAK,SAAS;YAChC,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC;gBACE,aAAa,EAAE,IAAA,kCAAsB,EACnC,gBAAgB,EAChB,0BAA0B,EAC1B,gCAAiB,CAClB;gBACD,aAAa,EAAE,KAAK;aACrB,CAAC;KACP,CAAA;IACD,OAAO,CAAC,EAAE,GAAG,GAAG,EAAE,GAAG,EAAE,IAAA,gCAAoB,EAAC,GAAG,CAAC,EAAE,CAAC,CAAA;AACrD,CAAC,CAAA;AA7BY,QAAA,wBAAwB,4BA6BpC"}
@@ -1 +1 @@
1
- {"version":3,"file":"OndoWsProvider.d.ts","sourceRoot":"","sources":["../../../src/websocket/OndoWsProvider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"OndoWsProvider.d.ts","sourceRoot":"","sources":["../../../src/websocket/OndoWsProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAQL,KAAK,cAAc,EACnB,KAAK,sBAAsB,EAC3B,KAAK,aAAa,EAGlB,KAAK,cAAc,EAInB,cAAc,EACd,KAAK,iBAAiB,EAGvB,MAAM,iBAAiB,CAAA;AACxB,OAAO,EAML,KAAK,YAAY,EAClB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AAkEnC,UAAU,QAAQ;IAEhB,KAAK,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;IACnE,SAAS,EAAE,OAAO,CAAA;IAClB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,cAAc,CAAC,EAAE,MAAM,CAAA;CACxB;AAOD,MAAM,WAAW,qBAAqB;IAMpC,MAAM,CAAC,EAAE,MAAM,CAAA;IAEf,OAAO,CAAC,EAAE,cAAc,CAAA;CACzB;AAYD,qBAAa,cAAe,SAAQ,cAAc,CAAC,QAAQ,CAAC;IAC1D,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAgB;IAC3C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA4B;IACnD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA4B;IACrD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAQ;IAQ/B,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA4B;IAOzD,OAAO,CAAC,cAAc,CAAgC;IACtD,OAAO,CAAC,wBAAwB,CAAI;IAOpC,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAEnC;IAGD,OAAO,CAAC,QAAQ,CAAoC;IAEpD,OAAO,CAAC,cAAc,CAGnB;IAGH,OAAO,CAAC,cAAc,CAAoB;IAC1C,OAAO,CAAC,YAAY,CAA2B;IAC/C,OAAO,CAAC,cAAc,CAAI;IAC1B,OAAO,CAAC,eAAe,CAAI;IAC3B,OAAO,CAAC,eAAe,CAAI;gBAGzB,KAAK,GAAE,MAA4B,EACnC,WAAW,SAAoB,EAC/B,OAAO,GAAE,qBAA0B,EACnC,MAAM,CAAC,EAAE,cAAc;IAqBnB,cAAc,CAClB,MAAM,EAAE,sBAAsB,EAC9B,OAAO,EAAE,aAAa,GACrB,OAAO,CAAC,MAAM,IAAI,CAAC;IAkBtB,SAAS,CAAC,KAAK,CAAC,GAAG,EAAE,YAAY,GAAG,MAAM;cAuB1B,WAAW,CAAC,GAAG,EAAE,YAAY,GAAG,OAAO,CAAC,MAAM,IAAI,CAAC;IA0HnE,OAAO,CAAC,WAAW;IAiBnB,OAAO,CAAC,oBAAoB;IAc5B,OAAO,CAAC,cAAc;YAYR,WAAW;IAyBzB,OAAO,CAAC,WAAW;cAgBH,aAAa,CAAC,KAAK,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;cAoB1C,OAAO,IAAI,IAAI;IAalC,OAAO,CAAC,cAAc;YAgHR,cAAc;IAgB5B,OAAO,CAAC,WAAW;IAqBnB,OAAO,CAAC,UAAU;YAYJ,kBAAkB;YAiBlB,qBAAqB;IAuBnC,OAAO,CAAC,mBAAmB;YAWb,WAAW;IA4BzB,OAAO,CAAC,kBAAkB;IAgB1B,SAAS,CAAC,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IA+C1C,OAAO,CAAC,WAAW;IA4CnB,OAAO,CAAC,YAAY;IA0BpB,OAAO,CAAC,WAAW;IAkBnB,OAAO,CAAC,gBAAgB;IAoBxB,OAAO,CAAC,kBAAkB;IAiB1B,OAAO,CAAC,YAAY;IAiBpB,OAAO,CAAC,aAAa,CAGpB;IAED,OAAO,CAAC,kBAAkB,CAKzB;IAED,OAAO,CAAC,YAAY;IAWpB,OAAO,CAAC,WAAW;IAsBnB,OAAO,CAAC,eAAe;CAyBxB;AAYD,eAAO,MAAM,cAAc,GACzB,UAAU,qBAAqB,KAC9B,iBAKA,CAAA"}