@metamask-previews/perps-controller 12.0.0-preview-e81fe8853 → 12.1.0-preview-3c77cf4
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 +20 -1
- package/dist/PerpsController.cjs +5 -7
- package/dist/PerpsController.cjs.map +1 -1
- package/dist/PerpsController.d.cts.map +1 -1
- package/dist/PerpsController.d.mts.map +1 -1
- package/dist/PerpsController.mjs +5 -7
- package/dist/PerpsController.mjs.map +1 -1
- package/dist/providers/HyperLiquidProvider.cjs +22 -6
- package/dist/providers/HyperLiquidProvider.cjs.map +1 -1
- package/dist/providers/HyperLiquidProvider.d.cts.map +1 -1
- package/dist/providers/HyperLiquidProvider.d.mts.map +1 -1
- package/dist/providers/HyperLiquidProvider.mjs +23 -7
- package/dist/providers/HyperLiquidProvider.mjs.map +1 -1
- package/dist/services/HyperLiquidSubscriptionService.cjs +10 -2
- package/dist/services/HyperLiquidSubscriptionService.cjs.map +1 -1
- package/dist/services/HyperLiquidSubscriptionService.d.cts.map +1 -1
- package/dist/services/HyperLiquidSubscriptionService.d.mts.map +1 -1
- package/dist/services/HyperLiquidSubscriptionService.mjs +11 -3
- package/dist/services/HyperLiquidSubscriptionService.mjs.map +1 -1
- package/dist/types/index.cjs.map +1 -1
- package/dist/types/index.d.cts +18 -6
- package/dist/types/index.d.cts.map +1 -1
- package/dist/types/index.d.mts +18 -6
- package/dist/types/index.d.mts.map +1 -1
- package/dist/types/index.mjs.map +1 -1
- package/dist/utils/orderTypes.cjs +28 -1
- package/dist/utils/orderTypes.cjs.map +1 -1
- package/dist/utils/orderTypes.d.cts +23 -0
- package/dist/utils/orderTypes.d.cts.map +1 -1
- package/dist/utils/orderTypes.d.mts +23 -0
- package/dist/utils/orderTypes.d.mts.map +1 -1
- package/dist/utils/orderTypes.mjs +26 -0
- package/dist/utils/orderTypes.mjs.map +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -9,8 +9,26 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
9
9
|
|
|
10
10
|
### Added
|
|
11
11
|
|
|
12
|
+
- Add `resolvePositionTriggerSummaryPrice` to `@metamask/perps-controller/utils`, which resolves the scalar TP/SL summary price a position reports for one direction from its trigger orders ([#9912](https://github.com/MetaMask/core/pull/9912))
|
|
13
|
+
|
|
14
|
+
### Fixed
|
|
15
|
+
|
|
16
|
+
- Report the take profit (or stop loss) price on a `Position` when its only trigger for that direction is a partial, quantity-scoped one ([#9912](https://github.com/MetaMask/core/pull/9912))
|
|
17
|
+
- `takeProfitPrice`/`stopLossPrice` were only ever scanned from position-bound triggers, so a position whose sole take profit closed it partially reported `takeProfitCount: 1` with no price, and clients rendering the scalar showed none. Applies to the REST `getPositions`, `getUserDataSnapshot`, and WebSocket position paths alike.
|
|
18
|
+
- Two or more triggers in a direction still report the scanned price, because no single price describes them and clients render the count instead.
|
|
19
|
+
|
|
20
|
+
## [12.1.0]
|
|
21
|
+
|
|
22
|
+
### Added
|
|
23
|
+
|
|
24
|
+
- Add the optional `PerpsPerformance.onControllerConstructed` post-hydration timestamp hook ([#9906](https://github.com/MetaMask/core/pull/9906))
|
|
25
|
+
- Add an explicit trace ID overload to `PerpsTracer.setMeasurement`, allowing clients to target preload measurements to their named trace ([#9906](https://github.com/MetaMask/core/pull/9906))
|
|
12
26
|
- Add `PERPS_EVENT_PROPERTY.PREVIOUS_LEVERAGE` (`previous_leverage`) for Perp UI Interaction `leverage_changed` events so clients can import the Segment property key from `@metamask/perps-controller` instead of a local interim constant ([#9881](https://github.com/MetaMask/core/pull/9881))
|
|
13
27
|
|
|
28
|
+
### Changed
|
|
29
|
+
|
|
30
|
+
- Target market and user preload measurements to their named traces, and omit wallet addresses from user-preload trace data ([#9906](https://github.com/MetaMask/core/pull/9906))
|
|
31
|
+
|
|
14
32
|
## [12.0.0]
|
|
15
33
|
|
|
16
34
|
### Added
|
|
@@ -724,7 +742,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
724
742
|
|
|
725
743
|
- Bump `@metamask/controller-utils` from `^11.18.0` to `^11.19.0` ([#7995](https://github.com/MetaMask/core/pull/7995))
|
|
726
744
|
|
|
727
|
-
[Unreleased]: https://github.com/MetaMask/core/compare/@metamask/perps-controller@12.
|
|
745
|
+
[Unreleased]: https://github.com/MetaMask/core/compare/@metamask/perps-controller@12.1.0...HEAD
|
|
746
|
+
[12.1.0]: https://github.com/MetaMask/core/compare/@metamask/perps-controller@12.0.0...@metamask/perps-controller@12.1.0
|
|
728
747
|
[12.0.0]: https://github.com/MetaMask/core/compare/@metamask/perps-controller@11.0.0...@metamask/perps-controller@12.0.0
|
|
729
748
|
[11.0.0]: https://github.com/MetaMask/core/compare/@metamask/perps-controller@10.0.0...@metamask/perps-controller@11.0.0
|
|
730
749
|
[10.0.0]: https://github.com/MetaMask/core/compare/@metamask/perps-controller@9.3.0...@metamask/perps-controller@10.0.0
|
package/dist/PerpsController.cjs
CHANGED
|
@@ -680,6 +680,7 @@ class PerpsController extends base_controller_1.BaseController {
|
|
|
680
680
|
// Eagerly hydrate in-memory caches from disk so hooks see data on first render.
|
|
681
681
|
// Must happen at construction time — before any React component mounts.
|
|
682
682
|
__classPrivateFieldGet(this, _PerpsController_instances, "m", _PerpsController_hydrateCacheFromDiskSync).call(this);
|
|
683
|
+
__classPrivateFieldGet(this, _PerpsController_options, "f").infrastructure.performance.onControllerConstructed?.(__classPrivateFieldGet(this, _PerpsController_options, "f").infrastructure.performance.now());
|
|
683
684
|
}
|
|
684
685
|
/**
|
|
685
686
|
* Read cached market data for the currently active provider (or aggregated).
|
|
@@ -4259,7 +4260,7 @@ async function _PerpsController_performMarketDataPreload() {
|
|
|
4259
4260
|
marketCount: data.length,
|
|
4260
4261
|
});
|
|
4261
4262
|
traceData = { success: true, marketCount: data.length };
|
|
4262
|
-
__classPrivateFieldGet(this, _PerpsController_options, "f").infrastructure.tracer.setMeasurement(performanceMetrics_js_1.PerpsMeasurementName.PerpsMarketDataPreload, performance.now() - preloadStart, 'millisecond');
|
|
4263
|
+
__classPrivateFieldGet(this, _PerpsController_options, "f").infrastructure.tracer.setMeasurement(performanceMetrics_js_1.PerpsMeasurementName.PerpsMarketDataPreload, performance.now() - preloadStart, 'millisecond', traceId);
|
|
4263
4264
|
}
|
|
4264
4265
|
catch (error) {
|
|
4265
4266
|
traceData = {
|
|
@@ -4367,11 +4368,8 @@ async function _PerpsController_performUserDataPreload() {
|
|
|
4367
4368
|
provider: activeProvider,
|
|
4368
4369
|
isTestnet,
|
|
4369
4370
|
},
|
|
4370
|
-
data: { userAddress },
|
|
4371
|
-
});
|
|
4372
|
-
__classPrivateFieldGet(this, _PerpsController_instances, "m", _PerpsController_debugLog).call(this, 'PerpsController: Fetching user data in background', {
|
|
4373
|
-
userAddress,
|
|
4374
4371
|
});
|
|
4372
|
+
__classPrivateFieldGet(this, _PerpsController_instances, "m", _PerpsController_debugLog).call(this, 'PerpsController: Fetching user data in background');
|
|
4375
4373
|
if (activeProvider === 'hyperliquid') {
|
|
4376
4374
|
const snapshot = await this.getUserDataSnapshot();
|
|
4377
4375
|
__classPrivateFieldGet(this, _PerpsController_instances, "m", _PerpsController_debugLog).call(this, 'PerpsController: User data preloaded', {
|
|
@@ -4384,7 +4382,7 @@ async function _PerpsController_performUserDataPreload() {
|
|
|
4384
4382
|
positionCount: snapshot.positions.length,
|
|
4385
4383
|
orderCount: snapshot.orders.length,
|
|
4386
4384
|
};
|
|
4387
|
-
__classPrivateFieldGet(this, _PerpsController_options, "f").infrastructure.tracer.setMeasurement(performanceMetrics_js_1.PerpsMeasurementName.PerpsUserDataPreload, performance.now() - preloadStart, 'millisecond');
|
|
4385
|
+
__classPrivateFieldGet(this, _PerpsController_options, "f").infrastructure.tracer.setMeasurement(performanceMetrics_js_1.PerpsMeasurementName.PerpsUserDataPreload, performance.now() - preloadStart, 'millisecond', traceId);
|
|
4388
4386
|
return;
|
|
4389
4387
|
}
|
|
4390
4388
|
const [positions, orders, accountState] = await Promise.all([
|
|
@@ -4471,7 +4469,7 @@ async function _PerpsController_performUserDataPreload() {
|
|
|
4471
4469
|
positionCount: positions.length,
|
|
4472
4470
|
orderCount: orders.length,
|
|
4473
4471
|
};
|
|
4474
|
-
__classPrivateFieldGet(this, _PerpsController_options, "f").infrastructure.tracer.setMeasurement(performanceMetrics_js_1.PerpsMeasurementName.PerpsUserDataPreload, performance.now() - preloadStart, 'millisecond');
|
|
4472
|
+
__classPrivateFieldGet(this, _PerpsController_options, "f").infrastructure.tracer.setMeasurement(performanceMetrics_js_1.PerpsMeasurementName.PerpsUserDataPreload, performance.now() - preloadStart, 'millisecond', traceId);
|
|
4475
4473
|
}
|
|
4476
4474
|
catch (error) {
|
|
4477
4475
|
traceData = {
|