@metamask-previews/perps-controller 8.1.0-preview-e4b456ca8 → 8.1.0-preview-0bd5566

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 (54) hide show
  1. package/CHANGELOG.md +0 -14
  2. package/dist/PerpsController.cjs +3 -17
  3. package/dist/PerpsController.cjs.map +1 -1
  4. package/dist/PerpsController.d.cts.map +1 -1
  5. package/dist/PerpsController.d.mts.map +1 -1
  6. package/dist/PerpsController.mjs +3 -17
  7. package/dist/PerpsController.mjs.map +1 -1
  8. package/dist/constants/perpsConfig.cjs +1 -16
  9. package/dist/constants/perpsConfig.cjs.map +1 -1
  10. package/dist/constants/perpsConfig.d.cts +0 -15
  11. package/dist/constants/perpsConfig.d.cts.map +1 -1
  12. package/dist/constants/perpsConfig.d.mts +0 -15
  13. package/dist/constants/perpsConfig.d.mts.map +1 -1
  14. package/dist/constants/perpsConfig.mjs +0 -15
  15. package/dist/constants/perpsConfig.mjs.map +1 -1
  16. package/dist/services/MarketDataService.cjs +9 -77
  17. package/dist/services/MarketDataService.cjs.map +1 -1
  18. package/dist/services/MarketDataService.d.cts +2 -13
  19. package/dist/services/MarketDataService.d.cts.map +1 -1
  20. package/dist/services/MarketDataService.d.mts +2 -13
  21. package/dist/services/MarketDataService.d.mts.map +1 -1
  22. package/dist/services/MarketDataService.mjs +9 -77
  23. package/dist/services/MarketDataService.mjs.map +1 -1
  24. package/dist/types/index.cjs.map +1 -1
  25. package/dist/types/index.d.cts +0 -18
  26. package/dist/types/index.d.cts.map +1 -1
  27. package/dist/types/index.d.mts +0 -18
  28. package/dist/types/index.d.mts.map +1 -1
  29. package/dist/types/index.mjs.map +1 -1
  30. package/dist/utils/marketDataTransform.cjs +8 -14
  31. package/dist/utils/marketDataTransform.cjs.map +1 -1
  32. package/dist/utils/marketDataTransform.d.cts +1 -5
  33. package/dist/utils/marketDataTransform.d.cts.map +1 -1
  34. package/dist/utils/marketDataTransform.d.mts +1 -5
  35. package/dist/utils/marketDataTransform.d.mts.map +1 -1
  36. package/dist/utils/marketDataTransform.mjs +8 -14
  37. package/dist/utils/marketDataTransform.mjs.map +1 -1
  38. package/dist/utils/marketSearch.cjs +2 -28
  39. package/dist/utils/marketSearch.cjs.map +1 -1
  40. package/dist/utils/marketSearch.d.cts +3 -4
  41. package/dist/utils/marketSearch.d.cts.map +1 -1
  42. package/dist/utils/marketSearch.d.mts +3 -4
  43. package/dist/utils/marketSearch.d.mts.map +1 -1
  44. package/dist/utils/marketSearch.mjs +2 -28
  45. package/dist/utils/marketSearch.mjs.map +1 -1
  46. package/package.json +2 -3
  47. package/dist/services/TerminalMarketService.cjs +0 -176
  48. package/dist/services/TerminalMarketService.cjs.map +0 -1
  49. package/dist/services/TerminalMarketService.d.cts +0 -48
  50. package/dist/services/TerminalMarketService.d.cts.map +0 -1
  51. package/dist/services/TerminalMarketService.d.mts +0 -48
  52. package/dist/services/TerminalMarketService.d.mts.map +0 -1
  53. package/dist/services/TerminalMarketService.mjs +0 -172
  54. package/dist/services/TerminalMarketService.mjs.map +0 -1
