@lifi/perps-sdk 21.1.0 → 22.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 (161) hide show
  1. package/README.md +84 -16
  2. package/dist/cjs/client/PerpsClient.d.ts +3 -3
  3. package/dist/cjs/client/PerpsClient.d.ts.map +1 -1
  4. package/dist/cjs/client/PerpsClient.js.map +1 -1
  5. package/dist/cjs/decimal/convert.d.ts +1 -5
  6. package/dist/cjs/decimal/convert.d.ts.map +1 -1
  7. package/dist/cjs/decimal/convert.js +10 -28
  8. package/dist/cjs/decimal/convert.js.map +1 -1
  9. package/dist/cjs/decimal/format.d.ts +2 -1
  10. package/dist/cjs/decimal/format.d.ts.map +1 -1
  11. package/dist/cjs/decimal/format.js.map +1 -1
  12. package/dist/cjs/decimal/parse.d.ts +2 -4
  13. package/dist/cjs/decimal/parse.d.ts.map +1 -1
  14. package/dist/cjs/decimal/parse.js +5 -2
  15. package/dist/cjs/decimal/parse.js.map +1 -1
  16. package/dist/cjs/decimal/requireDecimal.d.ts.map +1 -0
  17. package/dist/cjs/{wire → decimal}/requireDecimal.js +2 -1
  18. package/dist/cjs/decimal/requireDecimal.js.map +1 -0
  19. package/dist/cjs/index.d.ts +5 -5
  20. package/dist/cjs/index.d.ts.map +1 -1
  21. package/dist/cjs/index.js +6 -20
  22. package/dist/cjs/index.js.map +1 -1
  23. package/dist/cjs/math/fills.d.ts +3 -3
  24. package/dist/cjs/math/fills.d.ts.map +1 -1
  25. package/dist/cjs/math/fills.js.map +1 -1
  26. package/dist/cjs/math/order.d.ts +1 -8
  27. package/dist/cjs/math/order.d.ts.map +1 -1
  28. package/dist/cjs/math/order.js +6 -11
  29. package/dist/cjs/math/order.js.map +1 -1
  30. package/dist/cjs/math/position.d.ts +3 -8
  31. package/dist/cjs/math/position.d.ts.map +1 -1
  32. package/dist/cjs/math/position.js +12 -12
  33. package/dist/cjs/math/position.js.map +1 -1
  34. package/dist/cjs/services/resolveSubscribeQuote.d.ts +1 -1
  35. package/dist/cjs/services/resolveSubscribeQuote.d.ts.map +1 -1
  36. package/dist/cjs/services/resolveSubscribeQuote.js +24 -13
  37. package/dist/cjs/services/resolveSubscribeQuote.js.map +1 -1
  38. package/dist/cjs/types/api.d.ts +4 -4
  39. package/dist/cjs/types/api.d.ts.map +1 -1
  40. package/dist/cjs/types/provider.d.ts +1 -1
  41. package/dist/cjs/types/provider.d.ts.map +1 -1
  42. package/dist/cjs/version.d.ts +1 -1
  43. package/dist/cjs/version.js +1 -1
  44. package/dist/cjs/wire/orderAmounts.d.ts +1 -2
  45. package/dist/cjs/wire/orderAmounts.d.ts.map +1 -1
  46. package/dist/cjs/wire/orderAmounts.js +19 -52
  47. package/dist/cjs/wire/orderAmounts.js.map +1 -1
  48. package/dist/cjs/wire/refuel.js +1 -1
  49. package/dist/cjs/wire/refuel.js.map +1 -1
  50. package/dist/cjs/wire/transferable.js +1 -1
  51. package/dist/cjs/wire/transferable.js.map +1 -1
  52. package/dist/cjs/wire/withdraw.d.ts.map +1 -1
  53. package/dist/cjs/wire/withdraw.js +1 -1
  54. package/dist/cjs/wire/withdraw.js.map +1 -1
  55. package/dist/esm/client/PerpsClient.d.ts +3 -3
  56. package/dist/esm/client/PerpsClient.d.ts.map +1 -1
  57. package/dist/esm/client/PerpsClient.js.map +1 -1
  58. package/dist/esm/decimal/convert.d.ts +8 -24
  59. package/dist/esm/decimal/convert.d.ts.map +1 -1
  60. package/dist/esm/decimal/convert.js +16 -42
  61. package/dist/esm/decimal/convert.js.map +1 -1
  62. package/dist/esm/decimal/format.d.ts +2 -1
  63. package/dist/esm/decimal/format.d.ts.map +1 -1
  64. package/dist/esm/decimal/format.js.map +1 -1
  65. package/dist/esm/decimal/parse.d.ts +7 -20
  66. package/dist/esm/decimal/parse.d.ts.map +1 -1
  67. package/dist/esm/decimal/parse.js +9 -4
  68. package/dist/esm/decimal/parse.js.map +1 -1
  69. package/dist/esm/{wire → decimal}/requireDecimal.d.ts +1 -1
  70. package/dist/esm/decimal/requireDecimal.d.ts.map +1 -0
  71. package/dist/esm/{wire → decimal}/requireDecimal.js +3 -2
  72. package/dist/esm/decimal/requireDecimal.js.map +1 -0
  73. package/dist/esm/index.d.ts +5 -5
  74. package/dist/esm/index.d.ts.map +1 -1
  75. package/dist/esm/index.js +4 -4
  76. package/dist/esm/index.js.map +1 -1
  77. package/dist/esm/math/fills.d.ts +3 -3
  78. package/dist/esm/math/fills.d.ts.map +1 -1
  79. package/dist/esm/math/fills.js +1 -1
  80. package/dist/esm/math/fills.js.map +1 -1
  81. package/dist/esm/math/order.d.ts +3 -34
  82. package/dist/esm/math/order.d.ts.map +1 -1
  83. package/dist/esm/math/order.js +8 -26
  84. package/dist/esm/math/order.js.map +1 -1
  85. package/dist/esm/math/position.d.ts +16 -34
  86. package/dist/esm/math/position.d.ts.map +1 -1
  87. package/dist/esm/math/position.js +23 -36
  88. package/dist/esm/math/position.js.map +1 -1
  89. package/dist/esm/services/resolveSubscribeQuote.d.ts +6 -1
  90. package/dist/esm/services/resolveSubscribeQuote.d.ts.map +1 -1
  91. package/dist/esm/services/resolveSubscribeQuote.js +29 -13
  92. package/dist/esm/services/resolveSubscribeQuote.js.map +1 -1
  93. package/dist/esm/types/api.d.ts +4 -4
  94. package/dist/esm/types/api.d.ts.map +1 -1
  95. package/dist/esm/types/provider.d.ts +1 -1
  96. package/dist/esm/types/provider.d.ts.map +1 -1
  97. package/dist/esm/version.d.ts +1 -1
  98. package/dist/esm/version.js +1 -1
  99. package/dist/esm/wire/orderAmounts.d.ts +15 -29
  100. package/dist/esm/wire/orderAmounts.d.ts.map +1 -1
  101. package/dist/esm/wire/orderAmounts.js +28 -88
  102. package/dist/esm/wire/orderAmounts.js.map +1 -1
  103. package/dist/esm/wire/refuel.js +1 -1
  104. package/dist/esm/wire/refuel.js.map +1 -1
  105. package/dist/esm/wire/transferable.js +1 -1
  106. package/dist/esm/wire/transferable.js.map +1 -1
  107. package/dist/esm/wire/withdraw.d.ts.map +1 -1
  108. package/dist/esm/wire/withdraw.js +1 -1
  109. package/dist/esm/wire/withdraw.js.map +1 -1
  110. package/dist/types/client/PerpsClient.d.ts +3 -3
  111. package/dist/types/client/PerpsClient.d.ts.map +1 -1
  112. package/dist/types/decimal/convert.d.ts +8 -24
  113. package/dist/types/decimal/convert.d.ts.map +1 -1
  114. package/dist/types/decimal/format.d.ts +2 -1
  115. package/dist/types/decimal/format.d.ts.map +1 -1
  116. package/dist/types/decimal/parse.d.ts +7 -20
  117. package/dist/types/decimal/parse.d.ts.map +1 -1
  118. package/dist/types/{wire → decimal}/requireDecimal.d.ts +1 -1
  119. package/dist/types/decimal/requireDecimal.d.ts.map +1 -0
  120. package/dist/types/index.d.ts +5 -5
  121. package/dist/types/index.d.ts.map +1 -1
  122. package/dist/types/math/fills.d.ts +3 -3
  123. package/dist/types/math/fills.d.ts.map +1 -1
  124. package/dist/types/math/order.d.ts +3 -34
  125. package/dist/types/math/order.d.ts.map +1 -1
  126. package/dist/types/math/position.d.ts +16 -34
  127. package/dist/types/math/position.d.ts.map +1 -1
  128. package/dist/types/services/resolveSubscribeQuote.d.ts +6 -1
  129. package/dist/types/services/resolveSubscribeQuote.d.ts.map +1 -1
  130. package/dist/types/types/api.d.ts +4 -4
  131. package/dist/types/types/api.d.ts.map +1 -1
  132. package/dist/types/types/provider.d.ts +1 -1
  133. package/dist/types/types/provider.d.ts.map +1 -1
  134. package/dist/types/version.d.ts +1 -1
  135. package/dist/types/wire/orderAmounts.d.ts +15 -29
  136. package/dist/types/wire/orderAmounts.d.ts.map +1 -1
  137. package/dist/types/wire/withdraw.d.ts.map +1 -1
  138. package/package.json +2 -2
  139. package/src/client/PerpsClient.ts +3 -2
  140. package/src/decimal/convert.ts +27 -54
  141. package/src/decimal/format.ts +3 -1
  142. package/src/decimal/parse.ts +10 -6
  143. package/src/{wire → decimal}/requireDecimal.ts +3 -6
  144. package/src/index.ts +4 -21
  145. package/src/math/fills.ts +8 -4
  146. package/src/math/order.ts +8 -31
  147. package/src/math/position.ts +32 -43
  148. package/src/services/resolveSubscribeQuote.ts +37 -19
  149. package/src/types/api.ts +4 -3
  150. package/src/types/provider.ts +1 -1
  151. package/src/version.ts +1 -1
  152. package/src/wire/orderAmounts.ts +35 -117
  153. package/src/wire/refuel.ts +1 -1
  154. package/src/wire/transferable.ts +1 -1
  155. package/src/wire/withdraw.ts +1 -1
  156. package/dist/cjs/wire/requireDecimal.d.ts.map +0 -1
  157. package/dist/cjs/wire/requireDecimal.js.map +0 -1
  158. package/dist/esm/wire/requireDecimal.d.ts.map +0 -1
  159. package/dist/esm/wire/requireDecimal.js.map +0 -1
  160. package/dist/types/wire/requireDecimal.d.ts.map +0 -1
  161. /package/dist/cjs/{wire → decimal}/requireDecimal.d.ts +0 -0
