@metamask-previews/perps-controller 11.0.0-preview-9efd0b754 → 12.0.0-preview-4e64b66e8
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/CHANGELOG.md +30 -1
- package/dist/PerpsController-method-action-types.cjs.map +1 -1
- package/dist/PerpsController-method-action-types.d.cts +36 -1
- package/dist/PerpsController-method-action-types.d.cts.map +1 -1
- package/dist/PerpsController-method-action-types.d.mts +36 -1
- package/dist/PerpsController-method-action-types.d.mts.map +1 -1
- package/dist/PerpsController-method-action-types.mjs.map +1 -1
- package/dist/PerpsController.cjs +600 -119
- package/dist/PerpsController.cjs.map +1 -1
- package/dist/PerpsController.d.cts +35 -4
- package/dist/PerpsController.d.cts.map +1 -1
- package/dist/PerpsController.d.mts +35 -4
- package/dist/PerpsController.d.mts.map +1 -1
- package/dist/PerpsController.mjs +603 -122
- package/dist/PerpsController.mjs.map +1 -1
- package/dist/constants/eventNames.cjs +3 -0
- package/dist/constants/eventNames.cjs.map +1 -1
- package/dist/constants/eventNames.d.cts +1 -0
- package/dist/constants/eventNames.d.cts.map +1 -1
- package/dist/constants/eventNames.d.mts +1 -0
- package/dist/constants/eventNames.d.mts.map +1 -1
- package/dist/constants/eventNames.mjs +3 -0
- package/dist/constants/eventNames.mjs.map +1 -1
- package/dist/constants/hyperLiquidConfig.cjs +14 -2
- package/dist/constants/hyperLiquidConfig.cjs.map +1 -1
- package/dist/constants/hyperLiquidConfig.d.cts +7 -0
- package/dist/constants/hyperLiquidConfig.d.cts.map +1 -1
- package/dist/constants/hyperLiquidConfig.d.mts +7 -0
- package/dist/constants/hyperLiquidConfig.d.mts.map +1 -1
- package/dist/constants/hyperLiquidConfig.mjs +11 -0
- package/dist/constants/hyperLiquidConfig.mjs.map +1 -1
- package/dist/constants/perpsConfig.cjs +19 -2
- package/dist/constants/perpsConfig.cjs.map +1 -1
- package/dist/constants/perpsConfig.d.cts +39 -7
- package/dist/constants/perpsConfig.d.cts.map +1 -1
- package/dist/constants/perpsConfig.d.mts +39 -7
- package/dist/constants/perpsConfig.d.mts.map +1 -1
- package/dist/constants/perpsConfig.mjs +18 -1
- package/dist/constants/perpsConfig.mjs.map +1 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +3 -3
- package/dist/index.d.cts.map +1 -1
- package/dist/index.d.mts +3 -3
- package/dist/index.d.mts.map +1 -1
- package/dist/index.mjs.map +1 -1
- package/dist/providers/AggregatedPerpsProvider.cjs +16 -0
- package/dist/providers/AggregatedPerpsProvider.cjs.map +1 -1
- package/dist/providers/AggregatedPerpsProvider.d.cts +3 -1
- package/dist/providers/AggregatedPerpsProvider.d.cts.map +1 -1
- package/dist/providers/AggregatedPerpsProvider.d.mts +3 -1
- package/dist/providers/AggregatedPerpsProvider.d.mts.map +1 -1
- package/dist/providers/AggregatedPerpsProvider.mjs +16 -0
- package/dist/providers/AggregatedPerpsProvider.mjs.map +1 -1
- package/dist/providers/HyperLiquidProvider.cjs +325 -59
- package/dist/providers/HyperLiquidProvider.cjs.map +1 -1
- package/dist/providers/HyperLiquidProvider.d.cts +27 -1
- package/dist/providers/HyperLiquidProvider.d.cts.map +1 -1
- package/dist/providers/HyperLiquidProvider.d.mts +27 -1
- package/dist/providers/HyperLiquidProvider.d.mts.map +1 -1
- package/dist/providers/HyperLiquidProvider.mjs +326 -60
- package/dist/providers/HyperLiquidProvider.mjs.map +1 -1
- package/dist/services/HyperLiquidClientService.cjs +74 -25
- package/dist/services/HyperLiquidClientService.cjs.map +1 -1
- package/dist/services/HyperLiquidClientService.d.cts.map +1 -1
- package/dist/services/HyperLiquidClientService.d.mts.map +1 -1
- package/dist/services/HyperLiquidClientService.mjs +74 -25
- package/dist/services/HyperLiquidClientService.mjs.map +1 -1
- package/dist/services/HyperLiquidSubscriptionService.cjs +16 -5
- package/dist/services/HyperLiquidSubscriptionService.cjs.map +1 -1
- package/dist/services/HyperLiquidSubscriptionService.d.cts +1 -1
- package/dist/services/HyperLiquidSubscriptionService.d.cts.map +1 -1
- package/dist/services/HyperLiquidSubscriptionService.d.mts +1 -1
- package/dist/services/HyperLiquidSubscriptionService.d.mts.map +1 -1
- package/dist/services/HyperLiquidSubscriptionService.mjs +16 -5
- package/dist/services/HyperLiquidSubscriptionService.mjs.map +1 -1
- package/dist/services/MarketDataService.cjs +49 -5
- package/dist/services/MarketDataService.cjs.map +1 -1
- package/dist/services/MarketDataService.d.cts +2 -2
- package/dist/services/MarketDataService.d.cts.map +1 -1
- package/dist/services/MarketDataService.d.mts +2 -2
- package/dist/services/MarketDataService.d.mts.map +1 -1
- package/dist/services/MarketDataService.mjs +49 -5
- package/dist/services/MarketDataService.mjs.map +1 -1
- package/dist/services/RewardsIntegrationService.cjs +330 -68
- package/dist/services/RewardsIntegrationService.cjs.map +1 -1
- package/dist/services/RewardsIntegrationService.d.cts +61 -5
- package/dist/services/RewardsIntegrationService.d.cts.map +1 -1
- package/dist/services/RewardsIntegrationService.d.mts +61 -5
- package/dist/services/RewardsIntegrationService.d.mts.map +1 -1
- package/dist/services/RewardsIntegrationService.mjs +330 -68
- package/dist/services/RewardsIntegrationService.mjs.map +1 -1
- package/dist/services/ServiceContext.cjs.map +1 -1
- package/dist/services/ServiceContext.d.cts +17 -1
- package/dist/services/ServiceContext.d.cts.map +1 -1
- package/dist/services/ServiceContext.d.mts +17 -1
- package/dist/services/ServiceContext.d.mts.map +1 -1
- package/dist/services/ServiceContext.mjs.map +1 -1
- package/dist/services/TerminalMarketService.cjs +422 -7
- package/dist/services/TerminalMarketService.cjs.map +1 -1
- package/dist/services/TerminalMarketService.d.cts +10 -1
- package/dist/services/TerminalMarketService.d.cts.map +1 -1
- package/dist/services/TerminalMarketService.d.mts +10 -1
- package/dist/services/TerminalMarketService.d.mts.map +1 -1
- package/dist/services/TerminalMarketService.mjs +423 -8
- package/dist/services/TerminalMarketService.mjs.map +1 -1
- package/dist/services/TradingService.cjs +52 -28
- package/dist/services/TradingService.cjs.map +1 -1
- package/dist/services/TradingService.d.cts.map +1 -1
- package/dist/services/TradingService.d.mts.map +1 -1
- package/dist/services/TradingService.mjs +52 -28
- package/dist/services/TradingService.mjs.map +1 -1
- package/dist/types/index.cjs.map +1 -1
- package/dist/types/index.d.cts +156 -7
- package/dist/types/index.d.cts.map +1 -1
- package/dist/types/index.d.mts +156 -7
- package/dist/types/index.d.mts.map +1 -1
- package/dist/types/index.mjs.map +1 -1
- package/dist/utils/marketUtils.cjs +16 -1
- package/dist/utils/marketUtils.cjs.map +1 -1
- package/dist/utils/marketUtils.d.cts +1 -0
- package/dist/utils/marketUtils.d.cts.map +1 -1
- package/dist/utils/marketUtils.d.mts +1 -0
- package/dist/utils/marketUtils.d.mts.map +1 -1
- package/dist/utils/marketUtils.mjs +14 -0
- package/dist/utils/marketUtils.mjs.map +1 -1
- package/dist/utils/perpsDiskPersistence.cjs +19 -12
- package/dist/utils/perpsDiskPersistence.cjs.map +1 -1
- package/dist/utils/perpsDiskPersistence.d.cts +5 -1
- package/dist/utils/perpsDiskPersistence.d.cts.map +1 -1
- package/dist/utils/perpsDiskPersistence.d.mts +5 -1
- package/dist/utils/perpsDiskPersistence.d.mts.map +1 -1
- package/dist/utils/perpsDiskPersistence.mjs +19 -12
- package/dist/utils/perpsDiskPersistence.mjs.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TradingService.d.cts","sourceRoot":"","sources":["../../src/services/TradingService.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EACV,aAAa,EACb,WAAW,EACX,WAAW,EACX,eAAe,EACf,iBAAiB,EACjB,iBAAiB,EACjB,kBAAkB,EAClB,kBAAkB,EAClB,mBAAmB,EACnB,oBAAoB,EACpB,oBAAoB,EACpB,QAAQ,EACR,YAAY,EACZ,wBAAwB,EAExB,yBAAyB,
|
|
1
|
+
{"version":3,"file":"TradingService.d.cts","sourceRoot":"","sources":["../../src/services/TradingService.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TradingService.d.mts","sourceRoot":"","sources":["../../src/services/TradingService.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EACV,aAAa,EACb,WAAW,EACX,WAAW,EACX,eAAe,EACf,iBAAiB,EACjB,iBAAiB,EACjB,kBAAkB,EAClB,kBAAkB,EAClB,mBAAmB,EACnB,oBAAoB,EACpB,oBAAoB,EACpB,QAAQ,EACR,YAAY,EACZ,wBAAwB,EAExB,yBAAyB,
|
|
1
|
+
{"version":3,"file":"TradingService.d.mts","sourceRoot":"","sources":["../../src/services/TradingService.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,7 +9,7 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
|
|
|
9
9
|
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
10
10
|
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
11
11
|
};
|
|
12
|
-
var _TradingService_instances, _TradingService_deps, _TradingService_controllerDeps, _TradingService_getErrorContext, _TradingService_buildAttributionProperties, _TradingService_trackSubmitted, _TradingService_trackOrderResult, _TradingService_handleOrderSuccess, _TradingService_withFeeDiscount, _TradingService_loadPositionData, _TradingService_calculateCloseMetrics, _TradingService_buildCloseEventProperties, _TradingService_trackPositionCloseResult, _TradingService_handleDataLakeReporting, _TradingService_calculateFeeDiscountWithMeasurement;
|
|
12
|
+
var _TradingService_instances, _TradingService_deps, _TradingService_controllerDeps, _TradingService_feeContextTail, _TradingService_getErrorContext, _TradingService_buildAttributionProperties, _TradingService_trackSubmitted, _TradingService_trackOrderResult, _TradingService_handleOrderSuccess, _TradingService_withFeeDiscount, _TradingService_loadPositionData, _TradingService_calculateCloseMetrics, _TradingService_buildCloseEventProperties, _TradingService_trackPositionCloseResult, _TradingService_handleDataLakeReporting, _TradingService_calculateFeeDiscountWithMeasurement;
|
|
13
13
|
import { BigNumber } from "bignumber.js";
|
|
14
14
|
import { v4 as uuidv4 } from "uuid";
|
|
15
15
|
import { PERPS_EVENT_PROPERTY, PERPS_EVENT_VALUE } from "../constants/eventNames.mjs";
|
|
@@ -46,6 +46,8 @@ export class TradingService {
|
|
|
46
46
|
* Set via setControllerDependencies() after construction.
|
|
47
47
|
*/
|
|
48
48
|
_TradingService_controllerDeps.set(this, null);
|
|
49
|
+
/** Serializes provider fee context so concurrent orders cannot share it. */
|
|
50
|
+
_TradingService_feeContextTail.set(this, Promise.resolve());
|
|
49
51
|
__classPrivateFieldSet(this, _TradingService_deps, deps, "f");
|
|
50
52
|
}
|
|
51
53
|
/**
|
|
@@ -109,10 +111,11 @@ export class TradingService {
|
|
|
109
111
|
},
|
|
110
112
|
});
|
|
111
113
|
// Calculate fee discount at execution time (fresh, secure)
|
|
112
|
-
const
|
|
113
|
-
__classPrivateFieldGet(this, _TradingService_deps, "f").debugLogger.log('TradingService: Fee
|
|
114
|
-
feeDiscountBips,
|
|
115
|
-
|
|
114
|
+
const feeResolution = await __classPrivateFieldGet(this, _TradingService_instances, "m", _TradingService_calculateFeeDiscountWithMeasurement).call(this);
|
|
115
|
+
__classPrivateFieldGet(this, _TradingService_deps, "f").debugLogger.log('TradingService: Fee resolution calculated', {
|
|
116
|
+
feeDiscountBips: feeResolution?.discountBips,
|
|
117
|
+
feeSource: feeResolution?.source,
|
|
118
|
+
hasDiscount: feeResolution?.discountBips !== undefined,
|
|
116
119
|
});
|
|
117
120
|
__classPrivateFieldGet(this, _TradingService_deps, "f").debugLogger.log('TradingService: Submitting order to provider', {
|
|
118
121
|
symbol: params.symbol,
|
|
@@ -162,7 +165,7 @@ export class TradingService {
|
|
|
162
165
|
}, PERPS_CONSTANTS.PlaceOrderTimeoutMs);
|
|
163
166
|
const result = await __classPrivateFieldGet(this, _TradingService_instances, "m", _TradingService_withFeeDiscount).call(this, {
|
|
164
167
|
provider,
|
|
165
|
-
|
|
168
|
+
feeResolution,
|
|
166
169
|
operation: () => provider.placeOrder(params),
|
|
167
170
|
});
|
|
168
171
|
if (orderSubmissionThresholdTimeoutId !== undefined) {
|
|
@@ -289,11 +292,11 @@ export class TradingService {
|
|
|
289
292
|
},
|
|
290
293
|
});
|
|
291
294
|
// Calculate fee discount only if required dependencies are available
|
|
292
|
-
const
|
|
295
|
+
const feeResolution = await __classPrivateFieldGet(this, _TradingService_instances, "m", _TradingService_calculateFeeDiscountWithMeasurement).call(this);
|
|
293
296
|
// Execute order edit with fee discount management
|
|
294
297
|
const result = await __classPrivateFieldGet(this, _TradingService_instances, "m", _TradingService_withFeeDiscount).call(this, {
|
|
295
298
|
provider,
|
|
296
|
-
|
|
299
|
+
feeResolution,
|
|
297
300
|
operation: () => provider.editOrder(params),
|
|
298
301
|
});
|
|
299
302
|
const completionDuration = __classPrivateFieldGet(this, _TradingService_deps, "f").performance.now() - startTime;
|
|
@@ -683,11 +686,11 @@ export class TradingService {
|
|
|
683
686
|
}),
|
|
684
687
|
});
|
|
685
688
|
// Calculate fee discount with measurement
|
|
686
|
-
const
|
|
689
|
+
const feeResolution = await __classPrivateFieldGet(this, _TradingService_instances, "m", _TradingService_calculateFeeDiscountWithMeasurement).call(this);
|
|
687
690
|
// Execute position close with fee discount management
|
|
688
691
|
result = await __classPrivateFieldGet(this, _TradingService_instances, "m", _TradingService_withFeeDiscount).call(this, {
|
|
689
692
|
provider,
|
|
690
|
-
|
|
693
|
+
feeResolution,
|
|
691
694
|
operation: () => provider.closePosition(params),
|
|
692
695
|
});
|
|
693
696
|
const completionDuration = __classPrivateFieldGet(this, _TradingService_deps, "f").performance.now() - startTime;
|
|
@@ -804,10 +807,10 @@ export class TradingService {
|
|
|
804
807
|
});
|
|
805
808
|
// Use batch close if provider supports it (provider handles filtering)
|
|
806
809
|
if (provider.closePositions) {
|
|
807
|
-
const
|
|
810
|
+
const feeResolution = await __classPrivateFieldGet(this, _TradingService_instances, "m", _TradingService_calculateFeeDiscountWithMeasurement).call(this);
|
|
808
811
|
operationResult = await __classPrivateFieldGet(this, _TradingService_instances, "m", _TradingService_withFeeDiscount).call(this, {
|
|
809
812
|
provider,
|
|
810
|
-
|
|
813
|
+
feeResolution,
|
|
811
814
|
operation: async () => {
|
|
812
815
|
if (!provider.closePositions) {
|
|
813
816
|
throw new Error('closePositions method not available');
|
|
@@ -967,11 +970,11 @@ export class TradingService {
|
|
|
967
970
|
...__classPrivateFieldGet(this, _TradingService_instances, "m", _TradingService_buildAttributionProperties).call(this, params.trackingData),
|
|
968
971
|
});
|
|
969
972
|
// Get fee discount from rewards
|
|
970
|
-
const
|
|
973
|
+
const feeResolution = await __classPrivateFieldGet(this, _TradingService_instances, "m", _TradingService_calculateFeeDiscountWithMeasurement).call(this);
|
|
971
974
|
// Execute with fee discount management
|
|
972
975
|
result = await __classPrivateFieldGet(this, _TradingService_instances, "m", _TradingService_withFeeDiscount).call(this, {
|
|
973
976
|
provider,
|
|
974
|
-
|
|
977
|
+
feeResolution,
|
|
975
978
|
operation: () => provider.updatePositionTPSL(params),
|
|
976
979
|
});
|
|
977
980
|
if (result.success) {
|
|
@@ -1218,8 +1221,13 @@ export class TradingService {
|
|
|
1218
1221
|
[PERPS_EVENT_PROPERTY.ACTION]: flipAction,
|
|
1219
1222
|
...__classPrivateFieldGet(this, _TradingService_instances, "m", _TradingService_buildAttributionProperties).call(this, trackingData),
|
|
1220
1223
|
});
|
|
1224
|
+
const feeResolution = await __classPrivateFieldGet(this, _TradingService_instances, "m", _TradingService_calculateFeeDiscountWithMeasurement).call(this);
|
|
1221
1225
|
// Place flip order (HyperLiquid handles margin transfer automatically)
|
|
1222
|
-
const result = await
|
|
1226
|
+
const result = await __classPrivateFieldGet(this, _TradingService_instances, "m", _TradingService_withFeeDiscount).call(this, {
|
|
1227
|
+
provider,
|
|
1228
|
+
feeResolution,
|
|
1229
|
+
operation: () => provider.placeOrder(orderParams),
|
|
1230
|
+
});
|
|
1223
1231
|
const completionDuration = __classPrivateFieldGet(this, _TradingService_deps, "f").performance.now() - startTime;
|
|
1224
1232
|
const executedPrice = parseFloat(result.averagePrice ?? position.entryPrice);
|
|
1225
1233
|
if (result.success) {
|
|
@@ -1315,7 +1323,7 @@ export class TradingService {
|
|
|
1315
1323
|
}
|
|
1316
1324
|
}
|
|
1317
1325
|
}
|
|
1318
|
-
_TradingService_deps = new WeakMap(), _TradingService_controllerDeps = new WeakMap(), _TradingService_instances = new WeakSet(), _TradingService_getErrorContext = function _TradingService_getErrorContext(method, additionalContext) {
|
|
1326
|
+
_TradingService_deps = new WeakMap(), _TradingService_controllerDeps = new WeakMap(), _TradingService_feeContextTail = new WeakMap(), _TradingService_instances = new WeakSet(), _TradingService_getErrorContext = function _TradingService_getErrorContext(method, additionalContext) {
|
|
1319
1327
|
return {
|
|
1320
1328
|
controller: 'TradingService',
|
|
1321
1329
|
method,
|
|
@@ -1550,18 +1558,29 @@ async function _TradingService_handleOrderSuccess(options) {
|
|
|
1550
1558
|
*
|
|
1551
1559
|
* @param options - The configuration options.
|
|
1552
1560
|
* @param options.provider - The perps provider instance.
|
|
1553
|
-
* @param options.
|
|
1561
|
+
* @param options.feeResolution - The resolved fee and attribution source.
|
|
1554
1562
|
* @param options.operation - The operation value.
|
|
1555
1563
|
* @returns The result of the operation.
|
|
1556
1564
|
*/
|
|
1557
1565
|
async function _TradingService_withFeeDiscount(options) {
|
|
1558
|
-
const { provider,
|
|
1566
|
+
const { provider, feeResolution, operation } = options;
|
|
1567
|
+
const previous = __classPrivateFieldGet(this, _TradingService_feeContextTail, "f");
|
|
1568
|
+
let release = () => undefined;
|
|
1569
|
+
__classPrivateFieldSet(this, _TradingService_feeContextTail, new Promise((resolve) => {
|
|
1570
|
+
release = resolve;
|
|
1571
|
+
}), "f");
|
|
1572
|
+
await previous;
|
|
1559
1573
|
try {
|
|
1560
|
-
|
|
1561
|
-
|
|
1562
|
-
|
|
1563
|
-
|
|
1564
|
-
|
|
1574
|
+
if (provider.setUserFeeResolution) {
|
|
1575
|
+
provider.setUserFeeResolution(feeResolution);
|
|
1576
|
+
}
|
|
1577
|
+
else if (provider.setUserFeeDiscount) {
|
|
1578
|
+
provider.setUserFeeDiscount(feeResolution?.discountBips);
|
|
1579
|
+
}
|
|
1580
|
+
if (feeResolution) {
|
|
1581
|
+
__classPrivateFieldGet(this, _TradingService_deps, "f").debugLogger.log('TradingService: Fee resolution set in provider', {
|
|
1582
|
+
feeDiscountBips: feeResolution.discountBips,
|
|
1583
|
+
feeSource: feeResolution.source,
|
|
1565
1584
|
});
|
|
1566
1585
|
}
|
|
1567
1586
|
// Execute the operation
|
|
@@ -1569,10 +1588,14 @@ async function _TradingService_withFeeDiscount(options) {
|
|
|
1569
1588
|
}
|
|
1570
1589
|
finally {
|
|
1571
1590
|
// Always clear discount context, even on exception
|
|
1572
|
-
if (provider.
|
|
1591
|
+
if (provider.setUserFeeResolution) {
|
|
1592
|
+
provider.setUserFeeResolution(undefined);
|
|
1593
|
+
}
|
|
1594
|
+
else if (provider.setUserFeeDiscount) {
|
|
1573
1595
|
provider.setUserFeeDiscount(undefined);
|
|
1574
|
-
__classPrivateFieldGet(this, _TradingService_deps, "f").debugLogger.log('TradingService: Fee discount cleared from provider');
|
|
1575
1596
|
}
|
|
1597
|
+
__classPrivateFieldGet(this, _TradingService_deps, "f").debugLogger.log('TradingService: Fee resolution cleared from provider');
|
|
1598
|
+
release();
|
|
1576
1599
|
}
|
|
1577
1600
|
}, _TradingService_loadPositionData =
|
|
1578
1601
|
/**
|
|
@@ -1824,14 +1847,15 @@ async function _TradingService_calculateFeeDiscountWithMeasurement() {
|
|
|
1824
1847
|
const { rewardsIntegrationService } = __classPrivateFieldGet(this, _TradingService_controllerDeps, "f");
|
|
1825
1848
|
const orderExecutionFeeDiscountStartTime = __classPrivateFieldGet(this, _TradingService_deps, "f").performance.now();
|
|
1826
1849
|
// Calculate fee discount using messenger pattern (service handles controller access internally)
|
|
1827
|
-
const
|
|
1850
|
+
const resolution = await rewardsIntegrationService.resolveFee();
|
|
1828
1851
|
const orderExecutionFeeDiscountDuration = __classPrivateFieldGet(this, _TradingService_deps, "f").performance.now() - orderExecutionFeeDiscountStartTime;
|
|
1829
1852
|
// Record measurement
|
|
1830
1853
|
__classPrivateFieldGet(this, _TradingService_deps, "f").tracer.setMeasurement(PerpsMeasurementName.PerpsRewardsOrderExecutionFeeDiscountApiCall, orderExecutionFeeDiscountDuration, 'millisecond');
|
|
1831
1854
|
__classPrivateFieldGet(this, _TradingService_deps, "f").debugLogger.log('TradingService: Fee discount API call completed', {
|
|
1832
|
-
discountBips,
|
|
1855
|
+
discountBips: resolution.discountBips,
|
|
1856
|
+
source: resolution.source,
|
|
1833
1857
|
duration: `${orderExecutionFeeDiscountDuration.toFixed(0)}ms`,
|
|
1834
1858
|
});
|
|
1835
|
-
return
|
|
1859
|
+
return resolution;
|
|
1836
1860
|
};
|
|
1837
1861
|
//# sourceMappingURL=TradingService.mjs.map
|