package/CHANGELOG.md CHANGED
@@ -7,22 +7,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
- ### Added
11
-
12
- - Add Terminal API integration for market data behind `perpsTerminalApiMarkets` feature flag ([#9137](https://github.com/MetaMask/core/pull/9137))
13
- - `TerminalMarketService` fetches structured market metadata from `{terminalApiBaseUrl}/perpetuals` with a 5-minute cache TTL.
14
- - When enabled, `getMarkets()` attempts the Terminal API first; on failure or empty response, falls back silently to HyperLiquid.
15
- - `getMarketDataWithPrices()` enriches provider data with Terminal API metadata (name, keywords, tags, categories).
16
- - `PerpsPlatformDependencies` gains a required `terminalApiBaseUrl: string` field; clients must inject the correct environment URL.
17
- - `PerpsMarketData` gains optional `keywords`, `tags`, and `categories` fields.
18
- - `transformMarketData()` accepts optional `terminalMetadata` parameter to override static name/category maps per symbol.
19
- - Market search (`getMarketMatchRank`, `rankMarketsByQuery`) now indexes the `keywords` field for richer search results.
20
- - `HYPERLIQUID_ASSET_NAMES` and `HIP3_ASSET_MARKET_TYPES` remain intact as fallback for assets absent from the Terminal API.
21
-
22
10
  ### Changed
23
11
 
24
- - Replace unsafe `as` type cast with runtime schema validation (`@metamask/superstruct`) in `TerminalMarketService` ([#9137](https://github.com/MetaMask/core/pull/9137))
25
- - Each item in the Terminal API response is now individually validated; items that fail validation are filtered out and logged instead of silently accepted.
26
12
  - Bump `@metamask/utils` from `^11.9.0` to `^11.11.0` ([#9074](https://github.com/MetaMask/core/pull/9074))
27
13
 
28
14
  ## [8.1.0]
@@ -10,7 +10,7 @@ var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (
10
10
  if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
11
11
  return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
12
12
  };
13
- var _PerpsController_instances, _a, _PerpsController_initializationPromise, _PerpsController_isReinitializing, _PerpsController_myxRegistrationPromise, _PerpsController_blockedRegionListVersion, _PerpsController_hip3Enabled, _PerpsController_hip3AllowlistMarkets, _PerpsController_hip3BlocklistMarkets, _PerpsController_hip3ConfigSource, _PerpsController_isMYXProviderEnabled, _PerpsController_isTerminalApiEnabled, _PerpsController_standaloneProvider, _PerpsController_handlersRegistered, _PerpsController_standaloneProviderIsTestnet, _PerpsController_standaloneProviderHip3Version, _PerpsController_eligibilityCheckDeferred, _PerpsController_options, _PerpsController_tradingService, _PerpsController_marketDataService, _PerpsController_terminalMarketService, _PerpsController_accountService, _PerpsController_eligibilityService, _PerpsController_dataLakeService, _PerpsController_depositService, _PerpsController_featureFlagConfigurationService, _PerpsController_rewardsIntegrationService, _PerpsController_logError, _PerpsController_debugLog, _PerpsController_getAggregatedCacheProviderIds, _PerpsController_getOrCreateStandaloneProvider, _PerpsController_cleanupStandaloneProvider, _PerpsController_getMetrics, _PerpsController_findNetworkClientIdForChain, _PerpsController_submitTransaction, _PerpsController_migrateRequestsIfNeeded, _PerpsController_withStreamPause, _PerpsController_performInitialization, _PerpsController_createProviders, _PerpsController_assignActiveProvider, _PerpsController_getErrorContext, _PerpsController_getControllerState, _PerpsController_createServiceContext, _PerpsController_ensureTradingServiceDeps, _PerpsController_preloadWatchedPaths, _PerpsController_preloadTimer, _PerpsController_isPreloading, _PerpsController_isPreloadingUserData, _PerpsController_preloadStateUnsubscribe, _PerpsController_accountChangeUnsubscribe, _PerpsController_previousIsTestnet, _PerpsController_previousHip3ConfigVersion, _PerpsController_preloadRefreshMs, _PerpsController_preloadGuardMs, _PerpsController_hydrateCacheFromDiskSync, _PerpsController_performMarketDataPreload, _PerpsController_performUserDataPreload;
13
+ var _PerpsController_instances, _a, _PerpsController_initializationPromise, _PerpsController_isReinitializing, _PerpsController_myxRegistrationPromise, _PerpsController_blockedRegionListVersion, _PerpsController_hip3Enabled, _PerpsController_hip3AllowlistMarkets, _PerpsController_hip3BlocklistMarkets, _PerpsController_hip3ConfigSource, _PerpsController_isMYXProviderEnabled, _PerpsController_standaloneProvider, _PerpsController_handlersRegistered, _PerpsController_standaloneProviderIsTestnet, _PerpsController_standaloneProviderHip3Version, _PerpsController_eligibilityCheckDeferred, _PerpsController_options, _PerpsController_tradingService, _PerpsController_marketDataService, _PerpsController_accountService, _PerpsController_eligibilityService, _PerpsController_dataLakeService, _PerpsController_depositService, _PerpsController_featureFlagConfigurationService, _PerpsController_rewardsIntegrationService, _PerpsController_logError, _PerpsController_debugLog, _PerpsController_getAggregatedCacheProviderIds, _PerpsController_getOrCreateStandaloneProvider, _PerpsController_cleanupStandaloneProvider, _PerpsController_getMetrics, _PerpsController_findNetworkClientIdForChain, _PerpsController_submitTransaction, _PerpsController_migrateRequestsIfNeeded, _PerpsController_withStreamPause, _PerpsController_performInitialization, _PerpsController_createProviders, _PerpsController_assignActiveProvider, _PerpsController_getErrorContext, _PerpsController_getControllerState, _PerpsController_createServiceContext, _PerpsController_ensureTradingServiceDeps, _PerpsController_preloadWatchedPaths, _PerpsController_preloadTimer, _PerpsController_isPreloading, _PerpsController_isPreloadingUserData, _PerpsController_preloadStateUnsubscribe, _PerpsController_accountChangeUnsubscribe, _PerpsController_previousIsTestnet, _PerpsController_previousHip3ConfigVersion, _PerpsController_preloadRefreshMs, _PerpsController_preloadGuardMs, _PerpsController_hydrateCacheFromDiskSync, _PerpsController_performMarketDataPreload, _PerpsController_performUserDataPreload;
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
15
  exports.PerpsController = exports.getDefaultPerpsControllerState = exports.InitializationState = exports.PERPS_ERROR_CODES = exports.resolveMyxAuthConfig = exports.firstNonEmpty = void 0;
16
16
  const base_controller_1 = require("@metamask/base-controller");
@@ -31,7 +31,6 @@ const EligibilityService_1 = require("./services/EligibilityService.cjs");
31
31
  const FeatureFlagConfigurationService_1 = require("./services/FeatureFlagConfigurationService.cjs");
32
32
  const MarketDataService_1 = require("./services/MarketDataService.cjs");
33
33
  const RewardsIntegrationService_1 = require("./services/RewardsIntegrationService.cjs");
34
- const TerminalMarketService_1 = require("./services/TerminalMarketService.cjs");
35
34
  const TradingService_1 = require("./services/TradingService.cjs");
36
35
  // PerpsStreamChannelKey removed: using string for channel keys (PerpsStreamManager.pauseChannel takes string)
37
36
  const types_1 = require("./types/index.cjs");
@@ -479,7 +478,6 @@ class PerpsController extends base_controller_1.BaseController {
479
478
  // Service instances (instantiated with platform dependencies)
480
479
  _PerpsController_tradingService.set(this, void 0);
481
480
  _PerpsController_marketDataService.set(this, void 0);
482
- _PerpsController_terminalMarketService.set(this, void 0);
483
481
  _PerpsController_accountService.set(this, void 0);
484
482
  _PerpsController_eligibilityService.set(this, void 0);
485
483
  _PerpsController_dataLakeService.set(this, void 0);
@@ -504,8 +502,7 @@ class PerpsController extends base_controller_1.BaseController {
504
502
  // Instantiate services with platform dependencies
505
503
  // Services that need cross-controller access receive the messenger
506
504
  __classPrivateFieldSet(this, _PerpsController_tradingService, new TradingService_1.TradingService(infrastructure), "f");
507
- __classPrivateFieldSet(this, _PerpsController_terminalMarketService, new TerminalMarketService_1.TerminalMarketService(infrastructure), "f");
508
- __classPrivateFieldSet(this, _PerpsController_marketDataService, new MarketDataService_1.MarketDataService(infrastructure, __classPrivateFieldGet(this, _PerpsController_terminalMarketService, "f")), "f");
505
+ __classPrivateFieldSet(this, _PerpsController_marketDataService, new MarketDataService_1.MarketDataService(infrastructure), "f");
509
506
  __classPrivateFieldSet(this, _PerpsController_accountService, new AccountService_1.AccountService(infrastructure, messenger), "f");
510
507
  __classPrivateFieldSet(this, _PerpsController_eligibilityService, new EligibilityService_1.EligibilityService(infrastructure), "f");
511
508
  __classPrivateFieldSet(this, _PerpsController_dataLakeService, new DataLakeService_1.DataLakeService(infrastructure, messenger), "f");
@@ -1608,7 +1605,6 @@ class PerpsController extends base_controller_1.BaseController {
1608
1605
  provider,
1609
1606
  params,
1610
1607
  context: __classPrivateFieldGet(this, _PerpsController_instances, "m", _PerpsController_createServiceContext).call(this, 'getMarkets'),
1611
- useTerminalApi: __classPrivateFieldGet(this, _PerpsController_instances, "m", _PerpsController_isTerminalApiEnabled).call(this),
1612
1608
  });
1613
1609
  }
1614
1610
  /**
@@ -1635,7 +1631,6 @@ class PerpsController extends base_controller_1.BaseController {
1635
1631
  provider,
1636
1632
  params,
1637
1633
  context: __classPrivateFieldGet(this, _PerpsController_instances, "m", _PerpsController_createServiceContext).call(this, 'getMarketDataWithPrices'),
1638
- useTerminalApi: __classPrivateFieldGet(this, _PerpsController_instances, "m", _PerpsController_isTerminalApiEnabled).call(this),
1639
1634
  });
1640
1635
  }
1641
1636
  const provider = this.getActiveProvider();
@@ -1643,7 +1638,6 @@ class PerpsController extends base_controller_1.BaseController {
1643
1638
  provider,
1644
1639
  params,
1645
1640
  context: __classPrivateFieldGet(this, _PerpsController_instances, "m", _PerpsController_createServiceContext).call(this, 'getMarketDataWithPrices'),
1646
- useTerminalApi: __classPrivateFieldGet(this, _PerpsController_instances, "m", _PerpsController_isTerminalApiEnabled).call(this),
1647
1641
  });
1648
1642
  }
1649
1643
  /**
@@ -3017,7 +3011,7 @@ class PerpsController extends base_controller_1.BaseController {
3017
3011
  }
3018
3012
  }
3019
3013
  exports.PerpsController = PerpsController;
3020
- _a = PerpsController, _PerpsController_initializationPromise = new WeakMap(), _PerpsController_isReinitializing = new WeakMap(), _PerpsController_myxRegistrationPromise = new WeakMap(), _PerpsController_blockedRegionListVersion = new WeakMap(), _PerpsController_hip3Enabled = new WeakMap(), _PerpsController_hip3AllowlistMarkets = new WeakMap(), _PerpsController_hip3BlocklistMarkets = new WeakMap(), _PerpsController_hip3ConfigSource = new WeakMap(), _PerpsController_standaloneProvider = new WeakMap(), _PerpsController_handlersRegistered = new WeakMap(), _PerpsController_standaloneProviderIsTestnet = new WeakMap(), _PerpsController_standaloneProviderHip3Version = new WeakMap(), _PerpsController_eligibilityCheckDeferred = new WeakMap(), _PerpsController_options = new WeakMap(), _PerpsController_tradingService = new WeakMap(), _PerpsController_marketDataService = new WeakMap(), _PerpsController_terminalMarketService = new WeakMap(), _PerpsController_accountService = new WeakMap(), _PerpsController_eligibilityService = new WeakMap(), _PerpsController_dataLakeService = new WeakMap(), _PerpsController_depositService = new WeakMap(), _PerpsController_featureFlagConfigurationService = new WeakMap(), _PerpsController_rewardsIntegrationService = new WeakMap(), _PerpsController_preloadTimer = new WeakMap(), _PerpsController_isPreloading = new WeakMap(), _PerpsController_isPreloadingUserData = new WeakMap(), _PerpsController_preloadStateUnsubscribe = new WeakMap(), _PerpsController_accountChangeUnsubscribe = new WeakMap(), _PerpsController_previousIsTestnet = new WeakMap(), _PerpsController_previousHip3ConfigVersion = new WeakMap(), _PerpsController_instances = new WeakSet(), _PerpsController_isMYXProviderEnabled = function _PerpsController_isMYXProviderEnabled() {
3014
+ _a = PerpsController, _PerpsController_initializationPromise = new WeakMap(), _PerpsController_isReinitializing = new WeakMap(), _PerpsController_myxRegistrationPromise = new WeakMap(), _PerpsController_blockedRegionListVersion = new WeakMap(), _PerpsController_hip3Enabled = new WeakMap(), _PerpsController_hip3AllowlistMarkets = new WeakMap(), _PerpsController_hip3BlocklistMarkets = new WeakMap(), _PerpsController_hip3ConfigSource = new WeakMap(), _PerpsController_standaloneProvider = new WeakMap(), _PerpsController_handlersRegistered = new WeakMap(), _PerpsController_standaloneProviderIsTestnet = new WeakMap(), _PerpsController_standaloneProviderHip3Version = new WeakMap(), _PerpsController_eligibilityCheckDeferred = new WeakMap(), _PerpsController_options = new WeakMap(), _PerpsController_tradingService = new WeakMap(), _PerpsController_marketDataService = new WeakMap(), _PerpsController_accountService = new WeakMap(), _PerpsController_eligibilityService = new WeakMap(), _PerpsController_dataLakeService = new WeakMap(), _PerpsController_depositService = new WeakMap(), _PerpsController_featureFlagConfigurationService = new WeakMap(), _PerpsController_rewardsIntegrationService = new WeakMap(), _PerpsController_preloadTimer = new WeakMap(), _PerpsController_isPreloading = new WeakMap(), _PerpsController_isPreloadingUserData = new WeakMap(), _PerpsController_preloadStateUnsubscribe = new WeakMap(), _PerpsController_accountChangeUnsubscribe = new WeakMap(), _PerpsController_previousIsTestnet = new WeakMap(), _PerpsController_previousHip3ConfigVersion = new WeakMap(), _PerpsController_instances = new WeakSet(), _PerpsController_isMYXProviderEnabled = function _PerpsController_isMYXProviderEnabled() {
3021
3015
  const myx = __classPrivateFieldGet(this, _PerpsController_options, "f").clientConfig?.providerCredentials?.myx;
3022
3016
  // Local env-var override (MM_PERPS_MYX_PROVIDER_ENABLED) always wins —
3023
3017
  // matches the UI selector (resolvePerpsMyxProviderEnabled) so controller
@@ -3046,14 +3040,6 @@ _a = PerpsController, _PerpsController_initializationPromise = new WeakMap(), _P
3046
3040
  catch {
3047
3041
  return false;
3048
3042
  }
3049
- }, _PerpsController_isTerminalApiEnabled = function _PerpsController_isTerminalApiEnabled() {
3050
- try {
3051
- const remoteState = this.messenger.call('RemoteFeatureFlagController:getState');
3052
- return remoteState.remoteFeatureFlags?.perpsTerminalApiMarkets === true;
3053
- }
3054
- catch {
3055
- return false;
3056
- }
3057
3043
  }, _PerpsController_logError = function _PerpsController_logError(error, options) {
3058
3044
  __classPrivateFieldGet(this, _PerpsController_options, "f").infrastructure.logger.error(error, options);
3059
3045
  }, _PerpsController_debugLog = function _PerpsController_debugLog(...args) {