package/dist/cjs/index.js CHANGED
@@ -14,9 +14,9 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.effectiveLeverage = exports.directionSign = exports.calculateUnrealizedPnl = exports.calculateRoe = exports.calculateRequiredMargin = exports.calculateRealizedPnl = exports.calculateNotionalValue = exports.calculateLiquidationDistance = exports.calculateEffectiveLeverage = exports.walkOrderbook = exports.resolveCloseSize = exports.priceFromPercent = exports.percentFromPrice = exports.findMatchingPosition = exports.expectedRealizedPnlForTriggerOrder = exports.expectedRealizedPnlForOpenOrder = exports.estimateRealizedPnl = exports.estimateFees = exports.calculateTriggerPrice = exports.calculateTriggerPercent = exports.calculateSize = exports.calculateRealizedPnlPercent = exports.calculatePositionSize = exports.calculateExpectedPnl = exports.buildQuote = exports.applySlippage = exports.FillClassification = exports.classifyFillFromPosition = exports.classifyFill = exports.PerpsError = exports.PerpsErrorMessage = exports.stringToFloat = exports.parseDecimal = exports.formatUsd = exports.formatSignedUsd = exports.formatSignedPercent = exports.formatPrice = exports.formatNumber = exports.formatCompactUsd = exports.truncateDecimal = exports.scaleToInteger = exports.numberToDecimalString = exports.fromBaseUnitsNumber = exports.fromBaseUnits = exports.decimalToBaseUnits = exports.baseUnitsToDecimal = exports.requireProvider = exports.PerpsClient = exports.DEFAULT_API_URL = exports.createPerpsClient = void 0;
18
- exports.readValidatedRecord = exports.parseStoredRecord = exports.localStorageAdapter = exports.resolveSubscribeQuote = exports.QUOTE_THROTTLE_MS = exports.resolveQuoteMarket = exports.resolveQuote = exports.getTermsAcceptance = exports.getReferralStatus = exports.getReferralActivity = exports.getQuote = exports.getProviders = exports.getPositions = exports.getOrders = exports.getOrderbook = exports.getOrder = exports.getOhlcv = exports.getMeta = exports.getMarketsContext = exports.getMarkets = exports.getMarket = exports.LIFI_API_URL = exports.getGasRecommendation = exports.getFills = exports.getAssets = exports.getActivity = exports.getAccount = exports.executeAction = exports.createAction = exports.toPerpsMarketDisplay = exports.toMarketDisplay = exports.MarketRegistry = exports.isActiveMarket = exports.getMarketRegistry = exports.getDefaultMarketId = exports.DEFAULT_MARKET_ID = exports.toAssetDisplay = exports.getAssetRegistry = exports.AssetRegistry = exports.wouldImmediatelyLiquidate = exports.realizedPnlOnClose = exports.predictUnrealizedPnl = exports.predictNewLeverage = exports.predictAverageEntryPrice = exports.liquidationDistancePercent = exports.estimateUnrealizedPnl = exports.estimateNewLeverage = exports.estimateLiquidationPrice = exports.estimateIsolatedLiquidationPrice = exports.estimateAverageEntryPrice = void 0;
19
- exports.calculateWithdrawMax = exports.calculateTransferable = exports.snapOrderSize = exports.snapOrderPrice = exports.calculateRefuelAmount = exports.calculateOrderAmounts = exports.wsLog = exports.WsProviderBase = exports.WS_CHANNEL_TEARDOWN_LINGER_MS = exports.ReconnectingWebSocket = exports.PerpsWsClient = exports.DecodeChain = exports.cachePromise = exports.version = exports.name = exports.createWarnOnce = exports.signTypedDataWithSigner = exports.signTypedData = exports.selectUserSetupActions = exports.isSetupOptionFor = exports.triggerConditionFor = exports.isTwapOrder = exports.isTriggerOrder = exports.isTpSlOrder = exports.isTakeProfitOrder = exports.isStopLossOrder = exports.isRegularOrder = exports.isActiveOrderStatus = exports.ACTIVE_ORDER_STATUSES = exports.explorerTxUrlFromBase = exports.explorerTxUrl = exports.ExplorerChainId = exports.ROBINHOOD_USDG = exports.ROBINHOOD_NATIVE_GAS = exports.LIGHTER_USDC = exports.HYPERLIQUID_USDC = exports.ETHEREUM_USDC = exports.ETHEREUM_NATIVE_GAS = exports.paginateActivity = exports.resolveRetryPolicy = exports.LIFI_RETRY_DEFAULTS = exports.LIFI_REQUEST_KEY = exports.DISABLED_RETRY = exports.isAbortError = exports.fetchWithRetry = exports.errorCodeFromStatus = exports.createMemoryStorage = void 0;
17
+ exports.toAssetDisplay = exports.getAssetRegistry = exports.AssetRegistry = exports.wouldImmediatelyLiquidate = exports.positionSupportsMarginRemoval = exports.positionSupportsMarginAdjustment = exports.estimateUnrealizedPnl = exports.estimateNewLeverage = exports.estimateLiquidationPrice = exports.estimateAverageEntryPrice = exports.calculateUnrealizedPnl = exports.calculateRoe = exports.calculateRequiredMargin = exports.calculateRealizedPnl = exports.calculateNotionalValue = exports.calculateLiquidationDistance = exports.calculateEffectiveLeverage = exports.walkOrderbook = exports.resolveCloseSize = exports.findMatchingPosition = exports.estimateRealizedPnl = exports.estimateFees = exports.calculateTriggerPrice = exports.calculateTriggerPercent = exports.calculateSize = exports.calculateRealizedPnlPercent = exports.calculateExpectedPnl = exports.buildQuote = exports.applySlippage = exports.FillClassification = exports.classifyFillFromPosition = exports.classifyFill = exports.PerpsError = exports.PerpsErrorMessage = exports.parseDecimal = exports.isDecimalString = exports.formatUsd = exports.formatSignedUsd = exports.formatSignedPercent = exports.formatPrice = exports.formatNumber = exports.formatCompactUsd = exports.truncateDecimal = exports.numberToDecimalString = exports.decimalToBaseUnits = exports.baseUnitsToDecimal = exports.requireProvider = exports.PerpsClient = exports.DEFAULT_API_URL = exports.createPerpsClient = void 0;
18
+ exports.ROBINHOOD_NATIVE_GAS = exports.LIGHTER_USDC = exports.HYPERLIQUID_USDC = exports.ETHEREUM_USDC = exports.ETHEREUM_NATIVE_GAS = exports.paginateActivity = exports.resolveRetryPolicy = exports.LIFI_RETRY_DEFAULTS = exports.LIFI_REQUEST_KEY = exports.DISABLED_RETRY = exports.isAbortError = exports.fetchWithRetry = exports.errorCodeFromStatus = exports.createMemoryStorage = exports.readValidatedRecord = exports.parseStoredRecord = exports.localStorageAdapter = exports.resolveSubscribeQuote = exports.QUOTE_THROTTLE_MS = exports.resolveQuoteMarket = exports.resolveQuote = exports.getTermsAcceptance = exports.getReferralStatus = exports.getReferralActivity = exports.getQuote = exports.getProviders = exports.getPositions = exports.getOrders = exports.getOrderbook = exports.getOrder = exports.getOhlcv = exports.getMeta = exports.getMarketsContext = exports.getMarkets = exports.getMarket = exports.LIFI_API_URL = exports.getGasRecommendation = exports.getFills = exports.getAssets = exports.getActivity = exports.getAccount = exports.executeAction = exports.createAction = exports.toPerpsMarketDisplay = exports.toMarketDisplay = exports.MarketRegistry = exports.isActiveMarket = exports.getMarketRegistry = exports.getDefaultMarketId = exports.DEFAULT_MARKET_ID = void 0;
19
+ exports.calculateWithdrawMax = exports.calculateTransferable = exports.snapOrderSize = exports.snapOrderPrice = exports.calculateRefuelAmount = exports.calculateOrderAmounts = exports.wsLog = exports.WsProviderBase = exports.WS_CHANNEL_TEARDOWN_LINGER_MS = exports.ReconnectingWebSocket = exports.PerpsWsClient = exports.DecodeChain = exports.cachePromise = exports.version = exports.name = exports.createWarnOnce = exports.signTypedDataWithSigner = exports.signTypedData = exports.selectUserSetupActions = exports.isSetupOptionFor = exports.triggerConditionFor = exports.isTwapOrder = exports.isTriggerOrder = exports.isTpSlOrder = exports.isTakeProfitOrder = exports.isStopLossOrder = exports.isRegularOrder = exports.isActiveOrderStatus = exports.ACTIVE_ORDER_STATUSES = exports.explorerTxUrlFromBase = exports.explorerTxUrl = exports.ExplorerChainId = exports.ROBINHOOD_USDG = void 0;
20
20
  __exportStar(require("@lifi/perps-types"), exports);
21
21
  var createPerpsClient_js_1 = require("./client/createPerpsClient.js");
22
22
  Object.defineProperty(exports, "createPerpsClient", { enumerable: true, get: function () { return createPerpsClient_js_1.createPerpsClient; } });
