@lifi/perps-sdk 23.1.0 → 25.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.
- package/README.md +102 -56
- package/dist/cjs/client/PerpsClient.d.ts +3 -2
- package/dist/cjs/client/PerpsClient.d.ts.map +1 -1
- package/dist/cjs/client/PerpsClient.js +16 -9
- package/dist/cjs/client/PerpsClient.js.map +1 -1
- package/dist/cjs/decimal/arithmetic.d.ts +15 -0
- package/dist/cjs/decimal/arithmetic.d.ts.map +1 -0
- package/dist/cjs/decimal/arithmetic.js +53 -0
- package/dist/cjs/decimal/arithmetic.js.map +1 -0
- package/dist/cjs/decimal/big.d.ts +0 -1
- package/dist/cjs/decimal/big.d.ts.map +1 -1
- package/dist/cjs/decimal/big.js +0 -4
- package/dist/cjs/decimal/big.js.map +1 -1
- package/dist/cjs/decimal/compare.d.ts +6 -2
- package/dist/cjs/decimal/compare.d.ts.map +1 -1
- package/dist/cjs/decimal/compare.js +15 -2
- package/dist/cjs/decimal/compare.js.map +1 -1
- package/dist/cjs/decimal/convert.d.ts +10 -6
- package/dist/cjs/decimal/convert.d.ts.map +1 -1
- package/dist/cjs/decimal/convert.js +34 -21
- package/dist/cjs/decimal/convert.js.map +1 -1
- package/dist/cjs/decimal/decimalStringToBig.d.ts +5 -0
- package/dist/cjs/decimal/decimalStringToBig.d.ts.map +1 -0
- package/dist/cjs/decimal/decimalStringToBig.js +25 -0
- package/dist/cjs/decimal/decimalStringToBig.js.map +1 -0
- package/dist/cjs/decimal/format.d.ts.map +1 -1
- package/dist/cjs/decimal/format.js +70 -52
- package/dist/cjs/decimal/format.js.map +1 -1
- package/dist/cjs/decimal/parse.d.ts +5 -4
- package/dist/cjs/decimal/parse.d.ts.map +1 -1
- package/dist/cjs/decimal/parse.js +43 -25
- package/dist/cjs/decimal/parse.js.map +1 -1
- package/dist/cjs/errors/invalidInput.d.ts +3 -0
- package/dist/cjs/errors/invalidInput.d.ts.map +1 -0
- package/dist/cjs/errors/invalidInput.js +9 -0
- package/dist/cjs/errors/invalidInput.js.map +1 -0
- package/dist/cjs/index.d.ts +15 -12
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +69 -9
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/math/fills.d.ts +1 -1
- package/dist/cjs/math/fills.d.ts.map +1 -1
- package/dist/cjs/math/fills.js +28 -13
- package/dist/cjs/math/fills.js.map +1 -1
- package/dist/cjs/math/order.d.ts +27 -16
- package/dist/cjs/math/order.d.ts.map +1 -1
- package/dist/cjs/math/order.js +131 -134
- package/dist/cjs/math/order.js.map +1 -1
- package/dist/cjs/math/position.d.ts +85 -35
- package/dist/cjs/math/position.d.ts.map +1 -1
- package/dist/cjs/math/position.js +93 -94
- package/dist/cjs/math/position.js.map +1 -1
- package/dist/cjs/services/getGasRecommendation.js +1 -1
- package/dist/cjs/services/getGasRecommendation.js.map +1 -1
- package/dist/cjs/services/getQuote.d.ts +1 -1
- package/dist/cjs/services/resolveSubscribeQuote.d.ts.map +1 -1
- package/dist/cjs/services/resolveSubscribeQuote.js +3 -2
- package/dist/cjs/services/resolveSubscribeQuote.js.map +1 -1
- package/dist/cjs/transport/request.d.ts +1 -0
- package/dist/cjs/transport/request.d.ts.map +1 -1
- package/dist/cjs/transport/request.js +2 -2
- package/dist/cjs/transport/request.js.map +1 -1
- package/dist/cjs/types/api.d.ts +4 -0
- package/dist/cjs/types/api.d.ts.map +1 -1
- package/dist/cjs/types/provider.d.ts +9 -5
- package/dist/cjs/types/provider.d.ts.map +1 -1
- package/dist/cjs/types/withdrawal.d.ts +12 -4
- package/dist/cjs/types/withdrawal.d.ts.map +1 -1
- package/dist/cjs/utils/createSafeFunction.d.ts +2 -0
- package/dist/cjs/utils/createSafeFunction.d.ts.map +1 -0
- package/dist/cjs/utils/createSafeFunction.js +15 -0
- package/dist/cjs/utils/createSafeFunction.js.map +1 -0
- package/dist/cjs/utils/timestampToIsoString.d.ts +3 -0
- package/dist/cjs/utils/timestampToIsoString.d.ts.map +1 -0
- package/dist/cjs/utils/timestampToIsoString.js +16 -0
- package/dist/cjs/utils/timestampToIsoString.js.map +1 -0
- package/dist/cjs/utils/warnOnce.d.ts +6 -0
- package/dist/cjs/utils/warnOnce.d.ts.map +1 -1
- package/dist/cjs/utils/warnOnce.js +19 -1
- package/dist/cjs/utils/warnOnce.js.map +1 -1
- package/dist/cjs/version.d.ts +1 -1
- package/dist/cjs/version.js +1 -1
- package/dist/cjs/websocket/PerpsWsClient.d.ts +2 -0
- package/dist/cjs/websocket/PerpsWsClient.d.ts.map +1 -1
- package/dist/cjs/websocket/PerpsWsClient.js +14 -1
- package/dist/cjs/websocket/PerpsWsClient.js.map +1 -1
- package/dist/cjs/websocket/wsLog.d.ts +2 -0
- package/dist/cjs/websocket/wsLog.d.ts.map +1 -1
- package/dist/cjs/websocket/wsLog.js +9 -0
- package/dist/cjs/websocket/wsLog.js.map +1 -1
- package/dist/cjs/wire/orderAmounts.d.ts +3 -2
- package/dist/cjs/wire/orderAmounts.d.ts.map +1 -1
- package/dist/cjs/wire/orderAmounts.js +22 -21
- package/dist/cjs/wire/orderAmounts.js.map +1 -1
- package/dist/cjs/wire/refuel.d.ts +4 -1
- package/dist/cjs/wire/refuel.d.ts.map +1 -1
- package/dist/cjs/wire/refuel.js +23 -6
- package/dist/cjs/wire/refuel.js.map +1 -1
- package/dist/cjs/wire/transferable.js +3 -3
- package/dist/cjs/wire/transferable.js.map +1 -1
- package/dist/cjs/wire/withdraw.d.ts.map +1 -1
- package/dist/cjs/wire/withdraw.js +3 -3
- package/dist/cjs/wire/withdraw.js.map +1 -1
- package/dist/esm/client/PerpsClient.d.ts +17 -4
- package/dist/esm/client/PerpsClient.d.ts.map +1 -1
- package/dist/esm/client/PerpsClient.js +30 -8
- package/dist/esm/client/PerpsClient.js.map +1 -1
- package/dist/esm/decimal/arithmetic.d.ts +98 -0
- package/dist/esm/decimal/arithmetic.d.ts.map +1 -0
- package/dist/esm/decimal/arithmetic.js +126 -0
- package/dist/esm/decimal/arithmetic.js.map +1 -0
- package/dist/esm/decimal/big.d.ts +0 -2
- package/dist/esm/decimal/big.d.ts.map +1 -1
- package/dist/esm/decimal/big.js +0 -4
- package/dist/esm/decimal/big.js.map +1 -1
- package/dist/esm/decimal/compare.d.ts +40 -6
- package/dist/esm/decimal/compare.d.ts.map +1 -1
- package/dist/esm/decimal/compare.js +46 -6
- package/dist/esm/decimal/compare.js.map +1 -1
- package/dist/esm/decimal/convert.d.ts +50 -36
- package/dist/esm/decimal/convert.d.ts.map +1 -1
- package/dist/esm/decimal/convert.js +64 -42
- package/dist/esm/decimal/convert.js.map +1 -1
- package/dist/esm/decimal/decimalStringToBig.d.ts +25 -0
- package/dist/esm/decimal/decimalStringToBig.d.ts.map +1 -0
- package/dist/esm/decimal/decimalStringToBig.js +37 -0
- package/dist/esm/decimal/decimalStringToBig.js.map +1 -0
- package/dist/esm/decimal/format.d.ts +4 -1
- package/dist/esm/decimal/format.d.ts.map +1 -1
- package/dist/esm/decimal/format.js +71 -70
- package/dist/esm/decimal/format.js.map +1 -1
- package/dist/esm/decimal/parse.d.ts +29 -13
- package/dist/esm/decimal/parse.d.ts.map +1 -1
- package/dist/esm/decimal/parse.js +61 -44
- package/dist/esm/decimal/parse.js.map +1 -1
- package/dist/esm/errors/invalidInput.d.ts +4 -0
- package/dist/esm/errors/invalidInput.d.ts.map +1 -0
- package/dist/esm/errors/invalidInput.js +7 -0
- package/dist/esm/errors/invalidInput.js.map +1 -0
- package/dist/esm/index.d.ts +15 -12
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +11 -8
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/math/fills.d.ts +6 -3
- package/dist/esm/math/fills.d.ts.map +1 -1
- package/dist/esm/math/fills.js +31 -16
- package/dist/esm/math/fills.js.map +1 -1
- package/dist/esm/math/order.d.ts +84 -66
- package/dist/esm/math/order.d.ts.map +1 -1
- package/dist/esm/math/order.js +178 -175
- package/dist/esm/math/order.js.map +1 -1
- package/dist/esm/math/position.d.ts +155 -98
- package/dist/esm/math/position.d.ts.map +1 -1
- package/dist/esm/math/position.js +160 -156
- package/dist/esm/math/position.js.map +1 -1
- package/dist/esm/services/getGasRecommendation.js +1 -1
- package/dist/esm/services/getGasRecommendation.js.map +1 -1
- package/dist/esm/services/getQuote.d.ts +2 -2
- package/dist/esm/services/getQuote.js +1 -1
- package/dist/esm/services/resolveSubscribeQuote.d.ts +1 -1
- package/dist/esm/services/resolveSubscribeQuote.d.ts.map +1 -1
- package/dist/esm/services/resolveSubscribeQuote.js +4 -3
- package/dist/esm/services/resolveSubscribeQuote.js.map +1 -1
- package/dist/esm/transport/request.d.ts +5 -0
- package/dist/esm/transport/request.d.ts.map +1 -1
- package/dist/esm/transport/request.js +2 -2
- package/dist/esm/transport/request.js.map +1 -1
- package/dist/esm/types/api.d.ts +9 -0
- package/dist/esm/types/api.d.ts.map +1 -1
- package/dist/esm/types/provider.d.ts +30 -16
- package/dist/esm/types/provider.d.ts.map +1 -1
- package/dist/esm/types/withdrawal.d.ts +32 -7
- package/dist/esm/types/withdrawal.d.ts.map +1 -1
- package/dist/esm/utils/createSafeFunction.d.ts +9 -0
- package/dist/esm/utils/createSafeFunction.d.ts.map +1 -0
- package/dist/esm/utils/createSafeFunction.js +19 -0
- package/dist/esm/utils/createSafeFunction.js.map +1 -0
- package/dist/esm/utils/timestampToIsoString.d.ts +15 -0
- package/dist/esm/utils/timestampToIsoString.d.ts.map +1 -0
- package/dist/esm/utils/timestampToIsoString.js +24 -0
- package/dist/esm/utils/timestampToIsoString.js.map +1 -0
- package/dist/esm/utils/warnOnce.d.ts +27 -0
- package/dist/esm/utils/warnOnce.d.ts.map +1 -1
- package/dist/esm/utils/warnOnce.js +36 -0
- package/dist/esm/utils/warnOnce.js.map +1 -1
- package/dist/esm/version.d.ts +1 -1
- package/dist/esm/version.js +1 -1
- package/dist/esm/websocket/PerpsWsClient.d.ts +7 -0
- package/dist/esm/websocket/PerpsWsClient.d.ts.map +1 -1
- package/dist/esm/websocket/PerpsWsClient.js +20 -2
- package/dist/esm/websocket/PerpsWsClient.js.map +1 -1
- package/dist/esm/websocket/wsLog.d.ts +12 -0
- package/dist/esm/websocket/wsLog.d.ts.map +1 -1
- package/dist/esm/websocket/wsLog.js +19 -0
- package/dist/esm/websocket/wsLog.js.map +1 -1
- package/dist/esm/wire/orderAmounts.d.ts +9 -7
- package/dist/esm/wire/orderAmounts.d.ts.map +1 -1
- package/dist/esm/wire/orderAmounts.js +24 -20
- package/dist/esm/wire/orderAmounts.js.map +1 -1
- package/dist/esm/wire/refuel.d.ts +24 -14
- package/dist/esm/wire/refuel.d.ts.map +1 -1
- package/dist/esm/wire/refuel.js +38 -17
- package/dist/esm/wire/refuel.js.map +1 -1
- package/dist/esm/wire/transferable.d.ts +2 -2
- package/dist/esm/wire/transferable.js +5 -5
- package/dist/esm/wire/transferable.js.map +1 -1
- package/dist/esm/wire/withdraw.d.ts.map +1 -1
- package/dist/esm/wire/withdraw.js +3 -3
- package/dist/esm/wire/withdraw.js.map +1 -1
- package/dist/types/client/PerpsClient.d.ts +17 -4
- package/dist/types/client/PerpsClient.d.ts.map +1 -1
- package/dist/types/decimal/arithmetic.d.ts +98 -0
- package/dist/types/decimal/arithmetic.d.ts.map +1 -0
- package/dist/types/decimal/big.d.ts +0 -2
- package/dist/types/decimal/big.d.ts.map +1 -1
- package/dist/types/decimal/compare.d.ts +40 -6
- package/dist/types/decimal/compare.d.ts.map +1 -1
- package/dist/types/decimal/convert.d.ts +50 -36
- package/dist/types/decimal/convert.d.ts.map +1 -1
- package/dist/types/decimal/decimalStringToBig.d.ts +25 -0
- package/dist/types/decimal/decimalStringToBig.d.ts.map +1 -0
- package/dist/types/decimal/format.d.ts +4 -1
- package/dist/types/decimal/format.d.ts.map +1 -1
- package/dist/types/decimal/parse.d.ts +29 -13
- package/dist/types/decimal/parse.d.ts.map +1 -1
- package/dist/types/errors/invalidInput.d.ts +4 -0
- package/dist/types/errors/invalidInput.d.ts.map +1 -0
- package/dist/types/index.d.ts +15 -12
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/math/fills.d.ts +6 -3
- package/dist/types/math/fills.d.ts.map +1 -1
- package/dist/types/math/order.d.ts +84 -66
- package/dist/types/math/order.d.ts.map +1 -1
- package/dist/types/math/position.d.ts +155 -98
- package/dist/types/math/position.d.ts.map +1 -1
- package/dist/types/services/getQuote.d.ts +2 -2
- package/dist/types/services/resolveSubscribeQuote.d.ts +1 -1
- package/dist/types/services/resolveSubscribeQuote.d.ts.map +1 -1
- package/dist/types/transport/request.d.ts +5 -0
- package/dist/types/transport/request.d.ts.map +1 -1
- package/dist/types/types/api.d.ts +9 -0
- package/dist/types/types/api.d.ts.map +1 -1
- package/dist/types/types/provider.d.ts +30 -16
- package/dist/types/types/provider.d.ts.map +1 -1
- package/dist/types/types/withdrawal.d.ts +32 -7
- package/dist/types/types/withdrawal.d.ts.map +1 -1
- package/dist/types/utils/createSafeFunction.d.ts +9 -0
- package/dist/types/utils/createSafeFunction.d.ts.map +1 -0
- package/dist/types/utils/timestampToIsoString.d.ts +15 -0
- package/dist/types/utils/timestampToIsoString.d.ts.map +1 -0
- package/dist/types/utils/warnOnce.d.ts +27 -0
- package/dist/types/utils/warnOnce.d.ts.map +1 -1
- package/dist/types/version.d.ts +1 -1
- package/dist/types/websocket/PerpsWsClient.d.ts +7 -0
- package/dist/types/websocket/PerpsWsClient.d.ts.map +1 -1
- package/dist/types/websocket/wsLog.d.ts +12 -0
- package/dist/types/websocket/wsLog.d.ts.map +1 -1
- package/dist/types/wire/orderAmounts.d.ts +9 -7
- package/dist/types/wire/orderAmounts.d.ts.map +1 -1
- package/dist/types/wire/refuel.d.ts +24 -14
- package/dist/types/wire/refuel.d.ts.map +1 -1
- package/dist/types/wire/transferable.d.ts +2 -2
- package/dist/types/wire/withdraw.d.ts.map +1 -1
- package/package.json +2 -2
- package/src/client/PerpsClient.ts +48 -10
- package/src/decimal/arithmetic.ts +170 -0
- package/src/decimal/big.ts +0 -5
- package/src/decimal/compare.ts +61 -11
- package/src/decimal/convert.ts +105 -63
- package/src/decimal/decimalStringToBig.ts +42 -0
- package/src/decimal/format.ts +81 -72
- package/src/decimal/parse.ts +78 -57
- package/src/errors/invalidInput.ts +10 -0
- package/src/index.ts +80 -12
- package/src/math/fills.ts +32 -17
- package/src/math/order.ts +279 -226
- package/src/math/position.ts +280 -196
- package/src/services/getGasRecommendation.ts +1 -1
- package/src/services/getQuote.ts +2 -2
- package/src/services/resolveSubscribeQuote.ts +4 -3
- package/src/transport/request.ts +7 -2
- package/src/types/api.ts +10 -0
- package/src/types/provider.ts +39 -16
- package/src/types/withdrawal.ts +35 -8
- package/src/utils/createSafeFunction.ts +20 -0
- package/src/utils/timestampToIsoString.ts +31 -0
- package/src/utils/warnOnce.ts +60 -0
- package/src/version.ts +1 -1
- package/src/websocket/PerpsWsClient.ts +25 -2
- package/src/websocket/wsLog.ts +44 -0
- package/src/wire/orderAmounts.ts +45 -26
- package/src/wire/refuel.ts +56 -20
- package/src/wire/transferable.ts +5 -5
- package/src/wire/withdraw.ts +3 -5
- package/dist/cjs/decimal/requireDecimal.d.ts +0 -4
- package/dist/cjs/decimal/requireDecimal.d.ts.map +0 -1
- package/dist/cjs/decimal/requireDecimal.js +0 -12
- package/dist/cjs/decimal/requireDecimal.js.map +0 -1
- package/dist/esm/decimal/requireDecimal.d.ts +0 -5
- package/dist/esm/decimal/requireDecimal.d.ts.map +0 -1
- package/dist/esm/decimal/requireDecimal.js +0 -7
- package/dist/esm/decimal/requireDecimal.js.map +0 -1
- package/dist/types/decimal/requireDecimal.d.ts +0 -5
- package/dist/types/decimal/requireDecimal.d.ts.map +0 -1
- package/src/decimal/requireDecimal.ts +0 -8
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createSafeFunction.js","sourceRoot":"","sources":["../../../src/utils/createSafeFunction.ts"],"names":[],"mappings":";;AAOA,gDAYC;AAZD,SAAgB,kBAAkB,CAChC,IAAY,EACZ,gBAA2C;IAE3C,OAAO,CAAC,GAAG,IAAI,EAAE,EAAE;QACjB,IAAI,CAAC;YACH,OAAO,gBAAgB,CAAC,GAAG,IAAI,CAAC,CAAA;QAClC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,IAAI,CAAC,eAAe,IAAI,SAAS,EAAE,KAAK,CAAC,CAAA;YACjD,OAAO,SAAS,CAAA;QAClB,CAAC;IACH,CAAC,CAAA;AACH,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"timestampToIsoString.d.ts","sourceRoot":"","sources":["../../../src/utils/timestampToIsoString.ts"],"names":[],"mappings":"AAWA,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CASnE;AAOD,eAAO,MAAM,wBAAwB,gDAGpC,CAAA"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.safeTimestampToIsoString = void 0;
|
|
4
|
+
exports.timestampToIsoString = timestampToIsoString;
|
|
5
|
+
const perps_types_1 = require("@lifi/perps-types");
|
|
6
|
+
const PerpsError_js_1 = require("../errors/PerpsError.js");
|
|
7
|
+
const createSafeFunction_js_1 = require("./createSafeFunction.js");
|
|
8
|
+
function timestampToIsoString(value) {
|
|
9
|
+
const time = value === '' ? Number.NaN : new Date(value).getTime();
|
|
10
|
+
if (Number.isNaN(time)) {
|
|
11
|
+
throw new PerpsError_js_1.PerpsError(perps_types_1.PerpsErrorCode.ValidationError, `'${String(value)}' is not a valid timestamp.`);
|
|
12
|
+
}
|
|
13
|
+
return new Date(time).toISOString();
|
|
14
|
+
}
|
|
15
|
+
exports.safeTimestampToIsoString = (0, createSafeFunction_js_1.createSafeFunction)('timestampToIsoString', timestampToIsoString);
|
|
16
|
+
//# sourceMappingURL=timestampToIsoString.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"timestampToIsoString.js","sourceRoot":"","sources":["../../../src/utils/timestampToIsoString.ts"],"names":[],"mappings":";;;AAWA,oDASC;AApBD,mDAAkD;AAClD,2DAAoD;AACpD,mEAA4D;AAS5D,SAAgB,oBAAoB,CAAC,KAAsB;IACzD,MAAM,IAAI,GAAG,KAAK,KAAK,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,CAAA;IAClE,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QACvB,MAAM,IAAI,0BAAU,CAClB,4BAAc,CAAC,eAAe,EAC9B,IAAI,MAAM,CAAC,KAAK,CAAC,6BAA6B,CAC/C,CAAA;IACH,CAAC;IACD,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAA;AACrC,CAAC;AAOY,QAAA,wBAAwB,GAAG,IAAA,0CAAkB,EACxD,sBAAsB,EACtB,oBAAoB,CACrB,CAAA"}
|
|
@@ -1,2 +1,8 @@
|
|
|
1
1
|
export declare const createWarnOnce: () => ((key: string, message: string) => void);
|
|
2
|
+
export declare const cutVenueText: (value: unknown) => string;
|
|
3
|
+
export declare const skippedRowMessage: (source: string, row: string, field: string, value: unknown, expected: string, marketId?: string) => string;
|
|
4
|
+
export declare const warnSkippedVenueRow: (provider: string, row: string, field: string, value: unknown, { marketId, expected, }?: {
|
|
5
|
+
marketId?: string;
|
|
6
|
+
expected?: string;
|
|
7
|
+
}) => void;
|
|
2
8
|
//# sourceMappingURL=warnOnce.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"warnOnce.d.ts","sourceRoot":"","sources":["../../../src/utils/warnOnce.ts"],"names":[],"mappings":"AAaA,eAAO,MAAM,cAAc,QAAO,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,CAexE,CAAA"}
|
|
1
|
+
{"version":3,"file":"warnOnce.d.ts","sourceRoot":"","sources":["../../../src/utils/warnOnce.ts"],"names":[],"mappings":"AAaA,eAAO,MAAM,cAAc,QAAO,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,CAexE,CAAA;AAUD,eAAO,MAAM,YAAY,GAAI,OAAO,OAAO,KAAG,MAK7C,CAAA;AAQD,eAAO,MAAM,iBAAiB,GAC5B,QAAQ,MAAM,EACd,KAAK,MAAM,EACX,OAAO,MAAM,EACb,OAAO,OAAO,EACd,UAAU,MAAM,EAChB,WAAW,MAAM,KAChB,MAGF,CAAA;AAaD,eAAO,MAAM,mBAAmB,GAC9B,UAAU,MAAM,EAChB,KAAK,MAAM,EACX,OAAO,MAAM,EACb,OAAO,OAAO,EACd,0BAGG;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAO,KAC/C,IAKF,CAAA"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.createWarnOnce = void 0;
|
|
3
|
+
exports.warnSkippedVenueRow = exports.skippedRowMessage = exports.cutVenueText = exports.createWarnOnce = void 0;
|
|
4
4
|
const KEY_MEMORY_LIMIT = 256;
|
|
5
5
|
const createWarnOnce = () => {
|
|
6
6
|
const seen = new Set();
|
|
@@ -19,4 +19,22 @@ const createWarnOnce = () => {
|
|
|
19
19
|
};
|
|
20
20
|
};
|
|
21
21
|
exports.createWarnOnce = createWarnOnce;
|
|
22
|
+
const MAX_VALUE_CHARS = 64;
|
|
23
|
+
const cutVenueText = (value) => {
|
|
24
|
+
const text = String(value);
|
|
25
|
+
return text.length > MAX_VALUE_CHARS
|
|
26
|
+
? `${text.slice(0, MAX_VALUE_CHARS)}…`
|
|
27
|
+
: text;
|
|
28
|
+
};
|
|
29
|
+
exports.cutVenueText = cutVenueText;
|
|
30
|
+
const skippedRowMessage = (source, row, field, value, expected, marketId) => {
|
|
31
|
+
const market = marketId === undefined ? '' : ` on market '${marketId}'`;
|
|
32
|
+
return `[${source}] skipping ${row} row${market}: \`${field}\` is not a valid ${expected}: '${(0, exports.cutVenueText)(value)}'`;
|
|
33
|
+
};
|
|
34
|
+
exports.skippedRowMessage = skippedRowMessage;
|
|
35
|
+
const warnSkippedRowOnce = (0, exports.createWarnOnce)();
|
|
36
|
+
const warnSkippedVenueRow = (provider, row, field, value, { marketId, expected = 'decimal', } = {}) => {
|
|
37
|
+
warnSkippedRowOnce(`${provider}|${row}|${field}|${expected}|${marketId ?? ''}`, (0, exports.skippedRowMessage)(provider, row, field, value, expected, marketId));
|
|
38
|
+
};
|
|
39
|
+
exports.warnSkippedVenueRow = warnSkippedVenueRow;
|
|
22
40
|
//# sourceMappingURL=warnOnce.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"warnOnce.js","sourceRoot":"","sources":["../../../src/utils/warnOnce.ts"],"names":[],"mappings":";;;AAIA,MAAM,gBAAgB,GAAG,GAAG,CAAA;AASrB,MAAM,cAAc,GAAG,GAA6C,EAAE;IAC3E,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAA;IAC9B,OAAO,CAAC,GAAG,EAAE,OAAO,EAAE,EAAE;QACtB,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YAClB,OAAM;QACR,CAAC;QACD,IAAI,IAAI,CAAC,IAAI,IAAI,gBAAgB,EAAE,CAAC;YAClC,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAA;YACzC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBACzB,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;YACrB,CAAC;QACH,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;QACb,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IACvB,CAAC,CAAA;AACH,CAAC,CAAA;AAfY,QAAA,cAAc,kBAe1B"}
|
|
1
|
+
{"version":3,"file":"warnOnce.js","sourceRoot":"","sources":["../../../src/utils/warnOnce.ts"],"names":[],"mappings":";;;AAIA,MAAM,gBAAgB,GAAG,GAAG,CAAA;AASrB,MAAM,cAAc,GAAG,GAA6C,EAAE;IAC3E,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAA;IAC9B,OAAO,CAAC,GAAG,EAAE,OAAO,EAAE,EAAE;QACtB,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YAClB,OAAM;QACR,CAAC;QACD,IAAI,IAAI,CAAC,IAAI,IAAI,gBAAgB,EAAE,CAAC;YAClC,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAA;YACzC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBACzB,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;YACrB,CAAC;QACH,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;QACb,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IACvB,CAAC,CAAA;AACH,CAAC,CAAA;AAfY,QAAA,cAAc,kBAe1B;AAED,MAAM,eAAe,GAAG,EAAE,CAAA;AAQnB,MAAM,YAAY,GAAG,CAAC,KAAc,EAAU,EAAE;IACrD,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,CAAA;IAC1B,OAAO,IAAI,CAAC,MAAM,GAAG,eAAe;QAClC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,eAAe,CAAC,GAAG;QACtC,CAAC,CAAC,IAAI,CAAA;AACV,CAAC,CAAA;AALY,QAAA,YAAY,gBAKxB;AAQM,MAAM,iBAAiB,GAAG,CAC/B,MAAc,EACd,GAAW,EACX,KAAa,EACb,KAAc,EACd,QAAgB,EAChB,QAAiB,EACT,EAAE;IACV,MAAM,MAAM,GAAG,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,eAAe,QAAQ,GAAG,CAAA;IACvE,OAAO,IAAI,MAAM,cAAc,GAAG,OAAO,MAAM,OAAO,KAAK,qBAAqB,QAAQ,MAAM,IAAA,oBAAY,EAAC,KAAK,CAAC,GAAG,CAAA;AACtH,CAAC,CAAA;AAVY,QAAA,iBAAiB,qBAU7B;AAED,MAAM,kBAAkB,GAAG,IAAA,sBAAc,GAAE,CAAA;AAWpC,MAAM,mBAAmB,GAAG,CACjC,QAAgB,EAChB,GAAW,EACX,KAAa,EACb,KAAc,EACd,EACE,QAAQ,EACR,QAAQ,GAAG,SAAS,MACwB,EAAE,EAC1C,EAAE;IACR,kBAAkB,CAChB,GAAG,QAAQ,IAAI,GAAG,IAAI,KAAK,IAAI,QAAQ,IAAI,QAAQ,IAAI,EAAE,EAAE,EAC3D,IAAA,yBAAiB,EAAC,QAAQ,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,CAAC,CACnE,CAAA;AACH,CAAC,CAAA;AAdY,QAAA,mBAAmB,uBAc/B"}
|
package/dist/cjs/version.d.ts
CHANGED
package/dist/cjs/version.js
CHANGED
|
@@ -20,6 +20,7 @@ export declare class PerpsWsClient {
|
|
|
20
20
|
private readonly options;
|
|
21
21
|
private providers;
|
|
22
22
|
private initPromises;
|
|
23
|
+
private discovery;
|
|
23
24
|
private closed;
|
|
24
25
|
constructor(client: PerpsSDKClient, options?: PerpsWsClientOptions);
|
|
25
26
|
streamsCandles(provider: string): boolean;
|
|
@@ -31,5 +32,6 @@ export declare class PerpsWsClient {
|
|
|
31
32
|
private assertOpen;
|
|
32
33
|
private getOrCreateProvider;
|
|
33
34
|
private initProvider;
|
|
35
|
+
private discoverProviders;
|
|
34
36
|
}
|
|
35
37
|
//# sourceMappingURL=PerpsWsClient.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PerpsWsClient.d.ts","sourceRoot":"","sources":["../../../src/websocket/PerpsWsClient.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"PerpsWsClient.d.ts","sourceRoot":"","sources":["../../../src/websocket/PerpsWsClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,YAAY,EAClB,MAAM,mBAAmB,CAAA;AAG1B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AAC7D,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AAEzE,OAAO,KAAK,EACV,oBAAoB,EAEpB,UAAU,EACV,gBAAgB,EACjB,MAAM,YAAY,CAAA;AAOnB,MAAM,WAAW,uBAAuB;IACtC,QAAQ,EAAE,MAAM,CAAA;IAEhB,KAAK,EAAE,MAAM,CAAA;IAMb,MAAM,EAAE,cAAc,CAAA;CACvB;AAQD,MAAM,WAAW,iBAAiB;IAChC,CAAC,MAAM,EAAE,uBAAuB,GAAG,UAAU,CAAA;IAE7C,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAA;IAEhC,QAAQ,CAAC,uBAAuB,EAAE,OAAO,CAAA;CAC1C;AAOD,MAAM,WAAW,oBAAoB;IASnC,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAA;CAChD;AAQD,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAgB;IACvC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAsB;IAC9C,OAAO,CAAC,SAAS,CAAgC;IACjD,OAAO,CAAC,YAAY,CAAyC;IAC7D,OAAO,CAAC,SAAS,CAAwC;IACzD,OAAO,CAAC,MAAM,CAAQ;gBAEV,MAAM,EAAE,cAAc,EAAE,OAAO,GAAE,oBAAyB;IAatE,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO;IAWzC,uBAAuB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO;IAmB5C,SAAS,CAAC,CAAC,SAAS,YAAY,EACpC,GAAG,EAAE,CAAC,EACN,QAAQ,EAAE,CAAC,KAAK,EAAE,oBAAoB,CAAC,CAAC,CAAC,KAAK,IAAI,EAClD,QAAQ,CAAC,EAAE,gBAAgB,GAC1B,OAAO,CAAC,MAAM,IAAI,CAAC;IAkBhB,cAAc,CAClB,MAAM,EAAE,cAAc,EACtB,OAAO,EAAE,aAAa,GACrB,OAAO,CAAC,MAAM,IAAI,CAAC;IAqBtB,KAAK;IAeL,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAIjC,OAAO,CAAC,UAAU;YASJ,mBAAmB;YAqBnB,YAAY;IAgC1B,OAAO,CAAC,iBAAiB;CAY1B"}
|
|
@@ -10,6 +10,7 @@ class PerpsWsClient {
|
|
|
10
10
|
options;
|
|
11
11
|
providers = new Map();
|
|
12
12
|
initPromises = new Map();
|
|
13
|
+
discovery;
|
|
13
14
|
closed = false;
|
|
14
15
|
constructor(client, options = {}) {
|
|
15
16
|
this.client = client;
|
|
@@ -73,7 +74,7 @@ class PerpsWsClient {
|
|
|
73
74
|
throw new PerpsError_js_1.PerpsError(perps_types_1.PerpsErrorCode.SDKError, `No WS provider factory registered for '${provider}'. Pass one via ` +
|
|
74
75
|
'new PerpsWsClient(client, { wsProviders: { [key]: factory } }).');
|
|
75
76
|
}
|
|
76
|
-
const { providers } = await
|
|
77
|
+
const { providers } = await this.discoverProviders();
|
|
77
78
|
this.assertOpen();
|
|
78
79
|
const providerInfo = providers.find((d) => d.key === provider);
|
|
79
80
|
if (!providerInfo?.wsUrl) {
|
|
@@ -87,6 +88,18 @@ class PerpsWsClient {
|
|
|
87
88
|
this.providers.set(provider, wsProvider);
|
|
88
89
|
return wsProvider;
|
|
89
90
|
}
|
|
91
|
+
discoverProviders() {
|
|
92
|
+
if (this.discovery) {
|
|
93
|
+
return this.discovery;
|
|
94
|
+
}
|
|
95
|
+
const discovery = (0, getProviders_js_1.getProviders)(this.client).finally(() => {
|
|
96
|
+
if (this.discovery === discovery) {
|
|
97
|
+
this.discovery = undefined;
|
|
98
|
+
}
|
|
99
|
+
});
|
|
100
|
+
this.discovery = discovery;
|
|
101
|
+
return discovery;
|
|
102
|
+
}
|
|
90
103
|
}
|
|
91
104
|
exports.PerpsWsClient = PerpsWsClient;
|
|
92
105
|
//# sourceMappingURL=PerpsWsClient.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PerpsWsClient.js","sourceRoot":"","sources":["../../../src/websocket/PerpsWsClient.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"PerpsWsClient.js","sourceRoot":"","sources":["../../../src/websocket/PerpsWsClient.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,6 +4,8 @@ export declare const wsLog: {
|
|
|
4
4
|
readonly serverError: (provider: string, message: string) => void;
|
|
5
5
|
readonly subscribeFailure: (provider: string, channel: string, error: unknown) => void;
|
|
6
6
|
readonly unknownMarket: (provider: string, marketId: string) => void;
|
|
7
|
+
readonly skippedRow: (provider: string, row: string, field: string, value: unknown, marketId?: string) => void;
|
|
8
|
+
readonly droppedRow: (provider: string, row: string, reason: string) => void;
|
|
7
9
|
readonly marketRefreshFailure: (provider: string, error: unknown) => void;
|
|
8
10
|
readonly listenerFailure: (provider: string, listenerType: string, error: unknown) => void;
|
|
9
11
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wsLog.d.ts","sourceRoot":"","sources":["../../../src/websocket/wsLog.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"wsLog.d.ts","sourceRoot":"","sources":["../../../src/websocket/wsLog.ts"],"names":[],"mappings":"AAsBA,eAAO,MAAM,KAAK;sCAKO,MAAM,OAAO,MAAM,KAAG,IAAI;wCAQxB,MAAM,SAAS,OAAO,KAAG,IAAI;qCAShC,MAAM,WAAW,MAAM,KAAG,IAAI;0CAQzB,MAAM,WAAW,MAAM,SAAS,OAAO,KAAG,IAAI;uCAWjD,MAAM,YAAY,MAAM,KAAG,IAAI;oCAW3C,MAAM,OACX,MAAM,SACJ,MAAM,SACN,OAAO,aACH,MAAM,KAChB,IAAI;oCAkBc,MAAM,OAAO,MAAM,UAAU,MAAM,KAAG,IAAI;8CAWhC,MAAM,SAAS,OAAO,KAAG,IAAI;yCAQhD,MAAM,gBACF,MAAM,SACb,OAAO,KACb,IAAI;CAMC,CAAA"}
|
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.wsLog = void 0;
|
|
4
|
+
const warnOnce_js_1 = require("../utils/warnOnce.js");
|
|
4
5
|
const MAX_PAYLOAD_CHARS = 512;
|
|
5
6
|
const truncate = (raw) => raw.length > MAX_PAYLOAD_CHARS
|
|
6
7
|
? `${raw.slice(0, MAX_PAYLOAD_CHARS)}…(${raw.length} chars)`
|
|
7
8
|
: raw;
|
|
9
|
+
const warnSkippedRowOnce = (0, warnOnce_js_1.createWarnOnce)();
|
|
8
10
|
exports.wsLog = {
|
|
9
11
|
parseFailure(provider, raw) {
|
|
10
12
|
console.warn(`[${provider}:ws] dropping unparseable frame`, truncate(raw));
|
|
@@ -21,6 +23,13 @@ exports.wsLog = {
|
|
|
21
23
|
unknownMarket(provider, marketId) {
|
|
22
24
|
console.warn(`[${provider}:ws] skipping item for unknown market '${marketId}'`);
|
|
23
25
|
},
|
|
26
|
+
skippedRow(provider, row, field, value, marketId) {
|
|
27
|
+
warnSkippedRowOnce(`${provider}|${row}|${field}|${marketId ?? ''}`, (0, warnOnce_js_1.skippedRowMessage)(`${provider}:ws`, row, field, value, 'decimal', marketId));
|
|
28
|
+
},
|
|
29
|
+
droppedRow(provider, row, reason) {
|
|
30
|
+
const shown = (0, warnOnce_js_1.cutVenueText)(reason);
|
|
31
|
+
warnSkippedRowOnce(`${provider}|${row}|dropped|${shown}`, `[${provider}:ws] skipping ${row} row: ${shown}`);
|
|
32
|
+
},
|
|
24
33
|
marketRefreshFailure(provider, error) {
|
|
25
34
|
console.warn(`[${provider}:ws] market registry refresh failed`, error);
|
|
26
35
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wsLog.js","sourceRoot":"","sources":["../../../src/websocket/wsLog.ts"],"names":[],"mappings":";;;AAAA,MAAM,iBAAiB,GAAG,GAAG,CAAA;AAE7B,MAAM,QAAQ,GAAG,CAAC,GAAW,EAAU,EAAE,CACvC,GAAG,CAAC,MAAM,GAAG,iBAAiB;IAC5B,CAAC,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,iBAAiB,CAAC,KAAK,GAAG,CAAC,MAAM,SAAS;IAC5D,CAAC,CAAC,GAAG,CAAA;
|
|
1
|
+
{"version":3,"file":"wsLog.js","sourceRoot":"","sources":["../../../src/websocket/wsLog.ts"],"names":[],"mappings":";;;AAAA,sDAI6B;AAE7B,MAAM,iBAAiB,GAAG,GAAG,CAAA;AAE7B,MAAM,QAAQ,GAAG,CAAC,GAAW,EAAU,EAAE,CACvC,GAAG,CAAC,MAAM,GAAG,iBAAiB;IAC5B,CAAC,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,iBAAiB,CAAC,KAAK,GAAG,CAAC,MAAM,SAAS;IAC5D,CAAC,CAAC,GAAG,CAAA;AAET,MAAM,kBAAkB,GAAG,IAAA,4BAAc,GAAE,CAAA;AAS9B,QAAA,KAAK,GAAG;IAKnB,YAAY,CAAC,QAAgB,EAAE,GAAW;QACxC,OAAO,CAAC,IAAI,CAAC,IAAI,QAAQ,iCAAiC,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAA;IAC5E,CAAC;IAMD,cAAc,CAAC,QAAgB,EAAE,KAAc;QAC7C,OAAO,CAAC,KAAK,CAAC,IAAI,QAAQ,4BAA4B,EAAE,KAAK,CAAC,CAAA;IAChE,CAAC;IAOD,WAAW,CAAC,QAAgB,EAAE,OAAe;QAC3C,OAAO,CAAC,KAAK,CAAC,IAAI,QAAQ,mBAAmB,EAAE,OAAO,CAAC,CAAA;IACzD,CAAC;IAMD,gBAAgB,CAAC,QAAgB,EAAE,OAAe,EAAE,KAAc;QAChE,OAAO,CAAC,KAAK,CACX,IAAI,QAAQ,wCAAwC,OAAO,0DAA0D,EACrH,KAAK,CACN,CAAA;IACH,CAAC;IAMD,aAAa,CAAC,QAAgB,EAAE,QAAgB;QAC9C,OAAO,CAAC,IAAI,CACV,IAAI,QAAQ,0CAA0C,QAAQ,GAAG,CAClE,CAAA;IACH,CAAC;IAMD,UAAU,CACR,QAAgB,EAChB,GAAW,EACX,KAAa,EACb,KAAc,EACd,QAAiB;QAEjB,kBAAkB,CAChB,GAAG,QAAQ,IAAI,GAAG,IAAI,KAAK,IAAI,QAAQ,IAAI,EAAE,EAAE,EAC/C,IAAA,+BAAiB,EACf,GAAG,QAAQ,KAAK,EAChB,GAAG,EACH,KAAK,EACL,KAAK,EACL,SAAS,EACT,QAAQ,CACT,CACF,CAAA;IACH,CAAC;IAMD,UAAU,CAAC,QAAgB,EAAE,GAAW,EAAE,MAAc;QACtD,MAAM,KAAK,GAAG,IAAA,0BAAY,EAAC,MAAM,CAAC,CAAA;QAClC,kBAAkB,CAChB,GAAG,QAAQ,IAAI,GAAG,YAAY,KAAK,EAAE,EACrC,IAAI,QAAQ,iBAAiB,GAAG,SAAS,KAAK,EAAE,CACjD,CAAA;IACH,CAAC;IAKD,oBAAoB,CAAC,QAAgB,EAAE,KAAc;QACnD,OAAO,CAAC,IAAI,CAAC,IAAI,QAAQ,qCAAqC,EAAE,KAAK,CAAC,CAAA;IACxE,CAAC;IAKD,eAAe,CACb,QAAgB,EAChB,YAAoB,EACpB,KAAc;QAEd,OAAO,CAAC,KAAK,CACX,IAAI,QAAQ,+BAA+B,YAAY,WAAW,EAClE,KAAK,CACN,CAAA;IACH,CAAC;CACO,CAAA"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type
|
|
1
|
+
import { type DecimalString, type Market } from '@lifi/perps-types';
|
|
2
2
|
import type { PerpsSDKClient } from '../types/provider.js';
|
|
3
3
|
export interface OrderAmountsInput {
|
|
4
4
|
sdk: PerpsSDKClient;
|
|
@@ -13,5 +13,6 @@ export interface OrderAmounts {
|
|
|
13
13
|
size: DecimalString;
|
|
14
14
|
notional: DecimalString;
|
|
15
15
|
}
|
|
16
|
-
export declare function calculateOrderAmounts(input: OrderAmountsInput): OrderAmounts
|
|
16
|
+
export declare function calculateOrderAmounts(input: OrderAmountsInput): OrderAmounts;
|
|
17
|
+
export declare const safeCalculateOrderAmounts: (input: OrderAmountsInput) => OrderAmounts | undefined;
|
|
17
18
|
//# sourceMappingURL=orderAmounts.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"orderAmounts.d.ts","sourceRoot":"","sources":["../../../src/wire/orderAmounts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"orderAmounts.d.ts","sourceRoot":"","sources":["../../../src/wire/orderAmounts.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,MAAM,EAEZ,MAAM,mBAAmB,CAAA;AAO1B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAK1D,MAAM,WAAW,iBAAiB;IAChC,GAAG,EAAE,cAAc,CAAA;IACnB,MAAM,EAAE,MAAM,CAAA;IAEd,IAAI,EAAE,QAAQ,GAAG,MAAM,GAAG,UAAU,CAAA;IACpC,MAAM,EAAE,aAAa,CAAA;IACrB,QAAQ,EAAE,MAAM,CAAA;IAChB,KAAK,EAAE,aAAa,CAAA;CACrB;AAGD,MAAM,WAAW,YAAY;IAM3B,MAAM,EAAE,aAAa,CAAA;IAErB,IAAI,EAAE,aAAa,CAAA;IAEnB,QAAQ,EAAE,aAAa,CAAA;CACxB;AA8BD,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,iBAAiB,GAAG,YAAY,CAkC5E;AAGD,eAAO,MAAM,yBAAyB,wDAGrC,CAAA"}
|
|
@@ -1,29 +1,29 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.safeCalculateOrderAmounts = void 0;
|
|
6
4
|
exports.calculateOrderAmounts = calculateOrderAmounts;
|
|
7
|
-
const
|
|
8
|
-
const
|
|
5
|
+
const perps_types_1 = require("@lifi/perps-types");
|
|
6
|
+
const big_js_1 = require("../decimal/big.js");
|
|
7
|
+
const compare_js_1 = require("../decimal/compare.js");
|
|
9
8
|
const parse_js_1 = require("../decimal/parse.js");
|
|
9
|
+
const invalidInput_js_1 = require("../errors/invalidInput.js");
|
|
10
|
+
const PerpsError_js_1 = require("../errors/PerpsError.js");
|
|
11
|
+
const createSafeFunction_js_1 = require("../utils/createSafeFunction.js");
|
|
10
12
|
const snap_js_1 = require("./snap.js");
|
|
11
|
-
function
|
|
12
|
-
|
|
13
|
-
|
|
13
|
+
function requirePositiveDecimal(value, parameter) {
|
|
14
|
+
const parsed = (0, parse_js_1.isDecimalString)(value) ? new big_js_1.TruncBig(value) : undefined;
|
|
15
|
+
if (parsed === undefined || !parsed.gt(0)) {
|
|
16
|
+
throw (0, invalidInput_js_1.invalidInput)(parameter, `must be a positive decimal, got '${String(value)}'`);
|
|
14
17
|
}
|
|
15
|
-
|
|
16
|
-
return parsed.gt(0) ? parsed : null;
|
|
18
|
+
return parsed;
|
|
17
19
|
}
|
|
20
|
+
const lotSize = (market) => market.sizeIncrement ?? new big_js_1.TruncBig(`1e-${market.szDecimals}`).toFixed();
|
|
18
21
|
function calculateOrderAmounts(input) {
|
|
19
22
|
const { sdk, market, held, leverage } = input;
|
|
20
|
-
const amount =
|
|
21
|
-
const price =
|
|
22
|
-
if (
|
|
23
|
-
|
|
24
|
-
!Number.isFinite(leverage) ||
|
|
25
|
-
leverage <= 0) {
|
|
26
|
-
return null;
|
|
23
|
+
const amount = requirePositiveDecimal(input.amount, 'amount');
|
|
24
|
+
const price = requirePositiveDecimal(input.price, 'price');
|
|
25
|
+
if (!Number.isFinite(leverage) || leverage <= 0) {
|
|
26
|
+
throw (0, invalidInput_js_1.invalidInput)('leverage', `must be a finite number above zero, got ${leverage}`);
|
|
27
27
|
}
|
|
28
28
|
const requested = held === 'size'
|
|
29
29
|
? input.amount
|
|
@@ -31,16 +31,17 @@ function calculateOrderAmounts(input) {
|
|
|
31
31
|
? amount.div(price).toFixed()
|
|
32
32
|
: amount.times(leverage).div(price).toFixed();
|
|
33
33
|
const size = (0, snap_js_1.snapOrderSize)(sdk, market, requested);
|
|
34
|
-
if (
|
|
35
|
-
|
|
34
|
+
if ((0, compare_js_1.isDecimalStringZero)(size)) {
|
|
35
|
+
throw new PerpsError_js_1.PerpsError(perps_types_1.PerpsErrorCode.ValidationError, `The order size ${requested} is below the lot size ${lotSize(market)}.`);
|
|
36
36
|
}
|
|
37
|
-
const notional = new
|
|
37
|
+
const notional = new big_js_1.TruncBig(size).times(price);
|
|
38
38
|
return {
|
|
39
39
|
margin: held === 'margin'
|
|
40
40
|
? input.amount
|
|
41
|
-
: new
|
|
41
|
+
: new big_js_1.DivBig(notional).div(leverage).toFixed(),
|
|
42
42
|
size,
|
|
43
43
|
notional: notional.toFixed(),
|
|
44
44
|
};
|
|
45
45
|
}
|
|
46
|
+
exports.safeCalculateOrderAmounts = (0, createSafeFunction_js_1.createSafeFunction)('calculateOrderAmounts', calculateOrderAmounts);
|
|
46
47
|
//# sourceMappingURL=orderAmounts.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"orderAmounts.js","sourceRoot":"","sources":["../../../src/wire/orderAmounts.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"orderAmounts.js","sourceRoot":"","sources":["../../../src/wire/orderAmounts.ts"],"names":[],"mappings":";;;AAoEA,sDAkCC;AAtGD,mDAI0B;AAE1B,8CAAoD;AACpD,sDAA2D;AAC3D,kDAAqD;AACrD,+DAAwD;AACxD,2DAAoD;AAEpD,0EAAmE;AACnE,uCAAyC;AA2BzC,SAAS,sBAAsB,CAAC,KAAoB,EAAE,SAAiB;IACrE,MAAM,MAAM,GAAG,IAAA,0BAAe,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,iBAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IACvE,IAAI,MAAM,KAAK,SAAS,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1C,MAAM,IAAA,8BAAY,EAChB,SAAS,EACT,oCAAoC,MAAM,CAAC,KAAK,CAAC,GAAG,CACrD,CAAA;IACH,CAAC;IACD,OAAO,MAAM,CAAA;AACf,CAAC;AAED,MAAM,OAAO,GAAG,CAAC,MAAc,EAAiB,EAAE,CAChD,MAAM,CAAC,aAAa,IAAI,IAAI,iBAAQ,CAAC,MAAM,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC,OAAO,EAAE,CAAA;AAgB3E,SAAgB,qBAAqB,CAAC,KAAwB;IAC5D,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAA;IAC7C,MAAM,MAAM,GAAG,sBAAsB,CAAC,KAAK,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;IAC7D,MAAM,KAAK,GAAG,sBAAsB,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;IAC1D,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,QAAQ,IAAI,CAAC,EAAE,CAAC;QAChD,MAAM,IAAA,8BAAY,EAChB,UAAU,EACV,2CAA2C,QAAQ,EAAE,CACtD,CAAA;IACH,CAAC;IAED,MAAM,SAAS,GACb,IAAI,KAAK,MAAM;QACb,CAAC,CAAC,KAAK,CAAC,MAAM;QACd,CAAC,CAAC,IAAI,KAAK,UAAU;YACnB,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE;YAC7B,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,CAAA;IACnD,MAAM,IAAI,GAAG,IAAA,uBAAa,EAAC,GAAG,EAAE,MAAM,EAAE,SAAS,CAAC,CAAA;IAClD,IAAI,IAAA,gCAAmB,EAAC,IAAI,CAAC,EAAE,CAAC;QAC9B,MAAM,IAAI,0BAAU,CAClB,4BAAc,CAAC,eAAe,EAC9B,kBAAkB,SAAS,0BAA0B,OAAO,CAAC,MAAM,CAAC,GAAG,CACxE,CAAA;IACH,CAAC;IAED,MAAM,QAAQ,GAAG,IAAI,iBAAQ,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;IAChD,OAAO;QACL,MAAM,EACJ,IAAI,KAAK,QAAQ;YACf,CAAC,CAAC,KAAK,CAAC,MAAM;YACd,CAAC,CAAC,IAAI,eAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,OAAO,EAAE;QAClD,IAAI;QACJ,QAAQ,EAAE,QAAQ,CAAC,OAAO,EAAE;KAC7B,CAAA;AACH,CAAC;AAGY,QAAA,yBAAyB,GAAG,IAAA,0CAAkB,EACzD,uBAAuB,EACvB,qBAAqB,CACtB,CAAA"}
|
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
import { type DecimalString } from '@lifi/perps-types';
|
|
2
|
+
export declare const REFUEL_FEE_MARGIN_PERCENT = 20;
|
|
2
3
|
export interface RefuelAmountInput {
|
|
3
|
-
|
|
4
|
+
recommendedAmount: DecimalString;
|
|
5
|
+
recommendedUsd: DecimalString;
|
|
6
|
+
nativeBalance: DecimalString;
|
|
4
7
|
priceUsd: DecimalString;
|
|
5
8
|
decimals: number;
|
|
6
9
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"refuel.d.ts","sourceRoot":"","sources":["../../../src/wire/refuel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAAkB,MAAM,mBAAmB,CAAA;
|
|
1
|
+
{"version":3,"file":"refuel.d.ts","sourceRoot":"","sources":["../../../src/wire/refuel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAAkB,MAAM,mBAAmB,CAAA;AAatE,eAAO,MAAM,yBAAyB,KAAK,CAAA;AAG3C,MAAM,WAAW,iBAAiB;IAEhC,iBAAiB,EAAE,aAAa,CAAA;IAEhC,cAAc,EAAE,aAAa,CAAA;IAE7B,aAAa,EAAE,aAAa,CAAA;IAE5B,QAAQ,EAAE,aAAa,CAAA;IAEvB,QAAQ,EAAE,MAAM,CAAA;CACjB;AA2BD,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,iBAAiB,GACvB,aAAa,GAAG,SAAS,CA8B3B"}
|
package/dist/cjs/wire/refuel.js
CHANGED
|
@@ -1,22 +1,39 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.REFUEL_FEE_MARGIN_PERCENT = void 0;
|
|
3
4
|
exports.calculateRefuelAmount = calculateRefuelAmount;
|
|
4
5
|
const perps_types_1 = require("@lifi/perps-types");
|
|
5
6
|
const big_js_1 = require("../decimal/big.js");
|
|
6
|
-
const
|
|
7
|
+
const convert_js_1 = require("../decimal/convert.js");
|
|
8
|
+
const decimalStringToBig_js_1 = require("../decimal/decimalStringToBig.js");
|
|
7
9
|
const PerpsError_js_1 = require("../errors/PerpsError.js");
|
|
10
|
+
exports.REFUEL_FEE_MARGIN_PERCENT = 20;
|
|
11
|
+
function requireBaseUnits(value, field) {
|
|
12
|
+
if (!convert_js_1.BASE_UNITS_PATTERN.test(value)) {
|
|
13
|
+
throw new PerpsError_js_1.PerpsError(perps_types_1.PerpsErrorCode.ValidationError, `Invalid \`${field}\`: '${value}' is not an integer base-unit string.`);
|
|
14
|
+
}
|
|
15
|
+
return new big_js_1.DivBig(value);
|
|
16
|
+
}
|
|
8
17
|
function calculateRefuelAmount(input) {
|
|
9
18
|
const { decimals } = input;
|
|
10
19
|
if (!Number.isInteger(decimals) || decimals < 0) {
|
|
11
20
|
throw new PerpsError_js_1.PerpsError(perps_types_1.PerpsErrorCode.ValidationError, `Invalid \`decimals\` for a refuel amount: ${decimals}`);
|
|
12
21
|
}
|
|
13
|
-
const
|
|
14
|
-
const
|
|
15
|
-
|
|
22
|
+
const recommended = requireBaseUnits(input.recommendedAmount, 'recommendedAmount');
|
|
23
|
+
const balance = requireBaseUnits(input.nativeBalance, 'nativeBalance');
|
|
24
|
+
const recommendedUsd = (0, decimalStringToBig_js_1.decimalStringToDivBig)(input.recommendedUsd);
|
|
25
|
+
const priceUsd = (0, decimalStringToBig_js_1.decimalStringToDivBig)(input.priceUsd);
|
|
26
|
+
const deficit = recommended.minus(balance);
|
|
27
|
+
if (!recommended.gt(0) ||
|
|
28
|
+
!recommendedUsd.gt(0) ||
|
|
29
|
+
!priceUsd.gt(0) ||
|
|
30
|
+
!deficit.gt(0)) {
|
|
16
31
|
return undefined;
|
|
17
32
|
}
|
|
18
|
-
return
|
|
19
|
-
.
|
|
33
|
+
return recommendedUsd
|
|
34
|
+
.times(deficit)
|
|
35
|
+
.times(100 + exports.REFUEL_FEE_MARGIN_PERCENT)
|
|
36
|
+
.div(recommended.times(100).times(priceUsd))
|
|
20
37
|
.round(decimals, big_js_1.DivBig.roundUp)
|
|
21
38
|
.toFixed(decimals);
|
|
22
39
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"refuel.js","sourceRoot":"","sources":["../../../src/wire/refuel.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"refuel.js","sourceRoot":"","sources":["../../../src/wire/refuel.ts"],"names":[],"mappings":";;;AAsDA,sDAgCC;AAtFD,mDAAsE;AAEtE,8CAA0C;AAC1C,sDAA0D;AAC1D,4EAAwE;AACxE,2DAAoD;AAQvC,QAAA,yBAAyB,GAAG,EAAE,CAAA;AAgB3C,SAAS,gBAAgB,CAAC,KAAoB,EAAE,KAAa;IAC3D,IAAI,CAAC,+BAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACpC,MAAM,IAAI,0BAAU,CAClB,4BAAc,CAAC,eAAe,EAC9B,aAAa,KAAK,QAAQ,KAAK,uCAAuC,CACvE,CAAA;IACH,CAAC;IACD,OAAO,IAAI,eAAM,CAAC,KAAK,CAAC,CAAA;AAC1B,CAAC;AAiBD,SAAgB,qBAAqB,CACnC,KAAwB;IAExB,MAAM,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAA;IAC1B,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,QAAQ,GAAG,CAAC,EAAE,CAAC;QAChD,MAAM,IAAI,0BAAU,CAClB,4BAAc,CAAC,eAAe,EAC9B,6CAA6C,QAAQ,EAAE,CACxD,CAAA;IACH,CAAC;IACD,MAAM,WAAW,GAAG,gBAAgB,CAClC,KAAK,CAAC,iBAAiB,EACvB,mBAAmB,CACpB,CAAA;IACD,MAAM,OAAO,GAAG,gBAAgB,CAAC,KAAK,CAAC,aAAa,EAAE,eAAe,CAAC,CAAA;IACtE,MAAM,cAAc,GAAG,IAAA,6CAAqB,EAAC,KAAK,CAAC,cAAc,CAAC,CAAA;IAClE,MAAM,QAAQ,GAAG,IAAA,6CAAqB,EAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;IACtD,MAAM,OAAO,GAAG,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;IAC1C,IACE,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC;QAClB,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC,CAAC;QACrB,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC;QACf,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EACd,CAAC;QACD,OAAO,SAAS,CAAA;IAClB,CAAC;IACD,OAAO,cAAc;SAClB,KAAK,CAAC,OAAO,CAAC;SACd,KAAK,CAAC,GAAG,GAAG,iCAAyB,CAAC;SACtC,GAAG,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;SAC3C,KAAK,CAAC,QAAQ,EAAE,eAAM,CAAC,OAAO,CAAC;SAC/B,OAAO,CAAC,QAAQ,CAAC,CAAA;AACtB,CAAC"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.calculateTransferable = calculateTransferable;
|
|
4
|
-
const
|
|
4
|
+
const decimalStringToBig_js_1 = require("../decimal/decimalStringToBig.js");
|
|
5
5
|
function calculateTransferable(venueFigure, units) {
|
|
6
|
-
const figure = (0,
|
|
7
|
-
const held = (0,
|
|
6
|
+
const figure = (0, decimalStringToBig_js_1.decimalStringToBig)(venueFigure);
|
|
7
|
+
const held = (0, decimalStringToBig_js_1.decimalStringToBig)(units);
|
|
8
8
|
if (figure.lt(0)) {
|
|
9
9
|
return '0';
|
|
10
10
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transferable.js","sourceRoot":"","sources":["../../../src/wire/transferable.ts"],"names":[],"mappings":";;AAeA,sDAUC;AAxBD,
|
|
1
|
+
{"version":3,"file":"transferable.js","sourceRoot":"","sources":["../../../src/wire/transferable.ts"],"names":[],"mappings":";;AAeA,sDAUC;AAxBD,4EAAqE;AAcrE,SAAgB,qBAAqB,CACnC,WAA0B,EAC1B,KAAoB;IAEpB,MAAM,MAAM,GAAG,IAAA,0CAAkB,EAAC,WAAW,CAAC,CAAA;IAC9C,MAAM,IAAI,GAAG,IAAA,0CAAkB,EAAC,KAAK,CAAC,CAAA;IACtC,IAAI,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjB,OAAO,GAAG,CAAA;IACZ,CAAC;IACD,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,CAAA;AACpD,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"withdraw.d.ts","sourceRoot":"","sources":["../../../src/wire/withdraw.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAEtD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAA;AAYjE,wBAAgB,oBAAoB,CAClC,GAAG,EAAE,IAAI,CACP,mBAAmB,EACnB,WAAW,GAAG,eAAe,GAAG,eAAe,CAChD,GACA,aAAa,
|
|
1
|
+
{"version":3,"file":"withdraw.d.ts","sourceRoot":"","sources":["../../../src/wire/withdraw.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAEtD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAA;AAYjE,wBAAgB,oBAAoB,CAClC,GAAG,EAAE,IAAI,CACP,mBAAmB,EACnB,WAAW,GAAG,eAAe,GAAG,eAAe,CAChD,GACA,aAAa,CAOf"}
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.calculateWithdrawMax = calculateWithdrawMax;
|
|
4
|
-
const
|
|
4
|
+
const decimalStringToBig_js_1 = require("../decimal/decimalStringToBig.js");
|
|
5
5
|
function calculateWithdrawMax(row) {
|
|
6
|
-
const available = (0,
|
|
6
|
+
const available = (0, decimalStringToBig_js_1.decimalStringToBig)(row.available);
|
|
7
7
|
if (row.isFeeDeducted !== false || row.withdrawalFee === undefined) {
|
|
8
8
|
return available.toFixed();
|
|
9
9
|
}
|
|
10
|
-
const funded = available.minus((0,
|
|
10
|
+
const funded = available.minus((0, decimalStringToBig_js_1.decimalStringToBig)(row.withdrawalFee));
|
|
11
11
|
return funded.gt(0) ? funded.toFixed() : '0';
|
|
12
12
|
}
|
|
13
13
|
//# sourceMappingURL=withdraw.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"withdraw.js","sourceRoot":"","sources":["../../../src/wire/withdraw.ts"],"names":[],"mappings":";;AAcA,
|
|
1
|
+
{"version":3,"file":"withdraw.js","sourceRoot":"","sources":["../../../src/wire/withdraw.ts"],"names":[],"mappings":";;AAcA,oDAYC;AAzBD,4EAAqE;AAarE,SAAgB,oBAAoB,CAClC,GAGC;IAED,MAAM,SAAS,GAAG,IAAA,0CAAkB,EAAC,GAAG,CAAC,SAAS,CAAC,CAAA;IACnD,IAAI,GAAG,CAAC,aAAa,KAAK,KAAK,IAAI,GAAG,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;QACnE,OAAO,SAAS,CAAC,OAAO,EAAE,CAAA;IAC5B,CAAC;IACD,MAAM,MAAM,GAAG,SAAS,CAAC,KAAK,CAAC,IAAA,0CAAkB,EAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAA;IACrE,OAAO,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,GAAG,CAAA;AAC9C,CAAC"}
|
|
@@ -3,11 +3,11 @@ import { ActionType } from '@lifi/perps-types';
|
|
|
3
3
|
import type { Address } from 'viem';
|
|
4
4
|
import { type GetOrderParams } from '../services/getOrder.js';
|
|
5
5
|
import { type GetOrdersParams } from '../services/getOrders.js';
|
|
6
|
-
import type { BuildProviderSetupParams, CancelOrdersParams, CancelTwapOrderParams, CreateReferralCodeActionParams, ExecuteMetaActionParams, GetAccountResult, GetDepositFlowParams, GetPortfolioHistoryParams, GetSetupParams, GetWithdrawableBalancesParams, GetWithdrawFlowParams, ModifyOrdersParams, PerpsClientOptions, PlaceOrderParams, PlaceTriggerOrderParams, PlaceTwapOrderParams, ProviderSetup, SendAssetActionParams, SetupChecklistItem, SubmitOnboardingParams, WithdrawParams } from '../types/api.js';
|
|
6
|
+
import type { BuildProviderSetupParams, CancelOrdersParams, CancelTwapOrderParams, CreateReferralCodeActionParams, ExecuteMetaActionParams, GetAccountResult, GetDepositFlowParams, GetPortfolioHistoryParams, GetSetupParams, GetWithdrawableBalancesParams, GetWithdrawalTypesParams, GetWithdrawFlowParams, ModifyOrdersParams, PerpsClientOptions, PlaceOrderParams, PlaceTriggerOrderParams, PlaceTwapOrderParams, ProviderSetup, SendAssetActionParams, SetupChecklistItem, SubmitOnboardingParams, WithdrawParams } from '../types/api.js';
|
|
7
7
|
import type { SDKRequestOptions, SwitchChainHook } from '../types/config.js';
|
|
8
8
|
import type { DepositFlow } from '../types/deposit.js';
|
|
9
9
|
import type { PerpsSDKClient, SignActionProgress } from '../types/provider.js';
|
|
10
|
-
import type { WithdrawableBalance, WithdrawFlow } from '../types/withdrawal.js';
|
|
10
|
+
import type { WithdrawableBalance, WithdrawalSourceTypes, WithdrawFlow } from '../types/withdrawal.js';
|
|
11
11
|
/**
|
|
12
12
|
* The primary high-level perps API: wraps a {@link PerpsSDKClient} and owns the
|
|
13
13
|
* end-to-end signing pipeline for provider setup, orders, and account-level
|
|
@@ -270,8 +270,9 @@ export declare class PerpsClient {
|
|
|
270
270
|
*/
|
|
271
271
|
getWithdrawFlow(params: GetWithdrawFlowParams, options?: SDKRequestOptions): Promise<WithdrawFlow | undefined>;
|
|
272
272
|
/**
|
|
273
|
-
* The `(asset,
|
|
274
|
-
* `params.provider`. The venue owns how its balances split across
|
|
273
|
+
* The `(asset, category)` selections `params.address` can actually withdraw
|
|
274
|
+
* at `params.provider`. The venue owns how its balances split across
|
|
275
|
+
* categories;
|
|
275
276
|
* this join adds the core `/assets` metadata — precision, L1 identity and
|
|
276
277
|
* the per-asset minimum — and drops every row the minimum rules out, plus
|
|
277
278
|
* any row whose asset the provider's registry does not carry, since without
|
|
@@ -289,6 +290,18 @@ export declare class PerpsClient {
|
|
|
289
290
|
* @public
|
|
290
291
|
*/
|
|
291
292
|
getWithdrawableBalances(params: GetWithdrawableBalancesParams, options?: SDKRequestOptions): Promise<WithdrawableBalance[] | undefined>;
|
|
293
|
+
/**
|
|
294
|
+
* The withdrawal types `params.address` can choose per holding at
|
|
295
|
+
* `params.provider`, each with its cap and the `withdrawalOptions` to pass
|
|
296
|
+
* unchanged in `WithdrawalParams`.
|
|
297
|
+
*
|
|
298
|
+
* @returns `undefined` when the registered plugin declares no withdrawal
|
|
299
|
+
* types read.
|
|
300
|
+
* @throws {PerpsError} When the provider plugin is not registered, or when
|
|
301
|
+
* the plugin read fails.
|
|
302
|
+
* @public
|
|
303
|
+
*/
|
|
304
|
+
getWithdrawalTypes(params: GetWithdrawalTypesParams, options?: SDKRequestOptions): Promise<WithdrawalSourceTypes[] | undefined>;
|
|
292
305
|
/**
|
|
293
306
|
* The account's portfolio value and cumulative PnL over `params.range` at
|
|
294
307
|
* `params.provider`, read directly from the venue.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PerpsClient.d.ts","sourceRoot":"","sources":["../../../src/client/PerpsClient.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,eAAe,EACf,cAAc,EACd,eAAe,EAEf,UAAU,EACV,gBAAgB,EAChB,oBAAoB,EACpB,aAAa,EACb,qBAAqB,EACrB,SAAS,EACT,cAAc,EACd,cAAc,EACd,KAAK,EACL,cAAc,EACd,wBAAwB,EACxB,QAAQ,EAGR,WAAW,EACX,WAAW,EAEZ,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAEL,UAAU,EAKX,MAAM,mBAAmB,CAAA;
|
|
1
|
+
{"version":3,"file":"PerpsClient.d.ts","sourceRoot":"","sources":["../../../src/client/PerpsClient.ts"],"names":[],"mappings":"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"}
|