@@ -28,10 +28,7 @@ Object.defineProperty(exports, "requireProvider", { enumerable: true, get: funct
28
28
  var convert_js_1 = require("./decimal/convert.js");
29
29
  Object.defineProperty(exports, "baseUnitsToDecimal", { enumerable: true, get: function () { return convert_js_1.baseUnitsToDecimal; } });
30
30
  Object.defineProperty(exports, "decimalToBaseUnits", { enumerable: true, get: function () { return convert_js_1.decimalToBaseUnits; } });
31
- Object.defineProperty(exports, "fromBaseUnits", { enumerable: true, get: function () { return convert_js_1.fromBaseUnits; } });
32
- Object.defineProperty(exports, "fromBaseUnitsNumber", { enumerable: true, get: function () { return convert_js_1.fromBaseUnitsNumber; } });
33
31
  Object.defineProperty(exports, "numberToDecimalString", { enumerable: true, get: function () { return convert_js_1.numberToDecimalString; } });
34
- Object.defineProperty(exports, "scaleToInteger", { enumerable: true, get: function () { return convert_js_1.scaleToInteger; } });
35
32
  Object.defineProperty(exports, "truncateDecimal", { enumerable: true, get: function () { return convert_js_1.truncateDecimal; } });
36
33
  var format_js_1 = require("./decimal/format.js");
37
34
  Object.defineProperty(exports, "formatCompactUsd", { enumerable: true, get: function () { return format_js_1.formatCompactUsd; } });
@@ -41,8 +38,8 @@ Object.defineProperty(exports, "formatSignedPercent", { enumerable: true, get: f
41
38
  Object.defineProperty(exports, "formatSignedUsd", { enumerable: true, get: function () { return format_js_1.formatSignedUsd; } });
42
39
  Object.defineProperty(exports, "formatUsd", { enumerable: true, get: function () { return format_js_1.formatUsd; } });
43
40
  var parse_js_1 = require("./decimal/parse.js");
41
+ Object.defineProperty(exports, "isDecimalString", { enumerable: true, get: function () { return parse_js_1.isDecimalString; } });
44
42
  Object.defineProperty(exports, "parseDecimal", { enumerable: true, get: function () { return parse_js_1.parseDecimal; } });
45
- Object.defineProperty(exports, "stringToFloat", { enumerable: true, get: function () { return parse_js_1.stringToFloat; } });
46
43
  var constants_js_1 = require("./errors/constants.js");
47
44
  Object.defineProperty(exports, "PerpsErrorMessage", { enumerable: true, get: function () { return constants_js_1.PerpsErrorMessage; } });
48
45
  var PerpsError_js_1 = require("./errors/PerpsError.js");
@@ -55,18 +52,13 @@ var order_js_1 = require("./math/order.js");
55
52
  Object.defineProperty(exports, "applySlippage", { enumerable: true, get: function () { return order_js_1.applySlippage; } });
56
53
  Object.defineProperty(exports, "buildQuote", { enumerable: true, get: function () { return order_js_1.buildQuote; } });
57
54
  Object.defineProperty(exports, "calculateExpectedPnl", { enumerable: true, get: function () { return order_js_1.calculateExpectedPnl; } });
58
- Object.defineProperty(exports, "calculatePositionSize", { enumerable: true, get: function () { return order_js_1.calculatePositionSize; } });
59
55
  Object.defineProperty(exports, "calculateRealizedPnlPercent", { enumerable: true, get: function () { return order_js_1.calculateRealizedPnlPercent; } });
60
56
  Object.defineProperty(exports, "calculateSize", { enumerable: true, get: function () { return order_js_1.calculateSize; } });
61
57
  Object.defineProperty(exports, "calculateTriggerPercent", { enumerable: true, get: function () { return order_js_1.calculateTriggerPercent; } });
62
58
  Object.defineProperty(exports, "calculateTriggerPrice", { enumerable: true, get: function () { return order_js_1.calculateTriggerPrice; } });
63
59
  Object.defineProperty(exports, "estimateFees", { enumerable: true, get: function () { return order_js_1.estimateFees; } });
64
60
  Object.defineProperty(exports, "estimateRealizedPnl", { enumerable: true, get: function () { return order_js_1.estimateRealizedPnl; } });
65
- Object.defineProperty(exports, "expectedRealizedPnlForOpenOrder", { enumerable: true, get: function () { return order_js_1.expectedRealizedPnlForOpenOrder; } });
66
- Object.defineProperty(exports, "expectedRealizedPnlForTriggerOrder", { enumerable: true, get: function () { return order_js_1.expectedRealizedPnlForTriggerOrder; } });
67
61
  Object.defineProperty(exports, "findMatchingPosition", { enumerable: true, get: function () { return order_js_1.findMatchingPosition; } });
68
- Object.defineProperty(exports, "percentFromPrice", { enumerable: true, get: function () { return order_js_1.percentFromPrice; } });
69
- Object.defineProperty(exports, "priceFromPercent", { enumerable: true, get: function () { return order_js_1.priceFromPercent; } });
70
62
  Object.defineProperty(exports, "resolveCloseSize", { enumerable: true, get: function () { return order_js_1.resolveCloseSize; } });
71
63
  Object.defineProperty(exports, "walkOrderbook", { enumerable: true, get: function () { return order_js_1.walkOrderbook; } });
72
64
  var position_js_1 = require("./math/position.js");
@@ -77,18 +69,12 @@ Object.defineProperty(exports, "calculateRealizedPnl", { enumerable: true, get:
77
69
  Object.defineProperty(exports, "calculateRequiredMargin", { enumerable: true, get: function () { return position_js_1.calculateRequiredMargin; } });
78
70
  Object.defineProperty(exports, "calculateRoe", { enumerable: true, get: function () { return position_js_1.calculateRoe; } });
79
71
  Object.defineProperty(exports, "calculateUnrealizedPnl", { enumerable: true, get: function () { return position_js_1.calculateUnrealizedPnl; } });
80
- Object.defineProperty(exports, "directionSign", { enumerable: true, get: function () { return position_js_1.directionSign; } });
81
- Object.defineProperty(exports, "effectiveLeverage", { enumerable: true, get: function () { return position_js_1.effectiveLeverage; } });
82
72
  Object.defineProperty(exports, "estimateAverageEntryPrice", { enumerable: true, get: function () { return position_js_1.estimateAverageEntryPrice; } });
83
- Object.defineProperty(exports, "estimateIsolatedLiquidationPrice", { enumerable: true, get: function () { return position_js_1.estimateIsolatedLiquidationPrice; } });
84
73
  Object.defineProperty(exports, "estimateLiquidationPrice", { enumerable: true, get: function () { return position_js_1.estimateLiquidationPrice; } });
85
74
  Object.defineProperty(exports, "estimateNewLeverage", { enumerable: true, get: function () { return position_js_1.estimateNewLeverage; } });
86
75
  Object.defineProperty(exports, "estimateUnrealizedPnl", { enumerable: true, get: function () { return position_js_1.estimateUnrealizedPnl; } });
87
- Object.defineProperty(exports, "liquidationDistancePercent", { enumerable: true, get: function () { return position_js_1.liquidationDistancePercent; } });
88
- Object.defineProperty(exports, "predictAverageEntryPrice", { enumerable: true, get: function () { return position_js_1.predictAverageEntryPrice; } });
89
- Object.defineProperty(exports, "predictNewLeverage", { enumerable: true, get: function () { return position_js_1.predictNewLeverage; } });
90
- Object.defineProperty(exports, "predictUnrealizedPnl", { enumerable: true, get: function () { return position_js_1.predictUnrealizedPnl; } });
91
- Object.defineProperty(exports, "realizedPnlOnClose", { enumerable: true, get: function () { return position_js_1.realizedPnlOnClose; } });
76
+ Object.defineProperty(exports, "positionSupportsMarginAdjustment", { enumerable: true, get: function () { return position_js_1.positionSupportsMarginAdjustment; } });
77
+ Object.defineProperty(exports, "positionSupportsMarginRemoval", { enumerable: true, get: function () { return position_js_1.positionSupportsMarginRemoval; } });
92
78
  Object.defineProperty(exports, "wouldImmediatelyLiquidate", { enumerable: true, get: function () { return position_js_1.wouldImmediatelyLiquidate; } });
93
79
  var assetRegistry_js_1 = require("./registry/assetRegistry.js");
94
80
  Object.defineProperty(exports, "AssetRegistry", { enumerable: true, get: function () { return assetRegistry_js_1.AssetRegistry; } });
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- import { FillClassification, OrderSide } from '@lifi/perps-types';
1
+ import { type DecimalString, FillClassification, OrderSide } from '@lifi/perps-types';
2
2
  export { FillClassification };
3
- export declare function classifyFillFromPosition(startPosition: string, side: string, sz: string): FillClassification;
4
- export declare function classifyFill(side: OrderSide, realizedPnl: string | null | undefined): FillClassification;
3
+ export declare function classifyFillFromPosition(startPosition: DecimalString, side: string, sz: DecimalString): FillClassification;
4
+ export declare function classifyFill(side: OrderSide, realizedPnl: DecimalString | null | undefined): FillClassification;
5
5
  //# sourceMappingURL=fills.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"fills.d.ts","sourceRoot":"","sources":["../../../src/math/fills.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAQjE,OAAO,EAAE,kBAAkB,EAAE,CAAA;AAY7B,wBAAgB,wBAAwB,CACtC,aAAa,EAAE,MAAM,EACrB,IAAI,EAAE,MAAM,EACZ,EAAE,EAAE,MAAM,GACT,kBAAkB,CAkCpB;AAQD,wBAAgB,YAAY,CAC1B,IAAI,EAAE,SAAS,EACf,WAAW,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GACrC,kBAAkB,CAUpB"}
1
+ {"version":3,"file":"fills.d.ts","sourceRoot":"","sources":["../../../src/math/fills.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,aAAa,EAClB,kBAAkB,EAClB,SAAS,EACV,MAAM,mBAAmB,CAAA;AAQ1B,OAAO,EAAE,kBAAkB,EAAE,CAAA;AAY7B,wBAAgB,wBAAwB,CACtC,aAAa,EAAE,aAAa,EAC5B,IAAI,EAAE,MAAM,EACZ,EAAE,EAAE,aAAa,GAChB,kBAAkB,CAkCpB;AAQD,wBAAgB,YAAY,CAC1B,IAAI,EAAE,SAAS,EACf,WAAW,EAAE,aAAa,GAAG,IAAI,GAAG,SAAS,GAC5C,kBAAkB,CAUpB"}
@@ -1 +1 @@
1
- {"version":3,"file":"fills.js","sourceRoot":"","sources":["../../../src/math/fills.ts"],"names":[],"mappings":";;;AAoBA,4DAsCC;AAQD,oCAaC;AA/ED,mDAAiE;AAQxD,mGARA,gCAAkB,OAQA;AAP3B,kDAAkD;AAmBlD,SAAgB,wBAAwB,CACtC,aAAqB,EACrB,IAAY,EACZ,EAAU;IAEV,MAAM,KAAK,GAAG,UAAU,CAAC,aAAa,CAAC,CAAA;IACvC,MAAM,KAAK,GAAG,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE,CAAC,CAAA;IAC7D,MAAM,GAAG,GAAG,KAAK,GAAG,KAAK,CAAA;IAEzB,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;QAChB,OAAO,GAAG,GAAG,CAAC;YACZ,CAAC,CAAC,gCAAkB,CAAC,WAAW;YAChC,CAAC,CAAC,gCAAkB,CAAC,YAAY,CAAA;IACrC,CAAC;IAED,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;QACd,IAAI,GAAG,KAAK,CAAC,EAAE,CAAC;YACd,OAAO,gCAAkB,CAAC,WAAW,CAAA;QACvC,CAAC;QACD,IAAI,GAAG,GAAG,CAAC,EAAE,CAAC;YACZ,OAAO,gCAAkB,CAAC,cAAc,CAAA;QAC1C,CAAC;QACD,IAAI,GAAG,GAAG,KAAK,EAAE,CAAC;YAChB,OAAO,gCAAkB,CAAC,cAAc,CAAA;QAC1C,CAAC;QACD,OAAO,gCAAkB,CAAC,YAAY,CAAA;IACxC,CAAC;IAED,IAAI,GAAG,KAAK,CAAC,EAAE,CAAC;QACd,OAAO,gCAAkB,CAAC,YAAY,CAAA;IACxC,CAAC;IACD,IAAI,GAAG,GAAG,CAAC,EAAE,CAAC;QACZ,OAAO,gCAAkB,CAAC,aAAa,CAAA;IACzC,CAAC;IACD,IAAI,GAAG,GAAG,KAAK,EAAE,CAAC;QAChB,OAAO,gCAAkB,CAAC,eAAe,CAAA;IAC3C,CAAC;IACD,OAAO,gCAAkB,CAAC,aAAa,CAAA;AACzC,CAAC;AAQD,SAAgB,YAAY,CAC1B,IAAe,EACf,WAAsC;IAEtC,MAAM,OAAO,GAAG,WAAW,IAAI,IAAI,IAAI,IAAA,uBAAY,EAAC,WAAW,CAAC,KAAK,CAAC,CAAA;IACtE,IAAI,IAAI,KAAK,uBAAS,CAAC,GAAG,EAAE,CAAC;QAC3B,OAAO,OAAO;YACZ,CAAC,CAAC,gCAAkB,CAAC,YAAY;YACjC,CAAC,CAAC,gCAAkB,CAAC,WAAW,CAAA;IACpC,CAAC;IACD,OAAO,OAAO;QACZ,CAAC,CAAC,gCAAkB,CAAC,WAAW;QAChC,CAAC,CAAC,gCAAkB,CAAC,YAAY,CAAA;AACrC,CAAC"}
1
+ {"version":3,"file":"fills.js","sourceRoot":"","sources":["../../../src/math/fills.ts"],"names":[],"mappings":";;;AAwBA,4DAsCC;AAQD,oCAaC;AAnFD,mDAI0B;AAQjB,mGAVP,gCAAkB,OAUO;AAP3B,kDAAkD;AAmBlD,SAAgB,wBAAwB,CACtC,aAA4B,EAC5B,IAAY,EACZ,EAAiB;IAEjB,MAAM,KAAK,GAAG,UAAU,CAAC,aAAa,CAAC,CAAA;IACvC,MAAM,KAAK,GAAG,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE,CAAC,CAAA;IAC7D,MAAM,GAAG,GAAG,KAAK,GAAG,KAAK,CAAA;IAEzB,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;QAChB,OAAO,GAAG,GAAG,CAAC;YACZ,CAAC,CAAC,gCAAkB,CAAC,WAAW;YAChC,CAAC,CAAC,gCAAkB,CAAC,YAAY,CAAA;IACrC,CAAC;IAED,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;QACd,IAAI,GAAG,KAAK,CAAC,EAAE,CAAC;YACd,OAAO,gCAAkB,CAAC,WAAW,CAAA;QACvC,CAAC;QACD,IAAI,GAAG,GAAG,CAAC,EAAE,CAAC;YACZ,OAAO,gCAAkB,CAAC,cAAc,CAAA;QAC1C,CAAC;QACD,IAAI,GAAG,GAAG,KAAK,EAAE,CAAC;YAChB,OAAO,gCAAkB,CAAC,cAAc,CAAA;QAC1C,CAAC;QACD,OAAO,gCAAkB,CAAC,YAAY,CAAA;IACxC,CAAC;IAED,IAAI,GAAG,KAAK,CAAC,EAAE,CAAC;QACd,OAAO,gCAAkB,CAAC,YAAY,CAAA;IACxC,CAAC;IACD,IAAI,GAAG,GAAG,CAAC,EAAE,CAAC;QACZ,OAAO,gCAAkB,CAAC,aAAa,CAAA;IACzC,CAAC;IACD,IAAI,GAAG,GAAG,KAAK,EAAE,CAAC;QAChB,OAAO,gCAAkB,CAAC,eAAe,CAAA;IAC3C,CAAC;IACD,OAAO,gCAAkB,CAAC,aAAa,CAAA;AACzC,CAAC;AAQD,SAAgB,YAAY,CAC1B,IAAe,EACf,WAA6C;IAE7C,MAAM,OAAO,GAAG,WAAW,IAAI,IAAI,IAAI,IAAA,uBAAY,EAAC,WAAW,CAAC,KAAK,CAAC,CAAA;IACtE,IAAI,IAAI,KAAK,uBAAS,CAAC,GAAG,EAAE,CAAC;QAC3B,OAAO,OAAO;YACZ,CAAC,CAAC,gCAAkB,CAAC,YAAY;YACjC,CAAC,CAAC,gCAAkB,CAAC,WAAW,CAAA;IACpC,CAAC;IACD,OAAO,OAAO;QACZ,CAAC,CAAC,gCAAkB,CAAC,WAAW;QAChC,CAAC,CAAC,gCAAkB,CAAC,YAAY,CAAA;AACrC,CAAC"}
@@ -1,6 +1,5 @@
1
- import { type FeeTier, type Market, type MarketContext, type Order, type OrderbookLevel, type Position, type Quote, type QuoteSide, type RegularOrder, type TradeType, type TriggerOrder } from '@lifi/perps-types';
1
+ import { type FeeTier, type Market, type MarketContext, type Order, type OrderbookLevel, type Position, type Quote, type QuoteSide, type TradeType } from '@lifi/perps-types';
2
2
  export declare function calculateSize(marginUsd: number, leverage: number, price: number): number;
3
- export declare const calculatePositionSize: typeof calculateSize;
4
3
  export declare function estimateFees(sizeUsd: number, feeRate: number): number;
5
4
  export declare function applySlippage(price: number, slippagePercent: number, isBuy: boolean): number;
6
5
  export interface ExpectedPnl {
@@ -9,9 +8,7 @@ export interface ExpectedPnl {
9
8
  }
10
9
  export declare function calculateExpectedPnl(triggerPrice: number, entryPrice: number, leverage: number, isLong: boolean, margin: number): ExpectedPnl | null;
11
10
  export declare function calculateTriggerPrice(percent: number, entryPrice: number, leverage: number, isLong: boolean): number;
12
- export declare const priceFromPercent: typeof calculateTriggerPrice;
13
11
  export declare function calculateTriggerPercent(price: number, entryPrice: number, leverage: number, isLong: boolean): number;
14
- export declare const percentFromPrice: typeof calculateTriggerPercent;
15
12
  export declare function calculateRealizedPnlPercent(realizedPnl: number, size: number, price: number): number;
16
13
  interface BookWalk {
17
14
  baseSize: number;
@@ -36,10 +33,6 @@ interface BuildQuoteInput {
36
33
  export declare function buildQuote(input: BuildQuoteInput): Quote;
37
34
  export declare function findMatchingPosition(marketId: string, positions: readonly Position[]): Position | undefined;
38
35
  export declare function resolveCloseSize(orderSize: number, positionSize: number): number;
39
- declare function regularOrderRealizedPnl(order: RegularOrder, position: Position | undefined): number | null;
40
- declare function triggerOrderRealizedPnl(order: TriggerOrder, position: Position | undefined): number | null;
41
36
  export declare function estimateRealizedPnl(order: Order, position: Position | undefined): number | null;
42
- export declare const expectedRealizedPnlForOpenOrder: typeof regularOrderRealizedPnl;
43
- export declare const expectedRealizedPnlForTriggerOrder: typeof triggerOrderRealizedPnl;
44
37
  export {};
45
38
  //# sourceMappingURL=order.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"order.d.ts","sourceRoot":"","sources":["../../../src/math/order.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"order.d.ts","sourceRoot":"","sources":["../../../src/math/order.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,KAAK,OAAO,EACZ,KAAK,MAAM,EACX,KAAK,aAAa,EAClB,KAAK,KAAK,EACV,KAAK,cAAc,EAInB,KAAK,QAAQ,EAEb,KAAK,KAAK,EACV,KAAK,SAAS,EAEd,KAAK,SAAS,EAEf,MAAM,mBAAmB,CAAA;AAyB1B,wBAAgB,aAAa,CAC3B,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,GACZ,MAAM,CAQR;AAUD,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAKrE;AAWD,wBAAgB,aAAa,CAC3B,KAAK,EAAE,MAAM,EACb,eAAe,EAAE,MAAM,EACvB,KAAK,EAAE,OAAO,GACb,MAAM,CAYR;AAOD,MAAM,WAAW,WAAW;IAE1B,MAAM,EAAE,MAAM,CAAA;IAEd,OAAO,EAAE,MAAM,CAAA;CAChB;AAaD,wBAAgB,oBAAoB,CAClC,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,OAAO,EACf,MAAM,EAAE,MAAM,GACb,WAAW,GAAG,IAAI,CAapB;AAWD,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,OAAO,GACd,MAAM,CAYR;AAWD,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,MAAM,EACb,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,OAAO,GACd,MAAM,CAWR;AAWD,wBAAgB,2BAA2B,CACzC,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,GACZ,MAAM,CASR;AAGD,UAAU,QAAQ;IAEhB,QAAQ,EAAE,MAAM,CAAA;IAEhB,cAAc,EAAE,MAAM,CAAA;IAEtB,IAAI,EAAE,MAAM,CAAA;IAEZ,qBAAqB,EAAE,OAAO,CAAA;CAC/B;AAeD,wBAAgB,aAAa,CAC3B,MAAM,EAAE,cAAc,EAAE,EACxB,OAAO,EAAE,MAAM,GACd,QAAQ,CAgCV;AAcD,UAAU,eAAe;IACvB,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,SAAS,CAAA;IACf,IAAI,EAAE,SAAS,CAAA;IACf,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,EAAE,aAAa,CAAA;IACpB,IAAI,EAAE,cAAc,EAAE,CAAA;IACtB,IAAI,EAAE,cAAc,EAAE,CAAA;IAEtB,OAAO,EAAE,OAAO,CAAA;IAChB,SAAS,EAAE,MAAM,CAAA;CAClB;AAcD,wBAAgB,UAAU,CAAC,KAAK,EAAE,eAAe,GAAG,KAAK,CA+BxD;AASD,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,SAAS,QAAQ,EAAE,GAC7B,QAAQ,GAAG,SAAS,CAEtB;AAYD,wBAAgB,gBAAgB,CAC9B,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,MAAM,GACnB,MAAM,CAKR;AAoHD,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,QAAQ,GAAG,SAAS,GAC7B,MAAM,GAAG,IAAI,CAQf"}
@@ -1,6 +1,5 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.expectedRealizedPnlForTriggerOrder = exports.expectedRealizedPnlForOpenOrder = exports.percentFromPrice = exports.priceFromPercent = exports.calculatePositionSize = void 0;
4
3
  exports.calculateSize = calculateSize;
5
4
  exports.estimateFees = estimateFees;
6
5
  exports.applySlippage = applySlippage;
@@ -15,6 +14,7 @@ exports.resolveCloseSize = resolveCloseSize;
15
14
  exports.estimateRealizedPnl = estimateRealizedPnl;
16
15
  const perps_types_1 = require("@lifi/perps-types");
17
16
  const big_js_1 = require("../decimal/big.js");
17
+ const convert_js_1 = require("../decimal/convert.js");
18
18
  const PerpsError_js_1 = require("../errors/PerpsError.js");
19
19
  const orderClassification_js_1 = require("../utils/orderClassification.js");
20
20
  const position_js_1 = require("./position.js");
@@ -27,7 +27,6 @@ function calculateSize(marginUsd, leverage, price) {
27
27
  }
28
28
  return new big_js_1.DivBig(marginUsd).times(leverage).div(price).toNumber();
29
29
  }
30
- exports.calculatePositionSize = calculateSize;
31
30
  function estimateFees(sizeUsd, feeRate) {
32
31
  if (!(0, big_js_1.areFinite)(sizeUsd, feeRate)) {
33
32
  return Number.NaN;
@@ -74,7 +73,6 @@ function calculateTriggerPrice(percent, entryPrice, leverage, isLong) {
74
73
  const entry = new big_js_1.DivBig(entryPrice);
75
74
  return (isLong ? entry.plus(priceDelta) : entry.minus(priceDelta)).toNumber();
76
75
  }
77
- exports.priceFromPercent = calculateTriggerPrice;
78
76
  function calculateTriggerPercent(price, entryPrice, leverage, isLong) {
79
77
  if (entryPrice === 0 || leverage === 0) {
80
78
  return 0;
@@ -87,7 +85,6 @@ function calculateTriggerPercent(price, entryPrice, leverage, isLong) {
87
85
  : new big_js_1.DivBig(entryPrice).minus(price);
88
86
  return priceDiff.div(entryPrice).times(leverage).times(100).toNumber();
89
87
  }
90
- exports.percentFromPrice = calculateTriggerPercent;
91
88
  function calculateRealizedPnlPercent(realizedPnl, size, price) {
92
89
  if (!(0, big_js_1.areFinite)(realizedPnl, size, price)) {
93
90
  return Number.NaN;
@@ -154,14 +151,14 @@ function buildQuote(input) {
154
151
  marketId: market.id,
155
152
  type: input.type,
156
153
  side,
157
- sizeUsd: sizeUsd.toString(),
158
- baseSize: walk.baseSize.toString(),
154
+ sizeUsd: (0, convert_js_1.numberToDecimalString)(sizeUsd),
155
+ baseSize: (0, convert_js_1.numberToDecimalString)(walk.baseSize),
159
156
  markPrice: price.markPrice,
160
- expectedFillPrice: walk.vwap.toString(),
161
- priceImpactBps: priceImpactBps.toString(),
157
+ expectedFillPrice: (0, convert_js_1.numberToDecimalString)(walk.vwap),
158
+ priceImpactBps: (0, convert_js_1.numberToDecimalString)(priceImpactBps),
162
159
  feeTier,
163
160
  isDefaultFeeTier: true,
164
- feeUsd: feeUsd.toString(),
161
+ feeUsd: (0, convert_js_1.numberToDecimalString)(feeUsd),
165
162
  funding: price.funding ?? null,
166
163
  insufficientLiquidity: walk.insufficientLiquidity,
167
164
  timestamp: input.timestamp,
@@ -251,6 +248,4 @@ function estimateRealizedPnl(order, position) {
251
248
  }
252
249
  return null;
253
250
  }
254
- exports.expectedRealizedPnlForOpenOrder = regularOrderRealizedPnl;
255
- exports.expectedRealizedPnlForTriggerOrder = triggerOrderRealizedPnl;
256
251
  //# sourceMappingURL=order.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"order.js","sourceRoot":"","sources":["../../../src/math/order.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"order.js","sourceRoot":"","sources":["../../../src/math/order.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- export declare function directionSign(isLong: boolean): 1 | -1;
1
+ import { type Position } from '@lifi/perps-types';
2
2
  export declare function calculateNotionalValue(size: number, price: number): number;
3
3
  export declare function calculateUnrealizedPnl(entryPrice: number, currentPrice: number, size: number): number;
4
4
  export declare function calculateRoe(pnl: number, margin: number): number;
@@ -7,19 +7,16 @@ export declare function calculateLiquidationDistance(params: {
7
7
  liquidationPrice: number;
8
8
  currentPrice: number;
9
9
  }): number;
10
- export declare const liquidationDistancePercent: typeof calculateLiquidationDistance;
11
10
  export declare function calculateEffectiveLeverage(params: {
12
11
  positionValueUsd: number;
13
12
  marginUsd: number;
14
13
  }): number;
15
- export declare const effectiveLeverage: typeof calculateEffectiveLeverage;
16
14
  export declare function estimateLiquidationPrice(params: {
17
15
  entryPrice: number;
18
16
  leverage: number;
19
17
  isLong: boolean;
20
18
  maintenanceMarginRate: number;
21
19
  }): number | undefined;
22
- export declare const estimateIsolatedLiquidationPrice: typeof estimateLiquidationPrice;
23
20
  export declare function wouldImmediatelyLiquidate(params: {
24
21
  liquidationPrice: number;
25
22
  currentPrice: number;
@@ -31,26 +28,24 @@ export declare function estimateAverageEntryPrice(params: {
31
28
  addSize: number;
32
29
  fillPrice: number;
33
30
  }): number | undefined;
34
- export declare const predictAverageEntryPrice: typeof estimateAverageEntryPrice;
35
31
  export declare function estimateNewLeverage(params: {
36
32
  currentNotional: number;
37
33
  currentMargin: number;
38
34
  addNotional: number;
39
35
  addMargin: number;
40
36
  }): number | undefined;
41
- export declare const predictNewLeverage: typeof estimateNewLeverage;
42
37
  export declare function estimateUnrealizedPnl(params: {
43
38
  entryPrice: number;
44
39
  markPrice: number;
45
40
  size: number;
46
41
  isLong: boolean;
47
42
  }): number;
48
- export declare const predictUnrealizedPnl: typeof estimateUnrealizedPnl;
49
43
  export declare function calculateRealizedPnl(params: {
50
44
  entryPrice: number;
51
45
  closePrice: number;
52
46
  closeSize: number;
53
47
  isLong: boolean;
54
48
  }): number;
55
- export declare const realizedPnlOnClose: typeof calculateRealizedPnl;
49
+ export declare function positionSupportsMarginAdjustment(position: Position): boolean;
50
+ export declare function positionSupportsMarginRemoval(position: Position): boolean;
56
51
  //# sourceMappingURL=position.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"position.d.ts","sourceRoot":"","sources":["../../../src/math/position.ts"],"names":[],"mappings":"AAgBA,wBAAgB,aAAa,CAAC,MAAM,EAAE,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC,CAErD;AAUD,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAK1E;AAWD,wBAAgB,sBAAsB,CACpC,UAAU,EAAE,MAAM,EAClB,YAAY,EAAE,MAAM,EACpB,IAAI,EAAE,MAAM,GACX,MAAM,CAKR;AAUD,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAQhE;AAUD,wBAAgB,uBAAuB,CACrC,aAAa,EAAE,MAAM,EACrB,QAAQ,EAAE,MAAM,GACf,MAAM,CAQR;AAWD,wBAAgB,4BAA4B,CAAC,MAAM,EAAE;IACnD,gBAAgB,EAAE,MAAM,CAAA;IACxB,YAAY,EAAE,MAAM,CAAA;CACrB,GAAG,MAAM,CAMT;AAKD,eAAO,MAAM,0BAA0B,qCAA+B,CAAA;AAYtE,wBAAgB,0BAA0B,CAAC,MAAM,EAAE;IACjD,gBAAgB,EAAE,MAAM,CAAA;IACxB,SAAS,EAAE,MAAM,CAAA;CAClB,GAAG,MAAM,CAST;AAKD,eAAO,MAAM,iBAAiB,mCAA6B,CAAA;AAoB3D,wBAAgB,wBAAwB,CAAC,MAAM,EAAE;IAC/C,UAAU,EAAE,MAAM,CAAA;IAClB,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,OAAO,CAAA;IACf,qBAAqB,EAAE,MAAM,CAAA;CAC9B,GAAG,MAAM,GAAG,SAAS,CAqBrB;AAKD,eAAO,MAAM,gCAAgC,iCAA2B,CAAA;AAUxE,wBAAgB,yBAAyB,CAAC,MAAM,EAAE;IAChD,gBAAgB,EAAE,MAAM,CAAA;IACxB,YAAY,EAAE,MAAM,CAAA;IACpB,MAAM,EAAE,OAAO,CAAA;CAChB,GAAG,OAAO,CAQV;AAkBD,wBAAgB,yBAAyB,CAAC,MAAM,EAAE;IAChD,WAAW,EAAE,MAAM,CAAA;IACnB,YAAY,EAAE,MAAM,CAAA;IACpB,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;CAClB,GAAG,MAAM,GAAG,SAAS,CAiBrB;AAKD,eAAO,MAAM,wBAAwB,kCAA4B,CAAA;AAajE,wBAAgB,mBAAmB,CAAC,MAAM,EAAE;IAC1C,eAAe,EAAE,MAAM,CAAA;IACvB,aAAa,EAAE,MAAM,CAAA;IACrB,WAAW,EAAE,MAAM,CAAA;IACnB,SAAS,EAAE,MAAM,CAAA;CAClB,GAAG,MAAM,GAAG,SAAS,CAarB;AAKD,eAAO,MAAM,kBAAkB,4BAAsB,CAAA;AAUrD,wBAAgB,qBAAqB,CAAC,MAAM,EAAE;IAC5C,UAAU,EAAE,MAAM,CAAA;IAClB,SAAS,EAAE,MAAM,CAAA;IACjB,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,OAAO,CAAA;CAChB,GAAG,MAAM,CAUT;AAKD,eAAO,MAAM,oBAAoB,8BAAwB,CAAA;AAUzD,wBAAgB,oBAAoB,CAAC,MAAM,EAAE;IAC3C,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,EAAE,MAAM,CAAA;IAClB,SAAS,EAAE,MAAM,CAAA;IACjB,MAAM,EAAE,OAAO,CAAA;CAChB,GAAG,MAAM,CAUT;AAKD,eAAO,MAAM,kBAAkB,6BAAuB,CAAA"}
1
+ {"version":3,"file":"position.d.ts","sourceRoot":"","sources":["../../../src/math/position.ts"],"names":[],"mappings":"AAUA,OAAO,EAEL,KAAK,QAAQ,EAEd,MAAM,mBAAmB,CAAA;AAW1B,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAK1E;AAWD,wBAAgB,sBAAsB,CACpC,UAAU,EAAE,MAAM,EAClB,YAAY,EAAE,MAAM,EACpB,IAAI,EAAE,MAAM,GACX,MAAM,CAKR;AAUD,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAQhE;AAUD,wBAAgB,uBAAuB,CACrC,aAAa,EAAE,MAAM,EACrB,QAAQ,EAAE,MAAM,GACf,MAAM,CAQR;AAWD,wBAAgB,4BAA4B,CAAC,MAAM,EAAE;IACnD,gBAAgB,EAAE,MAAM,CAAA;IACxB,YAAY,EAAE,MAAM,CAAA;CACrB,GAAG,MAAM,CAMT;AAYD,wBAAgB,0BAA0B,CAAC,MAAM,EAAE;IACjD,gBAAgB,EAAE,MAAM,CAAA;IACxB,SAAS,EAAE,MAAM,CAAA;CAClB,GAAG,MAAM,CAST;AAoBD,wBAAgB,wBAAwB,CAAC,MAAM,EAAE;IAC/C,UAAU,EAAE,MAAM,CAAA;IAClB,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,OAAO,CAAA;IACf,qBAAqB,EAAE,MAAM,CAAA;CAC9B,GAAG,MAAM,GAAG,SAAS,CAqBrB;AAUD,wBAAgB,yBAAyB,CAAC,MAAM,EAAE;IAChD,gBAAgB,EAAE,MAAM,CAAA;IACxB,YAAY,EAAE,MAAM,CAAA;IACpB,MAAM,EAAE,OAAO,CAAA;CAChB,GAAG,OAAO,CAQV;AAkBD,wBAAgB,yBAAyB,CAAC,MAAM,EAAE;IAChD,WAAW,EAAE,MAAM,CAAA;IACnB,YAAY,EAAE,MAAM,CAAA;IACpB,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;CAClB,GAAG,MAAM,GAAG,SAAS,CAiBrB;AAaD,wBAAgB,mBAAmB,CAAC,MAAM,EAAE;IAC1C,eAAe,EAAE,MAAM,CAAA;IACvB,aAAa,EAAE,MAAM,CAAA;IACrB,WAAW,EAAE,MAAM,CAAA;IACnB,SAAS,EAAE,MAAM,CAAA;CAClB,GAAG,MAAM,GAAG,SAAS,CAarB;AAUD,wBAAgB,qBAAqB,CAAC,MAAM,EAAE;IAC5C,UAAU,EAAE,MAAM,CAAA;IAClB,SAAS,EAAE,MAAM,CAAA;IACjB,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,OAAO,CAAA;CAChB,GAAG,MAAM,CAUT;AAUD,wBAAgB,oBAAoB,CAAC,MAAM,EAAE;IAC3C,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,EAAE,MAAM,CAAA;IAClB,SAAS,EAAE,MAAM,CAAA;IACjB,MAAM,EAAE,OAAO,CAAA;CAChB,GAAG,MAAM,CAUT;AAQD,wBAAgB,gCAAgC,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAK5E;AAQD,wBAAgB,6BAA6B,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAMzE"}
@@ -1,7 +1,5 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.realizedPnlOnClose = exports.predictUnrealizedPnl = exports.predictNewLeverage = exports.predictAverageEntryPrice = exports.estimateIsolatedLiquidationPrice = exports.effectiveLeverage = exports.liquidationDistancePercent = void 0;
4
- exports.directionSign = directionSign;
5
3
  exports.calculateNotionalValue = calculateNotionalValue;
6
4
  exports.calculateUnrealizedPnl = calculateUnrealizedPnl;
7
5
  exports.calculateRoe = calculateRoe;
@@ -14,10 +12,10 @@ exports.estimateAverageEntryPrice = estimateAverageEntryPrice;
14
12
  exports.estimateNewLeverage = estimateNewLeverage;
15
13
  exports.estimateUnrealizedPnl = estimateUnrealizedPnl;
16
14
  exports.calculateRealizedPnl = calculateRealizedPnl;
15
+ exports.positionSupportsMarginAdjustment = positionSupportsMarginAdjustment;
16
+ exports.positionSupportsMarginRemoval = positionSupportsMarginRemoval;
17
+ const perps_types_1 = require("@lifi/perps-types");
17
18
  const big_js_1 = require("../decimal/big.js");
18
- function directionSign(isLong) {
19
- return isLong ? 1 : -1;
20
- }
21
19
  function calculateNotionalValue(size, price) {
22
20
  if (!(0, big_js_1.areFinite)(size, price)) {
23
21
  return Number.NaN;
@@ -55,7 +53,6 @@ function calculateLiquidationDistance(params) {
55
53
  }
56
54
  return Math.abs((liquidationPrice - currentPrice) / currentPrice) * 100;
57
55
  }
58
- exports.liquidationDistancePercent = calculateLiquidationDistance;
59
56
  function calculateEffectiveLeverage(params) {
60
57
  const { positionValueUsd, marginUsd } = params;
61
58
  if (marginUsd === 0) {
@@ -66,7 +63,6 @@ function calculateEffectiveLeverage(params) {
66
63
  }
67
64
  return new big_js_1.DivBig(positionValueUsd).div(marginUsd).toNumber();
68
65
  }
69
- exports.effectiveLeverage = calculateEffectiveLeverage;
70
66
  function estimateLiquidationPrice(params) {
71
67
  const { entryPrice, leverage, isLong, maintenanceMarginRate } = params;
72
68
  if (leverage === 0) {
@@ -89,7 +85,6 @@ function estimateLiquidationPrice(params) {
89
85
  .minus(marginAvailable.times(side).div(mmr.times(-side).plus(1)))
90
86
  .toNumber();
91
87
  }
92
- exports.estimateIsolatedLiquidationPrice = estimateLiquidationPrice;
93
88
  function wouldImmediatelyLiquidate(params) {
94
89
  const { liquidationPrice, currentPrice, isLong } = params;
95
90
  if (currentPrice <= 0 || liquidationPrice <= 0) {
@@ -117,7 +112,6 @@ function estimateAverageEntryPrice(params) {
117
112
  .div(new big_js_1.DivBig(currentSize).plus(addSize))
118
113
  .toNumber();
119
114
  }
120
- exports.predictAverageEntryPrice = estimateAverageEntryPrice;
121
115
  function estimateNewLeverage(params) {
122
116
  const { currentNotional, currentMargin, addNotional, addMargin } = params;
123
117
  const totalMargin = currentMargin + addMargin;
@@ -132,7 +126,6 @@ function estimateNewLeverage(params) {
132
126
  .div(new big_js_1.DivBig(currentMargin).plus(addMargin))
133
127
  .toNumber();
134
128
  }
135
- exports.predictNewLeverage = estimateNewLeverage;
136
129
  function estimateUnrealizedPnl(params) {
137
130
  const { entryPrice, markPrice, size, isLong } = params;
138
131
  if (!(0, big_js_1.areFinite)(entryPrice, markPrice, size)) {
@@ -144,7 +137,6 @@ function estimateUnrealizedPnl(params) {
144
137
  .times(isLong ? 1 : -1)
145
138
  .toNumber();
146
139
  }
147
- exports.predictUnrealizedPnl = estimateUnrealizedPnl;
148
140
  function calculateRealizedPnl(params) {
149
141
  const { entryPrice, closePrice, closeSize, isLong } = params;
150
142
  if (!(0, big_js_1.areFinite)(entryPrice, closePrice, closeSize)) {
@@ -156,5 +148,13 @@ function calculateRealizedPnl(params) {
156
148
  .times(isLong ? 1 : -1)
157
149
  .toNumber();
158
150
  }
159
- exports.realizedPnlOnClose = calculateRealizedPnl;
151
+ function positionSupportsMarginAdjustment(position) {
152
+ return (position.marginMode === perps_types_1.MarginMode.ISOLATED &&
153
+ position.market.positionMarginAdjustment !== perps_types_1.PositionMarginAdjustment.NONE);
154
+ }
155
+ function positionSupportsMarginRemoval(position) {
156
+ return (positionSupportsMarginAdjustment(position) &&
157
+ position.market.positionMarginAdjustment ===
158
+ perps_types_1.PositionMarginAdjustment.ADD_AND_REMOVE);
159
+ }
160
160
  //# sourceMappingURL=position.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"position.js","sourceRoot":"","sources":["../../../src/math/position.ts"],"names":[],"mappings":";;;AAgBA,sCAEC;AAUD,wDAKC;AAWD,wDASC;AAUD,oCAQC;AAUD,0DAWC;AAWD,oEASC;AAiBD,gEAYC;AAyBD,4DA0BC;AAeD,8DAYC;AAkBD,8DAsBC;AAkBD,kDAkBC;AAeD,sDAeC;AAeD,oDAeC;AA1VD,8CAAqD;AAOrD,SAAgB,aAAa,CAAC,MAAe;IAC3C,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;AACxB,CAAC;AAUD,SAAgB,sBAAsB,CAAC,IAAY,EAAE,KAAa;IAChE,IAAI,CAAC,IAAA,kBAAS,EAAC,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC;QAC5B,OAAO,MAAM,CAAC,GAAG,CAAA;IACnB,CAAC;IACD,OAAO,IAAI,eAAM,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE,CAAA;AACvD,CAAC;AAWD,SAAgB,sBAAsB,CACpC,UAAkB,EAClB,YAAoB,EACpB,IAAY;IAEZ,IAAI,CAAC,IAAA,kBAAS,EAAC,UAAU,EAAE,YAAY,EAAE,IAAI,CAAC,EAAE,CAAC;QAC/C,OAAO,MAAM,CAAC,GAAG,CAAA;IACnB,CAAC;IACD,OAAO,IAAI,eAAM,CAAC,YAAY,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAA;AAC1E,CAAC;AAUD,SAAgB,YAAY,CAAC,GAAW,EAAE,MAAc;IACtD,IAAI,MAAM,KAAK,CAAC,EAAE,CAAC;QACjB,OAAO,CAAC,CAAA;IACV,CAAC;IACD,IAAI,CAAC,IAAA,kBAAS,EAAC,GAAG,EAAE,MAAM,CAAC,EAAE,CAAC;QAC5B,OAAO,MAAM,CAAC,GAAG,CAAA;IACnB,CAAC;IACD,OAAO,IAAI,eAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAA;AAC1D,CAAC;AAUD,SAAgB,uBAAuB,CACrC,aAAqB,EACrB,QAAgB;IAEhB,IAAI,QAAQ,KAAK,CAAC,EAAE,CAAC;QACnB,OAAO,aAAa,GAAG,QAAQ,CAAA;IACjC,CAAC;IACD,IAAI,CAAC,IAAA,kBAAS,EAAC,aAAa,EAAE,QAAQ,CAAC,EAAE,CAAC;QACxC,OAAO,MAAM,CAAC,GAAG,CAAA;IACnB,CAAC;IACD,OAAO,IAAI,eAAM,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,QAAQ,EAAE,CAAA;AAC3D,CAAC;AAWD,SAAgB,4BAA4B,CAAC,MAG5C;IACC,MAAM,EAAE,gBAAgB,EAAE,YAAY,EAAE,GAAG,MAAM,CAAA;IACjD,IAAI,YAAY,KAAK,CAAC,EAAE,CAAC;QACvB,OAAO,CAAC,CAAA;IACV,CAAC;IACD,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,gBAAgB,GAAG,YAAY,CAAC,GAAG,YAAY,CAAC,GAAG,GAAG,CAAA;AACzE,CAAC;AAKY,QAAA,0BAA0B,GAAG,4BAA4B,CAAA;AAYtE,SAAgB,0BAA0B,CAAC,MAG1C;IACC,MAAM,EAAE,gBAAgB,EAAE,SAAS,EAAE,GAAG,MAAM,CAAA;IAC9C,IAAI,SAAS,KAAK,CAAC,EAAE,CAAC;QACpB,OAAO,CAAC,CAAA;IACV,CAAC;IACD,IAAI,CAAC,IAAA,kBAAS,EAAC,gBAAgB,EAAE,SAAS,CAAC,EAAE,CAAC;QAC5C,OAAO,MAAM,CAAC,GAAG,CAAA;IACnB,CAAC;IACD,OAAO,IAAI,eAAM,CAAC,gBAAgB,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,QAAQ,EAAE,CAAA;AAC/D,CAAC;AAKY,QAAA,iBAAiB,GAAG,0BAA0B,CAAA;AAoB3D,SAAgB,wBAAwB,CAAC,MAKxC;IACC,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,qBAAqB,EAAE,GAAG,MAAM,CAAA;IACtE,IAAI,QAAQ,KAAK,CAAC,EAAE,CAAC;QACnB,OAAO,SAAS,CAAA;IAClB,CAAC;IACD,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IAC5B,MAAM,WAAW,GAAG,CAAC,GAAG,qBAAqB,GAAG,IAAI,CAAA;IACpD,IAAI,WAAW,KAAK,CAAC,EAAE,CAAC;QACtB,OAAO,SAAS,CAAA;IAClB,CAAC;IACD,IAAI,CAAC,IAAA,kBAAS,EAAC,UAAU,EAAE,QAAQ,EAAE,qBAAqB,CAAC,EAAE,CAAC;QAC5D,OAAO,MAAM,CAAC,GAAG,CAAA;IACnB,CAAC;IACD,MAAM,GAAG,GAAG,IAAI,eAAM,CAAC,qBAAqB,CAAC,CAAA;IAC7C,MAAM,eAAe,GAAG,IAAI,eAAM,CAAC,CAAC,CAAC;SAClC,GAAG,CAAC,QAAQ,CAAC;SACb,KAAK,CAAC,GAAG,CAAC;SACV,KAAK,CAAC,UAAU,CAAC,CAAA;IACpB,OAAO,IAAI,eAAM,CAAC,UAAU,CAAC;SAC1B,KAAK,CAAC,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;SAChE,QAAQ,EAAE,CAAA;AACf,CAAC;AAKY,QAAA,gCAAgC,GAAG,wBAAwB,CAAA;AAUxE,SAAgB,yBAAyB,CAAC,MAIzC;IACC,MAAM,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,EAAE,GAAG,MAAM,CAAA;IACzD,IAAI,YAAY,IAAI,CAAC,IAAI,gBAAgB,IAAI,CAAC,EAAE,CAAC;QAC/C,OAAO,KAAK,CAAA;IACd,CAAC;IACD,OAAO,MAAM;QACX,CAAC,CAAC,gBAAgB,IAAI,YAAY;QAClC,CAAC,CAAC,gBAAgB,IAAI,YAAY,CAAA;AACtC,CAAC;AAkBD,SAAgB,yBAAyB,CAAC,MAKzC;IACC,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,MAAM,CAAA;IAChE,MAAM,SAAS,GAAG,WAAW,GAAG,OAAO,CAAA;IACvC,IAAI,SAAS,IAAI,CAAC,EAAE,CAAC;QACnB,OAAO,SAAS,CAAA;IAClB,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;QAClE,OAAO,SAAS,CAAA;IAClB,CAAC;IACD,IAAI,CAAC,IAAA,kBAAS,EAAC,WAAW,EAAE,OAAO,CAAC,EAAE,CAAC;QACrC,OAAO,MAAM,CAAC,GAAG,CAAA;IACnB,CAAC;IACD,OAAO,IAAI,eAAM,CAAC,WAAW,CAAC;SAC3B,KAAK,CAAC,YAAY,CAAC;SACnB,IAAI,CAAC,IAAI,eAAM,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;SAC1C,GAAG,CAAC,IAAI,eAAM,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;SAC1C,QAAQ,EAAE,CAAA;AACf,CAAC;AAKY,QAAA,wBAAwB,GAAG,yBAAyB,CAAA;AAajE,SAAgB,mBAAmB,CAAC,MAKnC;IACC,MAAM,EAAE,eAAe,EAAE,aAAa,EAAE,WAAW,EAAE,SAAS,EAAE,GAAG,MAAM,CAAA;IACzE,MAAM,WAAW,GAAG,aAAa,GAAG,SAAS,CAAA;IAC7C,IAAI,WAAW,IAAI,CAAC,EAAE,CAAC;QACrB,OAAO,SAAS,CAAA;IAClB,CAAC;IACD,IAAI,CAAC,IAAA,kBAAS,EAAC,eAAe,EAAE,aAAa,EAAE,WAAW,EAAE,SAAS,CAAC,EAAE,CAAC;QACvE,OAAO,MAAM,CAAC,GAAG,CAAA;IACnB,CAAC;IACD,OAAO,IAAI,eAAM,CAAC,eAAe,CAAC;SAC/B,IAAI,CAAC,WAAW,CAAC;SACjB,GAAG,CAAC,IAAI,eAAM,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;SAC9C,QAAQ,EAAE,CAAA;AACf,CAAC;AAKY,QAAA,kBAAkB,GAAG,mBAAmB,CAAA;AAUrD,SAAgB,qBAAqB,CAAC,MAKrC;IACC,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,CAAA;IACtD,IAAI,CAAC,IAAA,kBAAS,EAAC,UAAU,EAAE,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC;QAC5C,OAAO,MAAM,CAAC,GAAG,CAAA;IACnB,CAAC;IACD,OAAO,IAAI,eAAM,CAAC,SAAS,CAAC;SACzB,KAAK,CAAC,UAAU,CAAC;SACjB,KAAK,CAAC,IAAI,CAAC;SACX,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SACtB,QAAQ,EAAE,CAAA;AACf,CAAC;AAKY,QAAA,oBAAoB,GAAG,qBAAqB,CAAA;AAUzD,SAAgB,oBAAoB,CAAC,MAKpC;IACC,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,MAAM,CAAA;IAC5D,IAAI,CAAC,IAAA,kBAAS,EAAC,UAAU,EAAE,UAAU,EAAE,SAAS,CAAC,EAAE,CAAC;QAClD,OAAO,MAAM,CAAC,GAAG,CAAA;IACnB,CAAC;IACD,OAAO,IAAI,eAAM,CAAC,UAAU,CAAC;SAC1B,KAAK,CAAC,UAAU,CAAC;SACjB,KAAK,CAAC,SAAS,CAAC;SAChB,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SACtB,QAAQ,EAAE,CAAA;AACf,CAAC;AAKY,QAAA,kBAAkB,GAAG,oBAAoB,CAAA"}
1
+ {"version":3,"file":"position.js","sourceRoot":"","sources":["../../../src/math/position.ts"],"names":[],"mappings":";;AAyBA,wDAKC;AAWD,wDASC;AAUD,oCAQC;AAUD,0DAWC;AAWD,oEASC;AAYD,gEAYC;AAoBD,4DA0BC;AAUD,8DAYC;AAkBD,8DAsBC;AAaD,kDAkBC;AAUD,sDAeC;AAUD,oDAeC;AAQD,4EAKC;AAQD,sEAMC;AAnVD,mDAI0B;AAC1B,8CAAqD;AAUrD,SAAgB,sBAAsB,CAAC,IAAY,EAAE,KAAa;IAChE,IAAI,CAAC,IAAA,kBAAS,EAAC,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC;QAC5B,OAAO,MAAM,CAAC,GAAG,CAAA;IACnB,CAAC;IACD,OAAO,IAAI,eAAM,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE,CAAA;AACvD,CAAC;AAWD,SAAgB,sBAAsB,CACpC,UAAkB,EAClB,YAAoB,EACpB,IAAY;IAEZ,IAAI,CAAC,IAAA,kBAAS,EAAC,UAAU,EAAE,YAAY,EAAE,IAAI,CAAC,EAAE,CAAC;QAC/C,OAAO,MAAM,CAAC,GAAG,CAAA;IACnB,CAAC;IACD,OAAO,IAAI,eAAM,CAAC,YAAY,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAA;AAC1E,CAAC;AAUD,SAAgB,YAAY,CAAC,GAAW,EAAE,MAAc;IACtD,IAAI,MAAM,KAAK,CAAC,EAAE,CAAC;QACjB,OAAO,CAAC,CAAA;IACV,CAAC;IACD,IAAI,CAAC,IAAA,kBAAS,EAAC,GAAG,EAAE,MAAM,CAAC,EAAE,CAAC;QAC5B,OAAO,MAAM,CAAC,GAAG,CAAA;IACnB,CAAC;IACD,OAAO,IAAI,eAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAA;AAC1D,CAAC;AAUD,SAAgB,uBAAuB,CACrC,aAAqB,EACrB,QAAgB;IAEhB,IAAI,QAAQ,KAAK,CAAC,EAAE,CAAC;QACnB,OAAO,aAAa,GAAG,QAAQ,CAAA;IACjC,CAAC;IACD,IAAI,CAAC,IAAA,kBAAS,EAAC,aAAa,EAAE,QAAQ,CAAC,EAAE,CAAC;QACxC,OAAO,MAAM,CAAC,GAAG,CAAA;IACnB,CAAC;IACD,OAAO,IAAI,eAAM,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,QAAQ,EAAE,CAAA;AAC3D,CAAC;AAWD,SAAgB,4BAA4B,CAAC,MAG5C;IACC,MAAM,EAAE,gBAAgB,EAAE,YAAY,EAAE,GAAG,MAAM,CAAA;IACjD,IAAI,YAAY,KAAK,CAAC,EAAE,CAAC;QACvB,OAAO,CAAC,CAAA;IACV,CAAC;IACD,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,gBAAgB,GAAG,YAAY,CAAC,GAAG,YAAY,CAAC,GAAG,GAAG,CAAA;AACzE,CAAC;AAYD,SAAgB,0BAA0B,CAAC,MAG1C;IACC,MAAM,EAAE,gBAAgB,EAAE,SAAS,EAAE,GAAG,MAAM,CAAA;IAC9C,IAAI,SAAS,KAAK,CAAC,EAAE,CAAC;QACpB,OAAO,CAAC,CAAA;IACV,CAAC;IACD,IAAI,CAAC,IAAA,kBAAS,EAAC,gBAAgB,EAAE,SAAS,CAAC,EAAE,CAAC;QAC5C,OAAO,MAAM,CAAC,GAAG,CAAA;IACnB,CAAC;IACD,OAAO,IAAI,eAAM,CAAC,gBAAgB,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,QAAQ,EAAE,CAAA;AAC/D,CAAC;AAoBD,SAAgB,wBAAwB,CAAC,MAKxC;IACC,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,qBAAqB,EAAE,GAAG,MAAM,CAAA;IACtE,IAAI,QAAQ,KAAK,CAAC,EAAE,CAAC;QACnB,OAAO,SAAS,CAAA;IAClB,CAAC;IACD,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IAC5B,MAAM,WAAW,GAAG,CAAC,GAAG,qBAAqB,GAAG,IAAI,CAAA;IACpD,IAAI,WAAW,KAAK,CAAC,EAAE,CAAC;QACtB,OAAO,SAAS,CAAA;IAClB,CAAC;IACD,IAAI,CAAC,IAAA,kBAAS,EAAC,UAAU,EAAE,QAAQ,EAAE,qBAAqB,CAAC,EAAE,CAAC;QAC5D,OAAO,MAAM,CAAC,GAAG,CAAA;IACnB,CAAC;IACD,MAAM,GAAG,GAAG,IAAI,eAAM,CAAC,qBAAqB,CAAC,CAAA;IAC7C,MAAM,eAAe,GAAG,IAAI,eAAM,CAAC,CAAC,CAAC;SAClC,GAAG,CAAC,QAAQ,CAAC;SACb,KAAK,CAAC,GAAG,CAAC;SACV,KAAK,CAAC,UAAU,CAAC,CAAA;IACpB,OAAO,IAAI,eAAM,CAAC,UAAU,CAAC;SAC1B,KAAK,CAAC,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;SAChE,QAAQ,EAAE,CAAA;AACf,CAAC;AAUD,SAAgB,yBAAyB,CAAC,MAIzC;IACC,MAAM,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,EAAE,GAAG,MAAM,CAAA;IACzD,IAAI,YAAY,IAAI,CAAC,IAAI,gBAAgB,IAAI,CAAC,EAAE,CAAC;QAC/C,OAAO,KAAK,CAAA;IACd,CAAC;IACD,OAAO,MAAM;QACX,CAAC,CAAC,gBAAgB,IAAI,YAAY;QAClC,CAAC,CAAC,gBAAgB,IAAI,YAAY,CAAA;AACtC,CAAC;AAkBD,SAAgB,yBAAyB,CAAC,MAKzC;IACC,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,MAAM,CAAA;IAChE,MAAM,SAAS,GAAG,WAAW,GAAG,OAAO,CAAA;IACvC,IAAI,SAAS,IAAI,CAAC,EAAE,CAAC;QACnB,OAAO,SAAS,CAAA;IAClB,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;QAClE,OAAO,SAAS,CAAA;IAClB,CAAC;IACD,IAAI,CAAC,IAAA,kBAAS,EAAC,WAAW,EAAE,OAAO,CAAC,EAAE,CAAC;QACrC,OAAO,MAAM,CAAC,GAAG,CAAA;IACnB,CAAC;IACD,OAAO,IAAI,eAAM,CAAC,WAAW,CAAC;SAC3B,KAAK,CAAC,YAAY,CAAC;SACnB,IAAI,CAAC,IAAI,eAAM,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;SAC1C,GAAG,CAAC,IAAI,eAAM,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;SAC1C,QAAQ,EAAE,CAAA;AACf,CAAC;AAaD,SAAgB,mBAAmB,CAAC,MAKnC;IACC,MAAM,EAAE,eAAe,EAAE,aAAa,EAAE,WAAW,EAAE,SAAS,EAAE,GAAG,MAAM,CAAA;IACzE,MAAM,WAAW,GAAG,aAAa,GAAG,SAAS,CAAA;IAC7C,IAAI,WAAW,IAAI,CAAC,EAAE,CAAC;QACrB,OAAO,SAAS,CAAA;IAClB,CAAC;IACD,IAAI,CAAC,IAAA,kBAAS,EAAC,eAAe,EAAE,aAAa,EAAE,WAAW,EAAE,SAAS,CAAC,EAAE,CAAC;QACvE,OAAO,MAAM,CAAC,GAAG,CAAA;IACnB,CAAC;IACD,OAAO,IAAI,eAAM,CAAC,eAAe,CAAC;SAC/B,IAAI,CAAC,WAAW,CAAC;SACjB,GAAG,CAAC,IAAI,eAAM,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;SAC9C,QAAQ,EAAE,CAAA;AACf,CAAC;AAUD,SAAgB,qBAAqB,CAAC,MAKrC;IACC,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,CAAA;IACtD,IAAI,CAAC,IAAA,kBAAS,EAAC,UAAU,EAAE,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC;QAC5C,OAAO,MAAM,CAAC,GAAG,CAAA;IACnB,CAAC;IACD,OAAO,IAAI,eAAM,CAAC,SAAS,CAAC;SACzB,KAAK,CAAC,UAAU,CAAC;SACjB,KAAK,CAAC,IAAI,CAAC;SACX,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SACtB,QAAQ,EAAE,CAAA;AACf,CAAC;AAUD,SAAgB,oBAAoB,CAAC,MAKpC;IACC,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,MAAM,CAAA;IAC5D,IAAI,CAAC,IAAA,kBAAS,EAAC,UAAU,EAAE,UAAU,EAAE,SAAS,CAAC,EAAE,CAAC;QAClD,OAAO,MAAM,CAAC,GAAG,CAAA;IACnB,CAAC;IACD,OAAO,IAAI,eAAM,CAAC,UAAU,CAAC;SAC1B,KAAK,CAAC,UAAU,CAAC;SACjB,KAAK,CAAC,SAAS,CAAC;SAChB,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SACtB,QAAQ,EAAE,CAAA;AACf,CAAC;AAQD,SAAgB,gCAAgC,CAAC,QAAkB;IACjE,OAAO,CACL,QAAQ,CAAC,UAAU,KAAK,wBAAU,CAAC,QAAQ;QAC3C,QAAQ,CAAC,MAAM,CAAC,wBAAwB,KAAK,sCAAwB,CAAC,IAAI,CAC3E,CAAA;AACH,CAAC;AAQD,SAAgB,6BAA6B,CAAC,QAAkB;IAC9D,OAAO,CACL,gCAAgC,CAAC,QAAQ,CAAC;QAC1C,QAAQ,CAAC,MAAM,CAAC,wBAAwB;YACtC,sCAAwB,CAAC,cAAc,CAC1C,CAAA;AACH,CAAC"}
@@ -1,4 +1,4 @@
1
- import type { FeeTier } from '@lifi/perps-types';
1
+ import { type FeeTier } from '@lifi/perps-types';
2
2
  import type { PerpsSDKClient, ProviderGetQuoteParams, QuoteListener } from '../types/provider.js';
3
3
  import type { WsProvider } from '../websocket/types.js';
4
4
  export declare const QUOTE_THROTTLE_MS = 100;
@@ -1 +1 @@
1
- {"version":3,"file":"resolveSubscribeQuote.d.ts","sourceRoot":"","sources":["../../../src/services/resolveSubscribeQuote.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,OAAO,EAGR,MAAM,mBAAmB,CAAA;AAE1B,OAAO,KAAK,EACV,cAAc,EACd,sBAAsB,EACtB,aAAa,EACd,MAAM,sBAAsB,CAAA;AAC7B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;AAUvD,eAAO,MAAM,iBAAiB,MAAM,CAAA;AAqBpC,wBAAsB,qBAAqB,CACzC,MAAM,EAAE,cAAc,EACtB,QAAQ,EAAE,MAAM,EAChB,EAAE,EAAE,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,EACjC,MAAM,EAAE,sBAAsB,EAC9B,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,aAAa,GACrB,OAAO,CAAC,MAAM,IAAI,CAAC,CAuFrB"}
1
+ {"version":3,"file":"resolveSubscribeQuote.d.ts","sourceRoot":"","sources":["../../../src/services/resolveSubscribeQuote.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,OAAO,EAIb,MAAM,mBAAmB,CAAA;AAG1B,OAAO,KAAK,EACV,cAAc,EACd,sBAAsB,EACtB,aAAa,EACd,MAAM,sBAAsB,CAAA;AAC7B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;AAWvD,eAAO,MAAM,iBAAiB,MAAM,CAAA;AA0BpC,wBAAsB,qBAAqB,CACzC,MAAM,EAAE,cAAc,EACtB,QAAQ,EAAE,MAAM,EAChB,EAAE,EAAE,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,EACjC,MAAM,EAAE,sBAAsB,EAC9B,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,aAAa,GACrB,OAAO,CAAC,MAAM,IAAI,CAAC,CAiGrB"}
@@ -2,10 +2,16 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.QUOTE_THROTTLE_MS = void 0;
4
4
  exports.resolveSubscribeQuote = resolveSubscribeQuote;
5
+ const perps_types_1 = require("@lifi/perps-types");
6
+ const PerpsError_js_1 = require("../errors/PerpsError.js");
5
7
  const order_js_1 = require("../math/order.js");
8
+ const wsLog_js_1 = require("../websocket/wsLog.js");
6
9
  const resolveQuote_js_1 = require("./resolveQuote.js");
7
10
  exports.QUOTE_THROTTLE_MS = 100;
8
11
  async function resolveSubscribeQuote(client, provider, ws, params, feeTier, onQuote) {
12
+ if (!Number.isFinite(params.size)) {
13
+ throw new PerpsError_js_1.PerpsError(perps_types_1.PerpsErrorCode.ValidationError, `Quote size must be a finite number, got ${params.size}`);
14
+ }
9
15
  const market = await (0, resolveQuote_js_1.resolveQuoteMarket)(client, provider, params);
10
16
  let latestContext = await (0, resolveQuote_js_1.resolveQuotePrice)(client, provider, market.id);
11
17
  let latestBook;
@@ -16,19 +22,24 @@ async function resolveSubscribeQuote(client, provider, ws, params, feeTier, onQu
16
22
  return;
17
23
  }
18
24
  lastEmitAt = Date.now();
19
- onQuote((0, order_js_1.buildQuote)({
20
- provider,
21
- symbol: params.symbol,
22
- type: params.type,
23
- side: params.side,
24
- sizeUsd: params.size,
25
- market,
26
- price: latestContext,
27
- bids: latestBook.bids,
28
- asks: latestBook.asks,
29
- feeTier,
30
- timestamp: Date.now(),
31
- }));
25
+ try {
26
+ onQuote((0, order_js_1.buildQuote)({
27
+ provider,
28
+ symbol: params.symbol,
29
+ type: params.type,
30
+ side: params.side,
31
+ sizeUsd: params.size,
32
+ market,
33
+ price: latestContext,
34
+ bids: latestBook.bids,
35
+ asks: latestBook.asks,
36
+ feeTier,
37
+ timestamp: Date.now(),
38
+ }));
39
+ }
40
+ catch (error) {
41
+ wsLog_js_1.wsLog.listenerFailure(provider, 'quote', error);
42
+ }
32
43
  };
33
44
  const unsubscribeContext = await ws.subscribe({ channel: 'marketContext', dex: provider, marketId: market.id }, (event) => {
34
45
  if (event.channel !== 'marketContext') {
@@ -1 +1 @@
1
- {"version":3,"file":"resolveSubscribeQuote.js","sourceRoot":"","sources":["../../../src/services/resolveSubscribeQuote.ts"],"names":[],"mappings":";;;AA0CA,sDA8FC;AAnID,+CAA6C;AAO7C,uDAAyE;AAS5D,QAAA,iBAAiB,GAAG,GAAG,CAAA;AAqB7B,KAAK,UAAU,qBAAqB,CACzC,MAAsB,EACtB,QAAgB,EAChB,EAAiC,EACjC,MAA8B,EAC9B,OAAgB,EAChB,OAAsB;IAEtB,MAAM,MAAM,GAAG,MAAM,IAAA,oCAAkB,EAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAA;IAGjE,IAAI,aAAa,GAAkB,MAAM,IAAA,mCAAiB,EACxD,MAAM,EACN,QAAQ,EACR,MAAM,CAAC,EAAE,CACV,CAAA;IAED,IAAI,UAAyC,CAAA;IAC7C,IAAI,UAAU,GAAG,MAAM,CAAC,iBAAiB,CAAA;IACzC,IAAI,QAAmD,CAAA;IAEvD,MAAM,IAAI,GAAG,GAAG,EAAE;QAChB,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;YAC7B,OAAM;QACR,CAAC;QACD,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;QACvB,OAAO,CACL,IAAA,qBAAU,EAAC;YACT,QAAQ;YACR,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,OAAO,EAAE,MAAM,CAAC,IAAI;YACpB,MAAM;YACN,KAAK,EAAE,aAAa;YACpB,IAAI,EAAE,UAAU,CAAC,IAAI;YACrB,IAAI,EAAE,UAAU,CAAC,IAAI;YACrB,OAAO;YACP,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;SACtB,CAAC,CACH,CAAA;IACH,CAAC,CAAA;IAED,MAAM,kBAAkB,GAAG,MAAM,EAAE,CAAC,SAAS,CAC3C,EAAE,OAAO,EAAE,eAAe,EAAE,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,EAAE,EAChE,CAAC,KAAK,EAAE,EAAE;QACR,IAAI,KAAK,CAAC,OAAO,KAAK,eAAe,EAAE,CAAC;YACtC,OAAM;QACR,CAAC;QACD,aAAa,GAAG,KAAK,CAAC,IAAI,CAAA;IAC5B,CAAC,CACF,CAAA;IAED,IAAI,eAA2B,CAAA;IAC/B,IAAI,CAAC;QACH,eAAe,GAAG,MAAM,EAAE,CAAC,SAAS,CAClC,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,EAAE,EAC5D,CAAC,KAAK,EAAE,EAAE;YACR,IAAI,KAAK,CAAC,OAAO,KAAK,WAAW,EAAE,CAAC;gBAClC,OAAM;YACR,CAAC;YACD,UAAU,GAAG,KAAK,CAAC,IAAI,CAAA;YACvB,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAC3B,OAAM;YACR,CAAC;YACD,MAAM,IAAI,GAAG,yBAAiB,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,UAAU,CAAC,CAAA;YAC1D,IAAI,IAAI,IAAI,CAAC,EAAE,CAAC;gBACd,IAAI,EAAE,CAAA;YACR,CAAC;iBAAM,CAAC;gBACN,QAAQ,GAAG,UAAU,CAAC,GAAG,EAAE;oBACzB,QAAQ,GAAG,SAAS,CAAA;oBACpB,IAAI,EAAE,CAAA;gBACR,CAAC,EAAE,IAAI,CAAC,CAAA;YACV,CAAC;QACH,CAAC,CACF,CAAA;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,kBAAkB,EAAE,CAAA;QACpB,MAAM,KAAK,CAAA;IACb,CAAC;IAED,IAAI,QAAQ,GAAG,KAAK,CAAA;IACpB,OAAO,GAAG,EAAE;QACV,IAAI,QAAQ,EAAE,CAAC;YACb,OAAM;QACR,CAAC;QACD,QAAQ,GAAG,IAAI,CAAA;QACf,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,YAAY,CAAC,QAAQ,CAAC,CAAA;YACtB,QAAQ,GAAG,SAAS,CAAA;QACtB,CAAC;QACD,kBAAkB,EAAE,CAAA;QACpB,eAAe,EAAE,CAAA;IACnB,CAAC,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"resolveSubscribeQuote.js","sourceRoot":"","sources":["../../../src/services/resolveSubscribeQuote.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { AccountConfigSetting, AccountResponse, CancelTwapOrderParams as ActionCancelTwapOrderParams, CreateReferralCodeParams as ActionCreateReferralCodeParams, ActionParamsMap, PlaceTwapOrderParams as ActionPlaceTwapOrderParams, ActionStep, ExecuteActionResponse, MarginMode, MarketRef, MetaActionType, ModifyOrderInput, OnboardParams, OrderSide, OrderType, PortfolioHistoryRange, SetupAction, SetupOption, SignedActionStep, TimeInForce, TriggerOrderInput, WithdrawalParams } from '@lifi/perps-types';
1
+ import type { AccountConfigSetting, AccountResponse, CancelTwapOrderParams as ActionCancelTwapOrderParams, CreateReferralCodeParams as ActionCreateReferralCodeParams, ActionParamsMap, PlaceTwapOrderParams as ActionPlaceTwapOrderParams, ActionStep, DecimalString, ExecuteActionResponse, MarginMode, MarketRef, MetaActionType, ModifyOrderInput, OnboardParams, OrderSide, OrderType, PortfolioHistoryRange, SetupAction, SetupOption, SignedActionStep, TimeInForce, TriggerOrderInput, WithdrawalParams } from '@lifi/perps-types';
2
2
  import type { Account, Address, WalletClient } from 'viem';
3
3
  import type { RetryConfig } from '../transport/retryPolicy.js';
4
4
  import type { RequestInterceptor, SwitchChainHook } from './config.js';
@@ -30,8 +30,8 @@ export interface PlaceOrderParams {
30
30
  market: MarketRef;
31
31
  side: OrderSide;
32
32
  type: Exclude<OrderType, OrderType.TWAP>;
33
- size: string;
34
- price: string;
33
+ size: DecimalString;
34
+ price: DecimalString;
35
35
  leverage?: number;
36
36
  marginMode?: MarginMode;
37
37
  reduceOnly?: boolean;
@@ -67,7 +67,7 @@ export interface SendAssetActionParams {
67
67
  collateral: string;
68
68
  sourceDex: string;
69
69
  destinationDex: string;
70
- amount: string;
70
+ amount: DecimalString;
71
71
  }
72
72
  export interface CancelOrdersParams {
73
73
  provider: string;