@metamask-previews/perps-controller 0.0.0-preview-685dbf46b → 1.0.0-preview-bc00f2c
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 -2
- package/dist/PerpsController.cjs +3077 -65
- package/dist/PerpsController.cjs.map +1 -1
- package/dist/PerpsController.d.cts +969 -82
- package/dist/PerpsController.d.cts.map +1 -1
- package/dist/PerpsController.d.mts +969 -82
- package/dist/PerpsController.d.mts.map +1 -1
- package/dist/PerpsController.mjs +3073 -62
- package/dist/PerpsController.mjs.map +1 -1
- package/dist/aggregation/SubscriptionMultiplexer.cjs +441 -0
- package/dist/aggregation/SubscriptionMultiplexer.cjs.map +1 -0
- package/dist/aggregation/SubscriptionMultiplexer.d.cts +171 -0
- package/dist/aggregation/SubscriptionMultiplexer.d.cts.map +1 -0
- package/dist/aggregation/SubscriptionMultiplexer.d.mts +171 -0
- package/dist/aggregation/SubscriptionMultiplexer.d.mts.map +1 -0
- package/dist/aggregation/SubscriptionMultiplexer.mjs +437 -0
- package/dist/aggregation/SubscriptionMultiplexer.mjs.map +1 -0
- package/dist/aggregation/index.cjs +9 -0
- package/dist/aggregation/index.cjs.map +1 -0
- package/dist/aggregation/index.d.cts +6 -0
- package/dist/aggregation/index.d.cts.map +1 -0
- package/dist/aggregation/index.d.mts +6 -0
- package/dist/aggregation/index.d.mts.map +1 -0
- package/dist/aggregation/index.mjs +5 -0
- package/dist/aggregation/index.mjs.map +1 -0
- package/dist/constants/chartConfig.cjs +227 -0
- package/dist/constants/chartConfig.cjs.map +1 -0
- package/dist/constants/chartConfig.d.cts +216 -0
- package/dist/constants/chartConfig.d.cts.map +1 -0
- package/dist/constants/chartConfig.d.mts +216 -0
- package/dist/constants/chartConfig.d.mts.map +1 -0
- package/dist/constants/chartConfig.mjs +221 -0
- package/dist/constants/chartConfig.mjs.map +1 -0
- package/dist/constants/eventNames.cjs +436 -0
- package/dist/constants/eventNames.cjs.map +1 -0
- package/dist/constants/eventNames.d.cts +387 -0
- package/dist/constants/eventNames.d.cts.map +1 -0
- package/dist/constants/eventNames.d.mts +387 -0
- package/dist/constants/eventNames.d.mts.map +1 -0
- package/dist/constants/eventNames.mjs +433 -0
- package/dist/constants/eventNames.mjs.map +1 -0
- package/dist/constants/hyperLiquidConfig.cjs +380 -0
- package/dist/constants/hyperLiquidConfig.cjs.map +1 -0
- package/dist/constants/hyperLiquidConfig.d.cts +236 -0
- package/dist/constants/hyperLiquidConfig.d.cts.map +1 -0
- package/dist/constants/hyperLiquidConfig.d.mts +236 -0
- package/dist/constants/hyperLiquidConfig.d.mts.map +1 -0
- package/dist/constants/hyperLiquidConfig.mjs +371 -0
- package/dist/constants/hyperLiquidConfig.mjs.map +1 -0
- package/dist/constants/index.cjs +28 -0
- package/dist/constants/index.cjs.map +1 -0
- package/dist/constants/index.d.cts +12 -0
- package/dist/constants/index.d.cts.map +1 -0
- package/dist/constants/index.d.mts +12 -0
- package/dist/constants/index.d.mts.map +1 -0
- package/dist/constants/index.mjs +12 -0
- package/dist/constants/index.mjs.map +1 -0
- package/dist/constants/myxConfig.cjs +229 -0
- package/dist/constants/myxConfig.cjs.map +1 -0
- package/dist/constants/myxConfig.d.cts +106 -0
- package/dist/constants/myxConfig.d.cts.map +1 -0
- package/dist/constants/myxConfig.d.mts +106 -0
- package/dist/constants/myxConfig.d.mts.map +1 -0
- package/dist/constants/myxConfig.mjs +219 -0
- package/dist/constants/myxConfig.mjs.map +1 -0
- package/dist/constants/orderTypes.cjs +31 -0
- package/dist/constants/orderTypes.cjs.map +1 -0
- package/dist/constants/orderTypes.d.cts +19 -0
- package/dist/constants/orderTypes.d.cts.map +1 -0
- package/dist/constants/orderTypes.d.mts +19 -0
- package/dist/constants/orderTypes.d.mts.map +1 -0
- package/dist/constants/orderTypes.mjs +27 -0
- package/dist/constants/orderTypes.mjs.map +1 -0
- package/dist/constants/performanceMetrics.cjs +63 -0
- package/dist/constants/performanceMetrics.cjs.map +1 -0
- package/dist/constants/performanceMetrics.d.cts +46 -0
- package/dist/constants/performanceMetrics.d.cts.map +1 -0
- package/dist/constants/performanceMetrics.d.mts +46 -0
- package/dist/constants/performanceMetrics.d.mts.map +1 -0
- package/dist/constants/performanceMetrics.mjs +60 -0
- package/dist/constants/performanceMetrics.mjs.map +1 -0
- package/dist/constants/perpsConfig.cjs +295 -0
- package/dist/constants/perpsConfig.cjs.map +1 -0
- package/dist/constants/perpsConfig.d.cts +221 -0
- package/dist/constants/perpsConfig.d.cts.map +1 -0
- package/dist/constants/perpsConfig.d.mts +221 -0
- package/dist/constants/perpsConfig.d.mts.map +1 -0
- package/dist/constants/perpsConfig.mjs +292 -0
- package/dist/constants/perpsConfig.mjs.map +1 -0
- package/dist/constants/transactionsHistoryConfig.cjs +19 -0
- package/dist/constants/transactionsHistoryConfig.cjs.map +1 -0
- package/dist/constants/transactionsHistoryConfig.d.cts +16 -0
- package/dist/constants/transactionsHistoryConfig.d.cts.map +1 -0
- package/dist/constants/transactionsHistoryConfig.d.mts +16 -0
- package/dist/constants/transactionsHistoryConfig.d.mts.map +1 -0
- package/dist/constants/transactionsHistoryConfig.mjs +16 -0
- package/dist/constants/transactionsHistoryConfig.mjs.map +1 -0
- package/dist/index.cjs +63 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +38 -2
- package/dist/index.d.cts.map +1 -1
- package/dist/index.d.mts +38 -2
- package/dist/index.d.mts.map +1 -1
- package/dist/index.mjs +46 -1
- package/dist/index.mjs.map +1 -1
- package/dist/perpsErrorCodes.cjs +80 -0
- package/dist/perpsErrorCodes.cjs.map +1 -0
- package/dist/perpsErrorCodes.d.cts +65 -0
- package/dist/perpsErrorCodes.d.cts.map +1 -0
- package/dist/perpsErrorCodes.d.mts +65 -0
- package/dist/perpsErrorCodes.d.mts.map +1 -0
- package/dist/perpsErrorCodes.mjs +77 -0
- package/dist/perpsErrorCodes.mjs.map +1 -0
- package/dist/providers/AggregatedPerpsProvider.cjs +508 -0
- package/dist/providers/AggregatedPerpsProvider.cjs.map +1 -0
- package/dist/providers/AggregatedPerpsProvider.d.cts +171 -0
- package/dist/providers/AggregatedPerpsProvider.d.cts.map +1 -0
- package/dist/providers/AggregatedPerpsProvider.d.mts +171 -0
- package/dist/providers/AggregatedPerpsProvider.d.mts.map +1 -0
- package/dist/providers/AggregatedPerpsProvider.mjs +504 -0
- package/dist/providers/AggregatedPerpsProvider.mjs.map +1 -0
- package/dist/providers/HyperLiquidProvider.cjs +5679 -0
- package/dist/providers/HyperLiquidProvider.cjs.map +1 -0
- package/dist/providers/HyperLiquidProvider.d.cts +516 -0
- package/dist/providers/HyperLiquidProvider.d.cts.map +1 -0
- package/dist/providers/HyperLiquidProvider.d.mts +516 -0
- package/dist/providers/HyperLiquidProvider.d.mts.map +1 -0
- package/dist/providers/HyperLiquidProvider.mjs +5675 -0
- package/dist/providers/HyperLiquidProvider.mjs.map +1 -0
- package/dist/providers/MYXProvider.cjs +514 -0
- package/dist/providers/MYXProvider.cjs.map +1 -0
- package/dist/providers/MYXProvider.d.cts +105 -0
- package/dist/providers/MYXProvider.d.cts.map +1 -0
- package/dist/providers/MYXProvider.d.mts +105 -0
- package/dist/providers/MYXProvider.d.mts.map +1 -0
- package/dist/providers/MYXProvider.mjs +510 -0
- package/dist/providers/MYXProvider.mjs.map +1 -0
- package/dist/routing/ProviderRouter.cjs +154 -0
- package/dist/routing/ProviderRouter.cjs.map +1 -0
- package/dist/routing/ProviderRouter.d.cts +112 -0
- package/dist/routing/ProviderRouter.d.cts.map +1 -0
- package/dist/routing/ProviderRouter.d.mts +112 -0
- package/dist/routing/ProviderRouter.d.mts.map +1 -0
- package/dist/routing/ProviderRouter.mjs +150 -0
- package/dist/routing/ProviderRouter.mjs.map +1 -0
- package/dist/routing/index.cjs +9 -0
- package/dist/routing/index.cjs.map +1 -0
- package/dist/routing/index.d.cts +6 -0
- package/dist/routing/index.d.cts.map +1 -0
- package/dist/routing/index.d.mts +6 -0
- package/dist/routing/index.d.mts.map +1 -0
- package/dist/routing/index.mjs +5 -0
- package/dist/routing/index.mjs.map +1 -0
- package/dist/selectors.cjs +166 -0
- package/dist/selectors.cjs.map +1 -0
- package/dist/selectors.d.cts +362 -0
- package/dist/selectors.d.cts.map +1 -0
- package/dist/selectors.d.mts +362 -0
- package/dist/selectors.d.mts.map +1 -0
- package/dist/selectors.mjs +158 -0
- package/dist/selectors.mjs.map +1 -0
- package/dist/services/AccountService.cjs +324 -0
- package/dist/services/AccountService.cjs.map +1 -0
- package/dist/services/AccountService.d.cts +56 -0
- package/dist/services/AccountService.d.cts.map +1 -0
- package/dist/services/AccountService.d.mts +56 -0
- package/dist/services/AccountService.d.mts.map +1 -0
- package/dist/services/AccountService.mjs +320 -0
- package/dist/services/AccountService.mjs.map +1 -0
- package/dist/services/DataLakeService.cjs +233 -0
- package/dist/services/DataLakeService.cjs.map +1 -0
- package/dist/services/DataLakeService.d.cts +51 -0
- package/dist/services/DataLakeService.d.cts.map +1 -0
- package/dist/services/DataLakeService.d.mts +51 -0
- package/dist/services/DataLakeService.d.mts.map +1 -0
- package/dist/services/DataLakeService.mjs +229 -0
- package/dist/services/DataLakeService.mjs.map +1 -0
- package/dist/services/DepositService.cjs +98 -0
- package/dist/services/DepositService.cjs.map +1 -0
- package/dist/services/DepositService.d.cts +39 -0
- package/dist/services/DepositService.d.cts.map +1 -0
- package/dist/services/DepositService.d.mts +39 -0
- package/dist/services/DepositService.d.mts.map +1 -0
- package/dist/services/DepositService.mjs +94 -0
- package/dist/services/DepositService.mjs.map +1 -0
- package/dist/services/EligibilityService.cjs +173 -0
- package/dist/services/EligibilityService.cjs.map +1 -0
- package/dist/services/EligibilityService.d.cts +39 -0
- package/dist/services/EligibilityService.d.cts.map +1 -0
- package/dist/services/EligibilityService.d.mts +39 -0
- package/dist/services/EligibilityService.d.mts.map +1 -0
- package/dist/services/EligibilityService.mjs +169 -0
- package/dist/services/EligibilityService.mjs.map +1 -0
- package/dist/services/FeatureFlagConfigurationService.cjs +257 -0
- package/dist/services/FeatureFlagConfigurationService.cjs.map +1 -0
- package/dist/services/FeatureFlagConfigurationService.d.cts +73 -0
- package/dist/services/FeatureFlagConfigurationService.d.cts.map +1 -0
- package/dist/services/FeatureFlagConfigurationService.d.mts +73 -0
- package/dist/services/FeatureFlagConfigurationService.d.mts.map +1 -0
- package/dist/services/FeatureFlagConfigurationService.mjs +253 -0
- package/dist/services/FeatureFlagConfigurationService.mjs.map +1 -0
- package/dist/services/HyperLiquidClientService.cjs +867 -0
- package/dist/services/HyperLiquidClientService.cjs.map +1 -0
- package/dist/services/HyperLiquidClientService.d.cts +214 -0
- package/dist/services/HyperLiquidClientService.d.cts.map +1 -0
- package/dist/services/HyperLiquidClientService.d.mts +214 -0
- package/dist/services/HyperLiquidClientService.d.mts.map +1 -0
- package/dist/services/HyperLiquidClientService.mjs +862 -0
- package/dist/services/HyperLiquidClientService.mjs.map +1 -0
- package/dist/services/HyperLiquidSubscriptionService.cjs +2199 -0
- package/dist/services/HyperLiquidSubscriptionService.cjs.map +1 -0
- package/dist/services/HyperLiquidSubscriptionService.d.cts +187 -0
- package/dist/services/HyperLiquidSubscriptionService.d.cts.map +1 -0
- package/dist/services/HyperLiquidSubscriptionService.d.mts +187 -0
- package/dist/services/HyperLiquidSubscriptionService.d.mts.map +1 -0
- package/dist/services/HyperLiquidSubscriptionService.mjs +2195 -0
- package/dist/services/HyperLiquidSubscriptionService.mjs.map +1 -0
- package/dist/services/HyperLiquidWalletService.cjs +163 -0
- package/dist/services/HyperLiquidWalletService.cjs.map +1 -0
- package/dist/services/HyperLiquidWalletService.d.cts +78 -0
- package/dist/services/HyperLiquidWalletService.d.cts.map +1 -0
- package/dist/services/HyperLiquidWalletService.d.mts +78 -0
- package/dist/services/HyperLiquidWalletService.d.mts.map +1 -0
- package/dist/services/HyperLiquidWalletService.mjs +159 -0
- package/dist/services/HyperLiquidWalletService.mjs.map +1 -0
- package/dist/services/MYXClientService.cjs +304 -0
- package/dist/services/MYXClientService.cjs.map +1 -0
- package/dist/services/MYXClientService.d.cts +81 -0
- package/dist/services/MYXClientService.d.cts.map +1 -0
- package/dist/services/MYXClientService.d.mts +81 -0
- package/dist/services/MYXClientService.d.mts.map +1 -0
- package/dist/services/MYXClientService.mjs +300 -0
- package/dist/services/MYXClientService.mjs.map +1 -0
- package/dist/services/MarketDataService.cjs +848 -0
- package/dist/services/MarketDataService.cjs.map +1 -0
- package/dist/services/MarketDataService.d.cts +291 -0
- package/dist/services/MarketDataService.d.cts.map +1 -0
- package/dist/services/MarketDataService.d.mts +291 -0
- package/dist/services/MarketDataService.d.mts.map +1 -0
- package/dist/services/MarketDataService.mjs +844 -0
- package/dist/services/MarketDataService.mjs.map +1 -0
- package/dist/services/RewardsIntegrationService.cjs +120 -0
- package/dist/services/RewardsIntegrationService.cjs.map +1 -0
- package/dist/services/RewardsIntegrationService.d.cts +28 -0
- package/dist/services/RewardsIntegrationService.d.cts.map +1 -0
- package/dist/services/RewardsIntegrationService.d.mts +28 -0
- package/dist/services/RewardsIntegrationService.d.mts.map +1 -0
- package/dist/services/RewardsIntegrationService.mjs +116 -0
- package/dist/services/RewardsIntegrationService.mjs.map +1 -0
- package/dist/services/ServiceContext.cjs +3 -0
- package/dist/services/ServiceContext.cjs.map +1 -0
- package/dist/services/ServiceContext.d.cts +86 -0
- package/dist/services/ServiceContext.d.cts.map +1 -0
- package/dist/services/ServiceContext.d.mts +86 -0
- package/dist/services/ServiceContext.d.mts.map +1 -0
- package/dist/services/ServiceContext.mjs +2 -0
- package/dist/services/ServiceContext.mjs.map +1 -0
- package/dist/services/TradingReadinessCache.cjs +288 -0
- package/dist/services/TradingReadinessCache.cjs.map +1 -0
- package/dist/services/TradingReadinessCache.d.cts +174 -0
- package/dist/services/TradingReadinessCache.d.cts.map +1 -0
- package/dist/services/TradingReadinessCache.d.mts +174 -0
- package/dist/services/TradingReadinessCache.d.mts.map +1 -0
- package/dist/services/TradingReadinessCache.mjs +285 -0
- package/dist/services/TradingReadinessCache.mjs.map +1 -0
- package/dist/services/TradingService.cjs +1457 -0
- package/dist/services/TradingService.cjs.map +1 -0
- package/dist/services/TradingService.d.cts +195 -0
- package/dist/services/TradingService.d.cts.map +1 -0
- package/dist/services/TradingService.d.mts +195 -0
- package/dist/services/TradingService.d.mts.map +1 -0
- package/dist/services/TradingService.mjs +1453 -0
- package/dist/services/TradingService.mjs.map +1 -0
- package/dist/types/config.cjs +3 -0
- package/dist/types/config.cjs.map +1 -0
- package/dist/types/config.d.cts +49 -0
- package/dist/types/config.d.cts.map +1 -0
- package/dist/types/config.d.mts +49 -0
- package/dist/types/config.d.mts.map +1 -0
- package/dist/types/config.mjs +2 -0
- package/dist/types/config.mjs.map +1 -0
- package/dist/types/hyperliquid-types.cjs +3 -0
- package/dist/types/hyperliquid-types.cjs.map +1 -0
- package/dist/types/hyperliquid-types.d.cts +20 -0
- package/dist/types/hyperliquid-types.d.cts.map +1 -0
- package/dist/types/hyperliquid-types.d.mts +20 -0
- package/dist/types/hyperliquid-types.d.mts.map +1 -0
- package/dist/types/hyperliquid-types.mjs +2 -0
- package/dist/types/hyperliquid-types.mjs.map +1 -0
- package/dist/types/index.cjs +115 -0
- package/dist/types/index.cjs.map +1 -0
- package/dist/types/index.d.cts +1262 -0
- package/dist/types/index.d.cts.map +1 -0
- package/dist/types/index.d.mts +1262 -0
- package/dist/types/index.d.mts.map +1 -0
- package/dist/types/index.mjs +97 -0
- package/dist/types/index.mjs.map +1 -0
- package/dist/types/messenger.cjs +3 -0
- package/dist/types/messenger.cjs.map +1 -0
- package/dist/types/messenger.d.cts +27 -0
- package/dist/types/messenger.d.cts.map +1 -0
- package/dist/types/messenger.d.mts +27 -0
- package/dist/types/messenger.d.mts.map +1 -0
- package/dist/types/messenger.mjs +2 -0
- package/dist/types/messenger.mjs.map +1 -0
- package/dist/types/myx-types.cjs +25 -0
- package/dist/types/myx-types.cjs.map +1 -0
- package/dist/types/myx-types.d.cts +63 -0
- package/dist/types/myx-types.d.cts.map +1 -0
- package/dist/types/myx-types.d.mts +63 -0
- package/dist/types/myx-types.d.mts.map +1 -0
- package/dist/types/myx-types.mjs +22 -0
- package/dist/types/myx-types.mjs.map +1 -0
- package/dist/types/perps-types.cjs +4 -0
- package/dist/types/perps-types.cjs.map +1 -0
- package/dist/types/perps-types.d.cts +105 -0
- package/dist/types/perps-types.d.cts.map +1 -0
- package/dist/types/perps-types.d.mts +105 -0
- package/dist/types/perps-types.d.mts.map +1 -0
- package/dist/types/perps-types.mjs +2 -0
- package/dist/types/perps-types.mjs.map +1 -0
- package/dist/types/token.cjs +3 -0
- package/dist/types/token.cjs.map +1 -0
- package/dist/types/token.d.cts +25 -0
- package/dist/types/token.d.cts.map +1 -0
- package/dist/types/token.d.mts +25 -0
- package/dist/types/token.d.mts.map +1 -0
- package/dist/types/token.mjs +2 -0
- package/dist/types/token.mjs.map +1 -0
- package/dist/types/transactionTypes.cjs +28 -0
- package/dist/types/transactionTypes.cjs.map +1 -0
- package/dist/types/transactionTypes.d.cts +64 -0
- package/dist/types/transactionTypes.d.cts.map +1 -0
- package/dist/types/transactionTypes.d.mts +64 -0
- package/dist/types/transactionTypes.d.mts.map +1 -0
- package/dist/types/transactionTypes.mjs +23 -0
- package/dist/types/transactionTypes.mjs.map +1 -0
- package/dist/utils/accountUtils.cjs +100 -0
- package/dist/utils/accountUtils.cjs.map +1 -0
- package/dist/utils/accountUtils.d.cts +30 -0
- package/dist/utils/accountUtils.d.cts.map +1 -0
- package/dist/utils/accountUtils.d.mts +30 -0
- package/dist/utils/accountUtils.d.mts.map +1 -0
- package/dist/utils/accountUtils.mjs +92 -0
- package/dist/utils/accountUtils.mjs.map +1 -0
- package/dist/utils/errorUtils.cjs +35 -0
- package/dist/utils/errorUtils.cjs.map +1 -0
- package/dist/utils/errorUtils.d.cts +15 -0
- package/dist/utils/errorUtils.d.cts.map +1 -0
- package/dist/utils/errorUtils.d.mts +15 -0
- package/dist/utils/errorUtils.d.mts.map +1 -0
- package/dist/utils/errorUtils.mjs +31 -0
- package/dist/utils/errorUtils.mjs.map +1 -0
- package/dist/utils/hyperLiquidAdapter.cjs +331 -0
- package/dist/utils/hyperLiquidAdapter.cjs.map +1 -0
- package/dist/utils/hyperLiquidAdapter.d.cts +42 -0
- package/dist/utils/hyperLiquidAdapter.d.cts.map +1 -0
- package/dist/utils/hyperLiquidAdapter.d.mts +42 -0
- package/dist/utils/hyperLiquidAdapter.d.mts.map +1 -0
- package/dist/utils/hyperLiquidAdapter.mjs +316 -0
- package/dist/utils/hyperLiquidAdapter.mjs.map +1 -0
- package/dist/utils/hyperLiquidOrderBookProcessor.cjs +83 -0
- package/dist/utils/hyperLiquidOrderBookProcessor.cjs.map +1 -0
- package/dist/utils/hyperLiquidOrderBookProcessor.d.cts +55 -0
- package/dist/utils/hyperLiquidOrderBookProcessor.d.cts.map +1 -0
- package/dist/utils/hyperLiquidOrderBookProcessor.d.mts +55 -0
- package/dist/utils/hyperLiquidOrderBookProcessor.d.mts.map +1 -0
- package/dist/utils/hyperLiquidOrderBookProcessor.mjs +78 -0
- package/dist/utils/hyperLiquidOrderBookProcessor.mjs.map +1 -0
- package/dist/utils/hyperLiquidValidation.cjs +426 -0
- package/dist/utils/hyperLiquidValidation.cjs.map +1 -0
- package/dist/utils/hyperLiquidValidation.d.cts +143 -0
- package/dist/utils/hyperLiquidValidation.d.cts.map +1 -0
- package/dist/utils/hyperLiquidValidation.d.mts +143 -0
- package/dist/utils/hyperLiquidValidation.d.mts.map +1 -0
- package/dist/utils/hyperLiquidValidation.mjs +413 -0
- package/dist/utils/hyperLiquidValidation.mjs.map +1 -0
- package/dist/utils/idUtils.cjs +18 -0
- package/dist/utils/idUtils.cjs.map +1 -0
- package/dist/utils/idUtils.d.cts +6 -0
- package/dist/utils/idUtils.d.cts.map +1 -0
- package/dist/utils/idUtils.d.mts +6 -0
- package/dist/utils/idUtils.d.mts.map +1 -0
- package/dist/utils/idUtils.mjs +10 -0
- package/dist/utils/idUtils.mjs.map +1 -0
- package/dist/utils/index.cjs +59 -0
- package/dist/utils/index.cjs.map +1 -0
- package/dist/utils/index.d.cts +25 -0
- package/dist/utils/index.d.cts.map +1 -0
- package/dist/utils/index.d.mts +25 -0
- package/dist/utils/index.d.mts.map +1 -0
- package/dist/utils/index.mjs +30 -0
- package/dist/utils/index.mjs.map +1 -0
- package/dist/utils/marketDataTransform.cjs +211 -0
- package/dist/utils/marketDataTransform.cjs.map +1 -0
- package/dist/utils/marketDataTransform.d.cts +40 -0
- package/dist/utils/marketDataTransform.d.cts.map +1 -0
- package/dist/utils/marketDataTransform.d.mts +40 -0
- package/dist/utils/marketDataTransform.d.mts.map +1 -0
- package/dist/utils/marketDataTransform.mjs +205 -0
- package/dist/utils/marketDataTransform.mjs.map +1 -0
- package/dist/utils/marketUtils.cjs +151 -0
- package/dist/utils/marketUtils.cjs.map +1 -0
- package/dist/utils/marketUtils.d.cts +30 -0
- package/dist/utils/marketUtils.d.cts.map +1 -0
- package/dist/utils/marketUtils.d.mts +30 -0
- package/dist/utils/marketUtils.d.mts.map +1 -0
- package/dist/utils/marketUtils.mjs +138 -0
- package/dist/utils/marketUtils.mjs.map +1 -0
- package/dist/utils/myxAdapter.cjs +224 -0
- package/dist/utils/myxAdapter.cjs.map +1 -0
- package/dist/utils/myxAdapter.d.cts +81 -0
- package/dist/utils/myxAdapter.d.cts.map +1 -0
- package/dist/utils/myxAdapter.d.mts +81 -0
- package/dist/utils/myxAdapter.d.mts.map +1 -0
- package/dist/utils/myxAdapter.mjs +213 -0
- package/dist/utils/myxAdapter.mjs.map +1 -0
- package/dist/utils/orderCalculations.cjs +283 -0
- package/dist/utils/orderCalculations.cjs.map +1 -0
- package/dist/utils/orderCalculations.d.cts +107 -0
- package/dist/utils/orderCalculations.d.cts.map +1 -0
- package/dist/utils/orderCalculations.d.mts +107 -0
- package/dist/utils/orderCalculations.d.mts.map +1 -0
- package/dist/utils/orderCalculations.mjs +274 -0
- package/dist/utils/orderCalculations.mjs.map +1 -0
- package/dist/utils/rewardsUtils.cjs +98 -0
- package/dist/utils/rewardsUtils.cjs.map +1 -0
- package/dist/utils/rewardsUtils.d.cts +33 -0
- package/dist/utils/rewardsUtils.d.cts.map +1 -0
- package/dist/utils/rewardsUtils.d.mts +33 -0
- package/dist/utils/rewardsUtils.d.mts.map +1 -0
- package/dist/utils/rewardsUtils.mjs +92 -0
- package/dist/utils/rewardsUtils.mjs.map +1 -0
- package/dist/utils/significantFigures.cjs +88 -0
- package/dist/utils/significantFigures.cjs.map +1 -0
- package/dist/utils/significantFigures.d.cts +25 -0
- package/dist/utils/significantFigures.d.cts.map +1 -0
- package/dist/utils/significantFigures.d.mts +25 -0
- package/dist/utils/significantFigures.d.mts.map +1 -0
- package/dist/utils/significantFigures.mjs +82 -0
- package/dist/utils/significantFigures.mjs.map +1 -0
- package/dist/utils/sortMarkets.cjs +93 -0
- package/dist/utils/sortMarkets.cjs.map +1 -0
- package/dist/utils/sortMarkets.d.cts +27 -0
- package/dist/utils/sortMarkets.d.cts.map +1 -0
- package/dist/utils/sortMarkets.d.mts +27 -0
- package/dist/utils/sortMarkets.d.mts.map +1 -0
- package/dist/utils/sortMarkets.mjs +88 -0
- package/dist/utils/sortMarkets.mjs.map +1 -0
- package/dist/utils/standaloneInfoClient.cjs +70 -0
- package/dist/utils/standaloneInfoClient.cjs.map +1 -0
- package/dist/utils/standaloneInfoClient.d.cts +37 -0
- package/dist/utils/standaloneInfoClient.d.cts.map +1 -0
- package/dist/utils/standaloneInfoClient.d.mts +37 -0
- package/dist/utils/standaloneInfoClient.d.mts.map +1 -0
- package/dist/utils/standaloneInfoClient.mjs +64 -0
- package/dist/utils/standaloneInfoClient.mjs.map +1 -0
- package/dist/utils/stringParseUtils.cjs +18 -0
- package/dist/utils/stringParseUtils.cjs.map +1 -0
- package/dist/utils/stringParseUtils.d.cts +3 -0
- package/dist/utils/stringParseUtils.d.cts.map +1 -0
- package/dist/utils/stringParseUtils.d.mts +3 -0
- package/dist/utils/stringParseUtils.d.mts.map +1 -0
- package/dist/utils/stringParseUtils.mjs +13 -0
- package/dist/utils/stringParseUtils.mjs.map +1 -0
- package/dist/utils/transferData.cjs +33 -0
- package/dist/utils/transferData.cjs.map +1 -0
- package/dist/utils/transferData.d.cts +9 -0
- package/dist/utils/transferData.d.cts.map +1 -0
- package/dist/utils/transferData.d.mts +9 -0
- package/dist/utils/transferData.d.mts.map +1 -0
- package/dist/utils/transferData.mjs +29 -0
- package/dist/utils/transferData.mjs.map +1 -0
- package/dist/utils/wait.cjs +6 -0
- package/dist/utils/wait.cjs.map +1 -0
- package/dist/utils/wait.d.cts +2 -0
- package/dist/utils/wait.d.cts.map +1 -0
- package/dist/utils/wait.d.mts +2 -0
- package/dist/utils/wait.d.mts.map +1 -0
- package/dist/utils/wait.mjs +2 -0
- package/dist/utils/wait.mjs.map +1 -0
- package/package.json +16 -2
|
@@ -0,0 +1,219 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* MYX Protocol Configuration Constants
|
|
3
|
+
*
|
|
4
|
+
* Stage 1 configuration for market display and price fetching.
|
|
5
|
+
* Based on MYX SDK patterns but simplified for read-only operations.
|
|
6
|
+
*/
|
|
7
|
+
import { BigNumber } from "bignumber.js";
|
|
8
|
+
// ============================================================================
|
|
9
|
+
// Network Constants
|
|
10
|
+
// ============================================================================
|
|
11
|
+
/**
|
|
12
|
+
* BNB Chain IDs - MYX's primary network
|
|
13
|
+
*/
|
|
14
|
+
export const BNB_MAINNET_CHAIN_ID = '56';
|
|
15
|
+
export const BNB_TESTNET_CHAIN_ID = '97';
|
|
16
|
+
export const BNB_MAINNET_CAIP_CHAIN_ID = `eip155:${BNB_MAINNET_CHAIN_ID}`;
|
|
17
|
+
export const BNB_TESTNET_CAIP_CHAIN_ID = `eip155:${BNB_TESTNET_CHAIN_ID}`;
|
|
18
|
+
/**
|
|
19
|
+
* Get numeric chain ID for MYX network
|
|
20
|
+
*
|
|
21
|
+
* @param network - The MYX network environment (mainnet or testnet).
|
|
22
|
+
* @returns The numeric chain ID for the specified network.
|
|
23
|
+
*/
|
|
24
|
+
export function getMYXChainId(network) {
|
|
25
|
+
return network === 'testnet'
|
|
26
|
+
? parseInt(BNB_TESTNET_CHAIN_ID, 10)
|
|
27
|
+
: parseInt(BNB_MAINNET_CHAIN_ID, 10);
|
|
28
|
+
}
|
|
29
|
+
// ============================================================================
|
|
30
|
+
// API Endpoints
|
|
31
|
+
// ============================================================================
|
|
32
|
+
/**
|
|
33
|
+
* MYX REST and WebSocket endpoints
|
|
34
|
+
*/
|
|
35
|
+
export const MYX_ENDPOINTS = {
|
|
36
|
+
mainnet: {
|
|
37
|
+
http: 'https://api.myx.finance',
|
|
38
|
+
ws: 'wss://ws.myx.finance',
|
|
39
|
+
},
|
|
40
|
+
testnet: {
|
|
41
|
+
http: 'https://api-beta.myx.finance',
|
|
42
|
+
ws: 'wss://ws-beta.myx.finance',
|
|
43
|
+
},
|
|
44
|
+
};
|
|
45
|
+
/**
|
|
46
|
+
* Get HTTP endpoint for network
|
|
47
|
+
*
|
|
48
|
+
* @param network - The MYX network environment (mainnet or testnet).
|
|
49
|
+
* @returns The HTTP API endpoint URL for the specified network.
|
|
50
|
+
*/
|
|
51
|
+
export function getMYXHttpEndpoint(network) {
|
|
52
|
+
return MYX_ENDPOINTS[network].http;
|
|
53
|
+
}
|
|
54
|
+
// ============================================================================
|
|
55
|
+
// Decimal Constants
|
|
56
|
+
// ============================================================================
|
|
57
|
+
/**
|
|
58
|
+
* MYX uses 30 decimals for price representation
|
|
59
|
+
* This is consistent with the SDK's internal format
|
|
60
|
+
*/
|
|
61
|
+
export const MYX_PRICE_DECIMALS = 30;
|
|
62
|
+
/**
|
|
63
|
+
* MYX uses 18 decimals for position sizes
|
|
64
|
+
*/
|
|
65
|
+
export const MYX_SIZE_DECIMALS = 18;
|
|
66
|
+
/**
|
|
67
|
+
* MYX uses 18 decimals for collateral amounts (USDT on BNB)
|
|
68
|
+
*/
|
|
69
|
+
export const MYX_COLLATERAL_DECIMALS = 18;
|
|
70
|
+
// ============================================================================
|
|
71
|
+
// Token Addresses
|
|
72
|
+
// ============================================================================
|
|
73
|
+
/**
|
|
74
|
+
* USDT token address on BNB testnet
|
|
75
|
+
*/
|
|
76
|
+
export const USDT_BNB_TESTNET = '0x337610d27c682e347c9cd60bd4b3b107c9d34ddd';
|
|
77
|
+
/**
|
|
78
|
+
* USDT token address on BNB mainnet
|
|
79
|
+
*/
|
|
80
|
+
export const USDT_BNB_MAINNET = '0x55d398326f99059ff775485246999027b3197955';
|
|
81
|
+
/**
|
|
82
|
+
* USDT configuration by network
|
|
83
|
+
*/
|
|
84
|
+
export const MYX_ASSET_CONFIGS = {
|
|
85
|
+
USDT: {
|
|
86
|
+
mainnet: {
|
|
87
|
+
chainId: BNB_MAINNET_CAIP_CHAIN_ID,
|
|
88
|
+
tokenAddress: USDT_BNB_MAINNET,
|
|
89
|
+
},
|
|
90
|
+
testnet: {
|
|
91
|
+
chainId: BNB_TESTNET_CAIP_CHAIN_ID,
|
|
92
|
+
tokenAddress: USDT_BNB_TESTNET,
|
|
93
|
+
},
|
|
94
|
+
},
|
|
95
|
+
};
|
|
96
|
+
// ============================================================================
|
|
97
|
+
// Decimal Conversion Helpers
|
|
98
|
+
// ============================================================================
|
|
99
|
+
/**
|
|
100
|
+
* Convert MYX SDK price (30 decimals) to standard number
|
|
101
|
+
*
|
|
102
|
+
* @param myxPrice - Price string in 30-decimal format from SDK
|
|
103
|
+
* @returns Standard decimal number
|
|
104
|
+
*/
|
|
105
|
+
export function fromMYXPrice(myxPrice) {
|
|
106
|
+
if (!myxPrice || myxPrice === '0') {
|
|
107
|
+
return 0;
|
|
108
|
+
}
|
|
109
|
+
try {
|
|
110
|
+
const bn = new BigNumber(myxPrice);
|
|
111
|
+
if (bn.isNaN()) {
|
|
112
|
+
return 0;
|
|
113
|
+
}
|
|
114
|
+
const divisor = new BigNumber(10).pow(MYX_PRICE_DECIMALS);
|
|
115
|
+
return bn.dividedBy(divisor).toNumber();
|
|
116
|
+
}
|
|
117
|
+
catch {
|
|
118
|
+
return 0;
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
/**
|
|
122
|
+
* Convert standard number to MYX SDK price format (30 decimals)
|
|
123
|
+
*
|
|
124
|
+
* @param price - Standard decimal number
|
|
125
|
+
* @returns Price string in 30-decimal format for SDK
|
|
126
|
+
*/
|
|
127
|
+
export function toMYXPrice(price) {
|
|
128
|
+
try {
|
|
129
|
+
const bn = new BigNumber(price);
|
|
130
|
+
if (bn.isNaN()) {
|
|
131
|
+
return '0';
|
|
132
|
+
}
|
|
133
|
+
const multiplier = new BigNumber(10).pow(MYX_PRICE_DECIMALS);
|
|
134
|
+
return bn.multipliedBy(multiplier).toFixed(0);
|
|
135
|
+
}
|
|
136
|
+
catch {
|
|
137
|
+
return '0';
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
/**
|
|
141
|
+
* Convert MYX SDK size (18 decimals) to standard number
|
|
142
|
+
*
|
|
143
|
+
* @param myxSize - Size string in 18-decimal format from SDK
|
|
144
|
+
* @returns Standard decimal number
|
|
145
|
+
*/
|
|
146
|
+
export function fromMYXSize(myxSize) {
|
|
147
|
+
if (!myxSize || myxSize === '0') {
|
|
148
|
+
return 0;
|
|
149
|
+
}
|
|
150
|
+
try {
|
|
151
|
+
const bn = new BigNumber(myxSize);
|
|
152
|
+
if (bn.isNaN()) {
|
|
153
|
+
return 0;
|
|
154
|
+
}
|
|
155
|
+
const divisor = new BigNumber(10).pow(MYX_SIZE_DECIMALS);
|
|
156
|
+
return bn.dividedBy(divisor).toNumber();
|
|
157
|
+
}
|
|
158
|
+
catch {
|
|
159
|
+
return 0;
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
/**
|
|
163
|
+
* Convert standard number to MYX SDK size format (18 decimals)
|
|
164
|
+
*
|
|
165
|
+
* @param size - Standard decimal number
|
|
166
|
+
* @returns Size string in 18-decimal format for SDK
|
|
167
|
+
*/
|
|
168
|
+
export function toMYXSize(size) {
|
|
169
|
+
try {
|
|
170
|
+
const bn = new BigNumber(size);
|
|
171
|
+
if (bn.isNaN()) {
|
|
172
|
+
return '0';
|
|
173
|
+
}
|
|
174
|
+
const multiplier = new BigNumber(10).pow(MYX_SIZE_DECIMALS);
|
|
175
|
+
return bn.multipliedBy(multiplier).toFixed(0);
|
|
176
|
+
}
|
|
177
|
+
catch {
|
|
178
|
+
return '0';
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
/**
|
|
182
|
+
* Convert MYX SDK collateral (18 decimals) to standard number
|
|
183
|
+
*
|
|
184
|
+
* @param myxCollateral - Collateral string in 18-decimal format from SDK
|
|
185
|
+
* @returns Standard decimal number
|
|
186
|
+
*/
|
|
187
|
+
export function fromMYXCollateral(myxCollateral) {
|
|
188
|
+
if (!myxCollateral || myxCollateral === '0') {
|
|
189
|
+
return 0;
|
|
190
|
+
}
|
|
191
|
+
try {
|
|
192
|
+
const bn = new BigNumber(myxCollateral);
|
|
193
|
+
if (bn.isNaN()) {
|
|
194
|
+
return 0;
|
|
195
|
+
}
|
|
196
|
+
const divisor = new BigNumber(10).pow(MYX_COLLATERAL_DECIMALS);
|
|
197
|
+
return bn.dividedBy(divisor).toNumber();
|
|
198
|
+
}
|
|
199
|
+
catch {
|
|
200
|
+
return 0;
|
|
201
|
+
}
|
|
202
|
+
}
|
|
203
|
+
// ============================================================================
|
|
204
|
+
// REST API Configuration
|
|
205
|
+
// ============================================================================
|
|
206
|
+
/**
|
|
207
|
+
* Price polling interval in milliseconds
|
|
208
|
+
* Using 5 seconds as a fallback for unreliable WebSocket
|
|
209
|
+
*/
|
|
210
|
+
export const MYX_PRICE_POLLING_INTERVAL_MS = 5000;
|
|
211
|
+
/**
|
|
212
|
+
* HTTP request timeout in milliseconds
|
|
213
|
+
*/
|
|
214
|
+
export const MYX_HTTP_TIMEOUT_MS = 10000;
|
|
215
|
+
/**
|
|
216
|
+
* Maximum retries for failed API requests
|
|
217
|
+
*/
|
|
218
|
+
export const MYX_MAX_RETRIES = 3;
|
|
219
|
+
//# sourceMappingURL=myxConfig.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"myxConfig.mjs","sourceRoot":"","sources":["../../src/constants/myxConfig.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * MYX Protocol Configuration Constants\n *\n * Stage 1 configuration for market display and price fetching.\n * Based on MYX SDK patterns but simplified for read-only operations.\n */\n\nimport type { CaipChainId } from '@metamask/utils';\nimport { BigNumber } from 'bignumber.js';\n\nimport type {\n MYXNetwork,\n MYXEndpoints,\n MYXAssetConfigs,\n} from '../types/myx-types';\n\n// ============================================================================\n// Network Constants\n// ============================================================================\n\n/**\n * BNB Chain IDs - MYX's primary network\n */\nexport const BNB_MAINNET_CHAIN_ID = '56' as const;\nexport const BNB_TESTNET_CHAIN_ID = '97' as const;\nexport const BNB_MAINNET_CAIP_CHAIN_ID =\n `eip155:${BNB_MAINNET_CHAIN_ID}` as CaipChainId;\nexport const BNB_TESTNET_CAIP_CHAIN_ID =\n `eip155:${BNB_TESTNET_CHAIN_ID}` as CaipChainId;\n\n/**\n * Get numeric chain ID for MYX network\n *\n * @param network - The MYX network environment (mainnet or testnet).\n * @returns The numeric chain ID for the specified network.\n */\nexport function getMYXChainId(network: MYXNetwork): number {\n return network === 'testnet'\n ? parseInt(BNB_TESTNET_CHAIN_ID, 10)\n : parseInt(BNB_MAINNET_CHAIN_ID, 10);\n}\n\n// ============================================================================\n// API Endpoints\n// ============================================================================\n\n/**\n * MYX REST and WebSocket endpoints\n */\nexport const MYX_ENDPOINTS: MYXEndpoints = {\n mainnet: {\n http: 'https://api.myx.finance',\n ws: 'wss://ws.myx.finance',\n },\n testnet: {\n http: 'https://api-beta.myx.finance',\n ws: 'wss://ws-beta.myx.finance',\n },\n};\n\n/**\n * Get HTTP endpoint for network\n *\n * @param network - The MYX network environment (mainnet or testnet).\n * @returns The HTTP API endpoint URL for the specified network.\n */\nexport function getMYXHttpEndpoint(network: MYXNetwork): string {\n return MYX_ENDPOINTS[network].http;\n}\n\n// ============================================================================\n// Decimal Constants\n// ============================================================================\n\n/**\n * MYX uses 30 decimals for price representation\n * This is consistent with the SDK's internal format\n */\nexport const MYX_PRICE_DECIMALS = 30;\n\n/**\n * MYX uses 18 decimals for position sizes\n */\nexport const MYX_SIZE_DECIMALS = 18;\n\n/**\n * MYX uses 18 decimals for collateral amounts (USDT on BNB)\n */\nexport const MYX_COLLATERAL_DECIMALS = 18;\n\n// ============================================================================\n// Token Addresses\n// ============================================================================\n\n/**\n * USDT token address on BNB testnet\n */\nexport const USDT_BNB_TESTNET =\n '0x337610d27c682e347c9cd60bd4b3b107c9d34ddd' as const;\n\n/**\n * USDT token address on BNB mainnet\n */\nexport const USDT_BNB_MAINNET =\n '0x55d398326f99059ff775485246999027b3197955' as const;\n\n/**\n * USDT configuration by network\n */\nexport const MYX_ASSET_CONFIGS: MYXAssetConfigs = {\n USDT: {\n mainnet: {\n chainId: BNB_MAINNET_CAIP_CHAIN_ID,\n tokenAddress: USDT_BNB_MAINNET,\n },\n testnet: {\n chainId: BNB_TESTNET_CAIP_CHAIN_ID,\n tokenAddress: USDT_BNB_TESTNET,\n },\n },\n};\n\n// ============================================================================\n// Decimal Conversion Helpers\n// ============================================================================\n\n/**\n * Convert MYX SDK price (30 decimals) to standard number\n *\n * @param myxPrice - Price string in 30-decimal format from SDK\n * @returns Standard decimal number\n */\nexport function fromMYXPrice(myxPrice: string): number {\n if (!myxPrice || myxPrice === '0') {\n return 0;\n }\n\n try {\n const bn = new BigNumber(myxPrice);\n if (bn.isNaN()) {\n return 0;\n }\n const divisor = new BigNumber(10).pow(MYX_PRICE_DECIMALS);\n return bn.dividedBy(divisor).toNumber();\n } catch {\n return 0;\n }\n}\n\n/**\n * Convert standard number to MYX SDK price format (30 decimals)\n *\n * @param price - Standard decimal number\n * @returns Price string in 30-decimal format for SDK\n */\nexport function toMYXPrice(price: number | string): string {\n try {\n const bn = new BigNumber(price);\n if (bn.isNaN()) {\n return '0';\n }\n const multiplier = new BigNumber(10).pow(MYX_PRICE_DECIMALS);\n return bn.multipliedBy(multiplier).toFixed(0);\n } catch {\n return '0';\n }\n}\n\n/**\n * Convert MYX SDK size (18 decimals) to standard number\n *\n * @param myxSize - Size string in 18-decimal format from SDK\n * @returns Standard decimal number\n */\nexport function fromMYXSize(myxSize: string): number {\n if (!myxSize || myxSize === '0') {\n return 0;\n }\n\n try {\n const bn = new BigNumber(myxSize);\n if (bn.isNaN()) {\n return 0;\n }\n const divisor = new BigNumber(10).pow(MYX_SIZE_DECIMALS);\n return bn.dividedBy(divisor).toNumber();\n } catch {\n return 0;\n }\n}\n\n/**\n * Convert standard number to MYX SDK size format (18 decimals)\n *\n * @param size - Standard decimal number\n * @returns Size string in 18-decimal format for SDK\n */\nexport function toMYXSize(size: number | string): string {\n try {\n const bn = new BigNumber(size);\n if (bn.isNaN()) {\n return '0';\n }\n const multiplier = new BigNumber(10).pow(MYX_SIZE_DECIMALS);\n return bn.multipliedBy(multiplier).toFixed(0);\n } catch {\n return '0';\n }\n}\n\n/**\n * Convert MYX SDK collateral (18 decimals) to standard number\n *\n * @param myxCollateral - Collateral string in 18-decimal format from SDK\n * @returns Standard decimal number\n */\nexport function fromMYXCollateral(myxCollateral: string): number {\n if (!myxCollateral || myxCollateral === '0') {\n return 0;\n }\n\n try {\n const bn = new BigNumber(myxCollateral);\n if (bn.isNaN()) {\n return 0;\n }\n const divisor = new BigNumber(10).pow(MYX_COLLATERAL_DECIMALS);\n return bn.dividedBy(divisor).toNumber();\n } catch {\n return 0;\n }\n}\n\n// ============================================================================\n// REST API Configuration\n// ============================================================================\n\n/**\n * Price polling interval in milliseconds\n * Using 5 seconds as a fallback for unreliable WebSocket\n */\nexport const MYX_PRICE_POLLING_INTERVAL_MS = 5000;\n\n/**\n * HTTP request timeout in milliseconds\n */\nexport const MYX_HTTP_TIMEOUT_MS = 10000;\n\n/**\n * Maximum retries for failed API requests\n */\nexport const MYX_MAX_RETRIES = 3;\n"]}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.isTPSLOrder = exports.DETAILED_ORDER_TYPES = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Detailed order types from HyperLiquid API
|
|
6
|
+
*/
|
|
7
|
+
exports.DETAILED_ORDER_TYPES = {
|
|
8
|
+
LIMIT: 'Limit',
|
|
9
|
+
MARKET: 'Market',
|
|
10
|
+
STOP_LIMIT: 'Stop Limit',
|
|
11
|
+
STOP_MARKET: 'Stop Market',
|
|
12
|
+
TAKE_PROFIT_LIMIT: 'Take Profit Limit',
|
|
13
|
+
TAKE_PROFIT_MARKET: 'Take Profit Market',
|
|
14
|
+
};
|
|
15
|
+
/**
|
|
16
|
+
* Check if an order type is a TP/SL order
|
|
17
|
+
*
|
|
18
|
+
* @param detailedOrderType - The detailed order type string to check.
|
|
19
|
+
* @returns True if the order type is a take-profit or stop-loss variant.
|
|
20
|
+
*/
|
|
21
|
+
const isTPSLOrder = (detailedOrderType) => {
|
|
22
|
+
if (!detailedOrderType) {
|
|
23
|
+
return false;
|
|
24
|
+
}
|
|
25
|
+
return (detailedOrderType === exports.DETAILED_ORDER_TYPES.STOP_LIMIT ||
|
|
26
|
+
detailedOrderType === exports.DETAILED_ORDER_TYPES.STOP_MARKET ||
|
|
27
|
+
detailedOrderType === exports.DETAILED_ORDER_TYPES.TAKE_PROFIT_LIMIT ||
|
|
28
|
+
detailedOrderType === exports.DETAILED_ORDER_TYPES.TAKE_PROFIT_MARKET);
|
|
29
|
+
};
|
|
30
|
+
exports.isTPSLOrder = isTPSLOrder;
|
|
31
|
+
//# sourceMappingURL=orderTypes.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"orderTypes.cjs","sourceRoot":"","sources":["../../src/constants/orderTypes.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACU,QAAA,oBAAoB,GAAG;IAClC,KAAK,EAAE,OAAO;IACd,MAAM,EAAE,QAAQ;IAChB,UAAU,EAAE,YAAY;IACxB,WAAW,EAAE,aAAa;IAC1B,iBAAiB,EAAE,mBAAmB;IACtC,kBAAkB,EAAE,oBAAoB;CAChC,CAAC;AAEX;;;;;GAKG;AACI,MAAM,WAAW,GAAG,CAAC,iBAA0B,EAAW,EAAE;IACjE,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACvB,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,CACL,iBAAiB,KAAK,4BAAoB,CAAC,UAAU;QACrD,iBAAiB,KAAK,4BAAoB,CAAC,WAAW;QACtD,iBAAiB,KAAK,4BAAoB,CAAC,iBAAiB;QAC5D,iBAAiB,KAAK,4BAAoB,CAAC,kBAAkB,CAC9D,CAAC;AACJ,CAAC,CAAC;AAVW,QAAA,WAAW,eAUtB","sourcesContent":["/**\n * Detailed order types from HyperLiquid API\n */\nexport const DETAILED_ORDER_TYPES = {\n LIMIT: 'Limit',\n MARKET: 'Market',\n STOP_LIMIT: 'Stop Limit',\n STOP_MARKET: 'Stop Market',\n TAKE_PROFIT_LIMIT: 'Take Profit Limit',\n TAKE_PROFIT_MARKET: 'Take Profit Market',\n} as const;\n\n/**\n * Check if an order type is a TP/SL order\n *\n * @param detailedOrderType - The detailed order type string to check.\n * @returns True if the order type is a take-profit or stop-loss variant.\n */\nexport const isTPSLOrder = (detailedOrderType?: string): boolean => {\n if (!detailedOrderType) {\n return false;\n }\n return (\n detailedOrderType === DETAILED_ORDER_TYPES.STOP_LIMIT ||\n detailedOrderType === DETAILED_ORDER_TYPES.STOP_MARKET ||\n detailedOrderType === DETAILED_ORDER_TYPES.TAKE_PROFIT_LIMIT ||\n detailedOrderType === DETAILED_ORDER_TYPES.TAKE_PROFIT_MARKET\n );\n};\n"]}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Detailed order types from HyperLiquid API
|
|
3
|
+
*/
|
|
4
|
+
export declare const DETAILED_ORDER_TYPES: {
|
|
5
|
+
readonly LIMIT: "Limit";
|
|
6
|
+
readonly MARKET: "Market";
|
|
7
|
+
readonly STOP_LIMIT: "Stop Limit";
|
|
8
|
+
readonly STOP_MARKET: "Stop Market";
|
|
9
|
+
readonly TAKE_PROFIT_LIMIT: "Take Profit Limit";
|
|
10
|
+
readonly TAKE_PROFIT_MARKET: "Take Profit Market";
|
|
11
|
+
};
|
|
12
|
+
/**
|
|
13
|
+
* Check if an order type is a TP/SL order
|
|
14
|
+
*
|
|
15
|
+
* @param detailedOrderType - The detailed order type string to check.
|
|
16
|
+
* @returns True if the order type is a take-profit or stop-loss variant.
|
|
17
|
+
*/
|
|
18
|
+
export declare const isTPSLOrder: (detailedOrderType?: string) => boolean;
|
|
19
|
+
//# sourceMappingURL=orderTypes.d.cts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"orderTypes.d.cts","sourceRoot":"","sources":["../../src/constants/orderTypes.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,oBAAoB;;;;;;;CAOvB,CAAC;AAEX;;;;;GAKG;AACH,eAAO,MAAM,WAAW,uBAAwB,MAAM,KAAG,OAUxD,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Detailed order types from HyperLiquid API
|
|
3
|
+
*/
|
|
4
|
+
export declare const DETAILED_ORDER_TYPES: {
|
|
5
|
+
readonly LIMIT: "Limit";
|
|
6
|
+
readonly MARKET: "Market";
|
|
7
|
+
readonly STOP_LIMIT: "Stop Limit";
|
|
8
|
+
readonly STOP_MARKET: "Stop Market";
|
|
9
|
+
readonly TAKE_PROFIT_LIMIT: "Take Profit Limit";
|
|
10
|
+
readonly TAKE_PROFIT_MARKET: "Take Profit Market";
|
|
11
|
+
};
|
|
12
|
+
/**
|
|
13
|
+
* Check if an order type is a TP/SL order
|
|
14
|
+
*
|
|
15
|
+
* @param detailedOrderType - The detailed order type string to check.
|
|
16
|
+
* @returns True if the order type is a take-profit or stop-loss variant.
|
|
17
|
+
*/
|
|
18
|
+
export declare const isTPSLOrder: (detailedOrderType?: string) => boolean;
|
|
19
|
+
//# sourceMappingURL=orderTypes.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"orderTypes.d.mts","sourceRoot":"","sources":["../../src/constants/orderTypes.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,oBAAoB;;;;;;;CAOvB,CAAC;AAEX;;;;;GAKG;AACH,eAAO,MAAM,WAAW,uBAAwB,MAAM,KAAG,OAUxD,CAAC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Detailed order types from HyperLiquid API
|
|
3
|
+
*/
|
|
4
|
+
export const DETAILED_ORDER_TYPES = {
|
|
5
|
+
LIMIT: 'Limit',
|
|
6
|
+
MARKET: 'Market',
|
|
7
|
+
STOP_LIMIT: 'Stop Limit',
|
|
8
|
+
STOP_MARKET: 'Stop Market',
|
|
9
|
+
TAKE_PROFIT_LIMIT: 'Take Profit Limit',
|
|
10
|
+
TAKE_PROFIT_MARKET: 'Take Profit Market',
|
|
11
|
+
};
|
|
12
|
+
/**
|
|
13
|
+
* Check if an order type is a TP/SL order
|
|
14
|
+
*
|
|
15
|
+
* @param detailedOrderType - The detailed order type string to check.
|
|
16
|
+
* @returns True if the order type is a take-profit or stop-loss variant.
|
|
17
|
+
*/
|
|
18
|
+
export const isTPSLOrder = (detailedOrderType) => {
|
|
19
|
+
if (!detailedOrderType) {
|
|
20
|
+
return false;
|
|
21
|
+
}
|
|
22
|
+
return (detailedOrderType === DETAILED_ORDER_TYPES.STOP_LIMIT ||
|
|
23
|
+
detailedOrderType === DETAILED_ORDER_TYPES.STOP_MARKET ||
|
|
24
|
+
detailedOrderType === DETAILED_ORDER_TYPES.TAKE_PROFIT_LIMIT ||
|
|
25
|
+
detailedOrderType === DETAILED_ORDER_TYPES.TAKE_PROFIT_MARKET);
|
|
26
|
+
};
|
|
27
|
+
//# sourceMappingURL=orderTypes.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"orderTypes.mjs","sourceRoot":"","sources":["../../src/constants/orderTypes.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAClC,KAAK,EAAE,OAAO;IACd,MAAM,EAAE,QAAQ;IAChB,UAAU,EAAE,YAAY;IACxB,WAAW,EAAE,aAAa;IAC1B,iBAAiB,EAAE,mBAAmB;IACtC,kBAAkB,EAAE,oBAAoB;CAChC,CAAC;AAEX;;;;;GAKG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,iBAA0B,EAAW,EAAE;IACjE,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACvB,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,CACL,iBAAiB,KAAK,oBAAoB,CAAC,UAAU;QACrD,iBAAiB,KAAK,oBAAoB,CAAC,WAAW;QACtD,iBAAiB,KAAK,oBAAoB,CAAC,iBAAiB;QAC5D,iBAAiB,KAAK,oBAAoB,CAAC,kBAAkB,CAC9D,CAAC;AACJ,CAAC,CAAC","sourcesContent":["/**\n * Detailed order types from HyperLiquid API\n */\nexport const DETAILED_ORDER_TYPES = {\n LIMIT: 'Limit',\n MARKET: 'Market',\n STOP_LIMIT: 'Stop Limit',\n STOP_MARKET: 'Stop Market',\n TAKE_PROFIT_LIMIT: 'Take Profit Limit',\n TAKE_PROFIT_MARKET: 'Take Profit Market',\n} as const;\n\n/**\n * Check if an order type is a TP/SL order\n *\n * @param detailedOrderType - The detailed order type string to check.\n * @returns True if the order type is a take-profit or stop-loss variant.\n */\nexport const isTPSLOrder = (detailedOrderType?: string): boolean => {\n if (!detailedOrderType) {\n return false;\n }\n return (\n detailedOrderType === DETAILED_ORDER_TYPES.STOP_LIMIT ||\n detailedOrderType === DETAILED_ORDER_TYPES.STOP_MARKET ||\n detailedOrderType === DETAILED_ORDER_TYPES.TAKE_PROFIT_LIMIT ||\n detailedOrderType === DETAILED_ORDER_TYPES.TAKE_PROFIT_MARKET\n );\n};\n"]}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.PerpsMeasurementName = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Performance measurement names for Sentry monitoring
|
|
6
|
+
* These constants ensure consistency across the Perps feature
|
|
7
|
+
* Used for direct setMeasurement() calls in controllers and services
|
|
8
|
+
*
|
|
9
|
+
* Naming Convention: perps.{category}.{metric_name}
|
|
10
|
+
* - Uses dot notation for hierarchical grouping in Sentry
|
|
11
|
+
* - Categories: websocket, connection, api, operation, screen, ui
|
|
12
|
+
* - Enables easy filtering (e.g., perps.websocket.*) and dashboard aggregation
|
|
13
|
+
*/
|
|
14
|
+
var PerpsMeasurementName;
|
|
15
|
+
(function (PerpsMeasurementName) {
|
|
16
|
+
// ===== ACTIVE SENTRY METRICS =====
|
|
17
|
+
// WebSocket Performance Metrics (milliseconds)
|
|
18
|
+
// Tracks WebSocket connection lifecycle and data flow
|
|
19
|
+
PerpsMeasurementName["PerpsWebsocketConnectionEstablishment"] = "perps.websocket.connection_establishment";
|
|
20
|
+
PerpsMeasurementName["PerpsWebsocketConnectionWithPreload"] = "perps.websocket.connection_with_preload";
|
|
21
|
+
PerpsMeasurementName["PerpsWebsocketFirstPositionData"] = "perps.websocket.first_position_data";
|
|
22
|
+
PerpsMeasurementName["PerpsWebsocketAccountSwitchReconnection"] = "perps.websocket.account_switch_reconnection";
|
|
23
|
+
PerpsMeasurementName["PerpsConnectionHealthCheck"] = "perps.websocket.health_check";
|
|
24
|
+
PerpsMeasurementName["PerpsReconnectionHealthCheck"] = "perps.websocket.reconnection_health_check";
|
|
25
|
+
// Connection Lifecycle Metrics (milliseconds)
|
|
26
|
+
// Tracks connection initialization and reconnection sub-stages
|
|
27
|
+
PerpsMeasurementName["PerpsProviderInit"] = "perps.connection.provider_init";
|
|
28
|
+
PerpsMeasurementName["PerpsAccountStateFetch"] = "perps.connection.account_state_fetch";
|
|
29
|
+
PerpsMeasurementName["PerpsSubscriptionsPreload"] = "perps.connection.subscriptions_preload";
|
|
30
|
+
PerpsMeasurementName["PerpsReconnectionCleanup"] = "perps.connection.cleanup";
|
|
31
|
+
PerpsMeasurementName["PerpsControllerReinit"] = "perps.connection.controller_reinit";
|
|
32
|
+
PerpsMeasurementName["PerpsNewAccountFetch"] = "perps.connection.new_account_fetch";
|
|
33
|
+
PerpsMeasurementName["PerpsReconnectionPreload"] = "perps.connection.reconnection_preload";
|
|
34
|
+
// API Call Metrics (milliseconds)
|
|
35
|
+
// Tracks external API performance
|
|
36
|
+
PerpsMeasurementName["PerpsDataLakeApiCall"] = "perps.api.data_lake_call";
|
|
37
|
+
PerpsMeasurementName["PerpsRewardsFeeDiscountApiCall"] = "perps.api.rewards_fee_discount";
|
|
38
|
+
PerpsMeasurementName["PerpsRewardsPointsEstimationApiCall"] = "perps.api.rewards_points_estimation";
|
|
39
|
+
PerpsMeasurementName["PerpsRewardsOrderExecutionFeeDiscountApiCall"] = "perps.api.rewards_order_execution_fee_discount";
|
|
40
|
+
// Data Operation Metrics (milliseconds)
|
|
41
|
+
// Tracks data fetch operations
|
|
42
|
+
PerpsMeasurementName["PerpsGetPositionsOperation"] = "perps.operation.get_positions";
|
|
43
|
+
PerpsMeasurementName["PerpsGetOpenOrdersOperation"] = "perps.operation.get_open_orders";
|
|
44
|
+
PerpsMeasurementName["PerpsMarketDataPreload"] = "perps.operation.market_data_preload";
|
|
45
|
+
PerpsMeasurementName["PerpsUserDataPreload"] = "perps.operation.user_data_preload";
|
|
46
|
+
// Screen Load Metrics (milliseconds)
|
|
47
|
+
// Tracks full screen render performance
|
|
48
|
+
PerpsMeasurementName["PerpsWithdrawalScreenLoaded"] = "perps.screen.withdrawal_loaded";
|
|
49
|
+
PerpsMeasurementName["PerpsMarketsScreenLoaded"] = "perps.screen.markets_loaded";
|
|
50
|
+
PerpsMeasurementName["PerpsAssetScreenLoaded"] = "perps.screen.asset_loaded";
|
|
51
|
+
PerpsMeasurementName["PerpsTradeScreenLoaded"] = "perps.screen.trade_loaded";
|
|
52
|
+
PerpsMeasurementName["PerpsCloseScreenLoaded"] = "perps.screen.close_loaded";
|
|
53
|
+
PerpsMeasurementName["PerpsTransactionHistoryScreenLoaded"] = "perps.screen.transaction_history_loaded";
|
|
54
|
+
PerpsMeasurementName["PerpsTabLoaded"] = "perps.screen.tab_loaded";
|
|
55
|
+
// UI Component Metrics (milliseconds)
|
|
56
|
+
// Tracks individual UI component render performance
|
|
57
|
+
PerpsMeasurementName["PerpsLeverageBottomSheetLoaded"] = "perps.ui.leverage_bottom_sheet_loaded";
|
|
58
|
+
PerpsMeasurementName["PerpsOrderSubmissionToastLoaded"] = "perps.ui.order_submission_toast_loaded";
|
|
59
|
+
PerpsMeasurementName["PerpsOrderConfirmationToastLoaded"] = "perps.ui.order_confirmation_toast_loaded";
|
|
60
|
+
PerpsMeasurementName["PerpsCloseOrderSubmissionToastLoaded"] = "perps.ui.close_order_submission_toast_loaded";
|
|
61
|
+
PerpsMeasurementName["PerpsCloseOrderConfirmationToastLoaded"] = "perps.ui.close_order_confirmation_toast_loaded";
|
|
62
|
+
})(PerpsMeasurementName || (exports.PerpsMeasurementName = PerpsMeasurementName = {}));
|
|
63
|
+
//# sourceMappingURL=performanceMetrics.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"performanceMetrics.cjs","sourceRoot":"","sources":["../../src/constants/performanceMetrics.ts"],"names":[],"mappings":";;;AAAA;;;;;;;;;GASG;AACH,IAAY,oBAqDX;AArDD,WAAY,oBAAoB;IAC9B,oCAAoC;IAEpC,+CAA+C;IAC/C,sDAAsD;IACtD,0GAAkF,CAAA;IAClF,uGAA+E,CAAA;IAC/E,+FAAuE,CAAA;IACvE,+GAAuF,CAAA;IACvF,mFAA2D,CAAA;IAC3D,kGAA0E,CAAA;IAE1E,8CAA8C;IAC9C,+DAA+D;IAC/D,4EAAoD,CAAA;IACpD,uFAA+D,CAAA;IAC/D,4FAAoE,CAAA;IACpE,6EAAqD,CAAA;IACrD,oFAA4D,CAAA;IAC5D,mFAA2D,CAAA;IAC3D,0FAAkE,CAAA;IAElE,kCAAkC;IAClC,kCAAkC;IAClC,yEAAiD,CAAA;IACjD,yFAAiE,CAAA;IACjE,mGAA2E,CAAA;IAC3E,uHAA+F,CAAA;IAE/F,wCAAwC;IACxC,+BAA+B;IAC/B,oFAA4D,CAAA;IAC5D,uFAA+D,CAAA;IAC/D,sFAA8D,CAAA;IAC9D,kFAA0D,CAAA;IAE1D,qCAAqC;IACrC,wCAAwC;IACxC,sFAA8D,CAAA;IAC9D,gFAAwD,CAAA;IACxD,4EAAoD,CAAA;IACpD,4EAAoD,CAAA;IACpD,4EAAoD,CAAA;IACpD,uGAA+E,CAAA;IAC/E,kEAA0C,CAAA;IAE1C,sCAAsC;IACtC,oDAAoD;IACpD,gGAAwE,CAAA;IACxE,kGAA0E,CAAA;IAC1E,sGAA8E,CAAA;IAC9E,6GAAqF,CAAA;IACrF,iHAAyF,CAAA;AAC3F,CAAC,EArDW,oBAAoB,oCAApB,oBAAoB,QAqD/B","sourcesContent":["/**\n * Performance measurement names for Sentry monitoring\n * These constants ensure consistency across the Perps feature\n * Used for direct setMeasurement() calls in controllers and services\n *\n * Naming Convention: perps.{category}.{metric_name}\n * - Uses dot notation for hierarchical grouping in Sentry\n * - Categories: websocket, connection, api, operation, screen, ui\n * - Enables easy filtering (e.g., perps.websocket.*) and dashboard aggregation\n */\nexport enum PerpsMeasurementName {\n // ===== ACTIVE SENTRY METRICS =====\n\n // WebSocket Performance Metrics (milliseconds)\n // Tracks WebSocket connection lifecycle and data flow\n PerpsWebsocketConnectionEstablishment = 'perps.websocket.connection_establishment',\n PerpsWebsocketConnectionWithPreload = 'perps.websocket.connection_with_preload',\n PerpsWebsocketFirstPositionData = 'perps.websocket.first_position_data',\n PerpsWebsocketAccountSwitchReconnection = 'perps.websocket.account_switch_reconnection',\n PerpsConnectionHealthCheck = 'perps.websocket.health_check',\n PerpsReconnectionHealthCheck = 'perps.websocket.reconnection_health_check',\n\n // Connection Lifecycle Metrics (milliseconds)\n // Tracks connection initialization and reconnection sub-stages\n PerpsProviderInit = 'perps.connection.provider_init',\n PerpsAccountStateFetch = 'perps.connection.account_state_fetch',\n PerpsSubscriptionsPreload = 'perps.connection.subscriptions_preload',\n PerpsReconnectionCleanup = 'perps.connection.cleanup',\n PerpsControllerReinit = 'perps.connection.controller_reinit',\n PerpsNewAccountFetch = 'perps.connection.new_account_fetch',\n PerpsReconnectionPreload = 'perps.connection.reconnection_preload',\n\n // API Call Metrics (milliseconds)\n // Tracks external API performance\n PerpsDataLakeApiCall = 'perps.api.data_lake_call',\n PerpsRewardsFeeDiscountApiCall = 'perps.api.rewards_fee_discount',\n PerpsRewardsPointsEstimationApiCall = 'perps.api.rewards_points_estimation',\n PerpsRewardsOrderExecutionFeeDiscountApiCall = 'perps.api.rewards_order_execution_fee_discount',\n\n // Data Operation Metrics (milliseconds)\n // Tracks data fetch operations\n PerpsGetPositionsOperation = 'perps.operation.get_positions',\n PerpsGetOpenOrdersOperation = 'perps.operation.get_open_orders',\n PerpsMarketDataPreload = 'perps.operation.market_data_preload',\n PerpsUserDataPreload = 'perps.operation.user_data_preload',\n\n // Screen Load Metrics (milliseconds)\n // Tracks full screen render performance\n PerpsWithdrawalScreenLoaded = 'perps.screen.withdrawal_loaded',\n PerpsMarketsScreenLoaded = 'perps.screen.markets_loaded',\n PerpsAssetScreenLoaded = 'perps.screen.asset_loaded',\n PerpsTradeScreenLoaded = 'perps.screen.trade_loaded',\n PerpsCloseScreenLoaded = 'perps.screen.close_loaded',\n PerpsTransactionHistoryScreenLoaded = 'perps.screen.transaction_history_loaded',\n PerpsTabLoaded = 'perps.screen.tab_loaded',\n\n // UI Component Metrics (milliseconds)\n // Tracks individual UI component render performance\n PerpsLeverageBottomSheetLoaded = 'perps.ui.leverage_bottom_sheet_loaded',\n PerpsOrderSubmissionToastLoaded = 'perps.ui.order_submission_toast_loaded',\n PerpsOrderConfirmationToastLoaded = 'perps.ui.order_confirmation_toast_loaded',\n PerpsCloseOrderSubmissionToastLoaded = 'perps.ui.close_order_submission_toast_loaded',\n PerpsCloseOrderConfirmationToastLoaded = 'perps.ui.close_order_confirmation_toast_loaded',\n}\n"]}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Performance measurement names for Sentry monitoring
|
|
3
|
+
* These constants ensure consistency across the Perps feature
|
|
4
|
+
* Used for direct setMeasurement() calls in controllers and services
|
|
5
|
+
*
|
|
6
|
+
* Naming Convention: perps.{category}.{metric_name}
|
|
7
|
+
* - Uses dot notation for hierarchical grouping in Sentry
|
|
8
|
+
* - Categories: websocket, connection, api, operation, screen, ui
|
|
9
|
+
* - Enables easy filtering (e.g., perps.websocket.*) and dashboard aggregation
|
|
10
|
+
*/
|
|
11
|
+
export declare enum PerpsMeasurementName {
|
|
12
|
+
PerpsWebsocketConnectionEstablishment = "perps.websocket.connection_establishment",
|
|
13
|
+
PerpsWebsocketConnectionWithPreload = "perps.websocket.connection_with_preload",
|
|
14
|
+
PerpsWebsocketFirstPositionData = "perps.websocket.first_position_data",
|
|
15
|
+
PerpsWebsocketAccountSwitchReconnection = "perps.websocket.account_switch_reconnection",
|
|
16
|
+
PerpsConnectionHealthCheck = "perps.websocket.health_check",
|
|
17
|
+
PerpsReconnectionHealthCheck = "perps.websocket.reconnection_health_check",
|
|
18
|
+
PerpsProviderInit = "perps.connection.provider_init",
|
|
19
|
+
PerpsAccountStateFetch = "perps.connection.account_state_fetch",
|
|
20
|
+
PerpsSubscriptionsPreload = "perps.connection.subscriptions_preload",
|
|
21
|
+
PerpsReconnectionCleanup = "perps.connection.cleanup",
|
|
22
|
+
PerpsControllerReinit = "perps.connection.controller_reinit",
|
|
23
|
+
PerpsNewAccountFetch = "perps.connection.new_account_fetch",
|
|
24
|
+
PerpsReconnectionPreload = "perps.connection.reconnection_preload",
|
|
25
|
+
PerpsDataLakeApiCall = "perps.api.data_lake_call",
|
|
26
|
+
PerpsRewardsFeeDiscountApiCall = "perps.api.rewards_fee_discount",
|
|
27
|
+
PerpsRewardsPointsEstimationApiCall = "perps.api.rewards_points_estimation",
|
|
28
|
+
PerpsRewardsOrderExecutionFeeDiscountApiCall = "perps.api.rewards_order_execution_fee_discount",
|
|
29
|
+
PerpsGetPositionsOperation = "perps.operation.get_positions",
|
|
30
|
+
PerpsGetOpenOrdersOperation = "perps.operation.get_open_orders",
|
|
31
|
+
PerpsMarketDataPreload = "perps.operation.market_data_preload",
|
|
32
|
+
PerpsUserDataPreload = "perps.operation.user_data_preload",
|
|
33
|
+
PerpsWithdrawalScreenLoaded = "perps.screen.withdrawal_loaded",
|
|
34
|
+
PerpsMarketsScreenLoaded = "perps.screen.markets_loaded",
|
|
35
|
+
PerpsAssetScreenLoaded = "perps.screen.asset_loaded",
|
|
36
|
+
PerpsTradeScreenLoaded = "perps.screen.trade_loaded",
|
|
37
|
+
PerpsCloseScreenLoaded = "perps.screen.close_loaded",
|
|
38
|
+
PerpsTransactionHistoryScreenLoaded = "perps.screen.transaction_history_loaded",
|
|
39
|
+
PerpsTabLoaded = "perps.screen.tab_loaded",
|
|
40
|
+
PerpsLeverageBottomSheetLoaded = "perps.ui.leverage_bottom_sheet_loaded",
|
|
41
|
+
PerpsOrderSubmissionToastLoaded = "perps.ui.order_submission_toast_loaded",
|
|
42
|
+
PerpsOrderConfirmationToastLoaded = "perps.ui.order_confirmation_toast_loaded",
|
|
43
|
+
PerpsCloseOrderSubmissionToastLoaded = "perps.ui.close_order_submission_toast_loaded",
|
|
44
|
+
PerpsCloseOrderConfirmationToastLoaded = "perps.ui.close_order_confirmation_toast_loaded"
|
|
45
|
+
}
|
|
46
|
+
//# sourceMappingURL=performanceMetrics.d.cts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"performanceMetrics.d.cts","sourceRoot":"","sources":["../../src/constants/performanceMetrics.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,oBAAY,oBAAoB;IAK9B,qCAAqC,6CAA6C;IAClF,mCAAmC,4CAA4C;IAC/E,+BAA+B,wCAAwC;IACvE,uCAAuC,gDAAgD;IACvF,0BAA0B,iCAAiC;IAC3D,4BAA4B,8CAA8C;IAI1E,iBAAiB,mCAAmC;IACpD,sBAAsB,yCAAyC;IAC/D,yBAAyB,2CAA2C;IACpE,wBAAwB,6BAA6B;IACrD,qBAAqB,uCAAuC;IAC5D,oBAAoB,uCAAuC;IAC3D,wBAAwB,0CAA0C;IAIlE,oBAAoB,6BAA6B;IACjD,8BAA8B,mCAAmC;IACjE,mCAAmC,wCAAwC;IAC3E,4CAA4C,mDAAmD;IAI/F,0BAA0B,kCAAkC;IAC5D,2BAA2B,oCAAoC;IAC/D,sBAAsB,wCAAwC;IAC9D,oBAAoB,sCAAsC;IAI1D,2BAA2B,mCAAmC;IAC9D,wBAAwB,gCAAgC;IACxD,sBAAsB,8BAA8B;IACpD,sBAAsB,8BAA8B;IACpD,sBAAsB,8BAA8B;IACpD,mCAAmC,4CAA4C;IAC/E,cAAc,4BAA4B;IAI1C,8BAA8B,0CAA0C;IACxE,+BAA+B,2CAA2C;IAC1E,iCAAiC,6CAA6C;IAC9E,oCAAoC,iDAAiD;IACrF,sCAAsC,mDAAmD;CAC1F"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Performance measurement names for Sentry monitoring
|
|
3
|
+
* These constants ensure consistency across the Perps feature
|
|
4
|
+
* Used for direct setMeasurement() calls in controllers and services
|
|
5
|
+
*
|
|
6
|
+
* Naming Convention: perps.{category}.{metric_name}
|
|
7
|
+
* - Uses dot notation for hierarchical grouping in Sentry
|
|
8
|
+
* - Categories: websocket, connection, api, operation, screen, ui
|
|
9
|
+
* - Enables easy filtering (e.g., perps.websocket.*) and dashboard aggregation
|
|
10
|
+
*/
|
|
11
|
+
export declare enum PerpsMeasurementName {
|
|
12
|
+
PerpsWebsocketConnectionEstablishment = "perps.websocket.connection_establishment",
|
|
13
|
+
PerpsWebsocketConnectionWithPreload = "perps.websocket.connection_with_preload",
|
|
14
|
+
PerpsWebsocketFirstPositionData = "perps.websocket.first_position_data",
|
|
15
|
+
PerpsWebsocketAccountSwitchReconnection = "perps.websocket.account_switch_reconnection",
|
|
16
|
+
PerpsConnectionHealthCheck = "perps.websocket.health_check",
|
|
17
|
+
PerpsReconnectionHealthCheck = "perps.websocket.reconnection_health_check",
|
|
18
|
+
PerpsProviderInit = "perps.connection.provider_init",
|
|
19
|
+
PerpsAccountStateFetch = "perps.connection.account_state_fetch",
|
|
20
|
+
PerpsSubscriptionsPreload = "perps.connection.subscriptions_preload",
|
|
21
|
+
PerpsReconnectionCleanup = "perps.connection.cleanup",
|
|
22
|
+
PerpsControllerReinit = "perps.connection.controller_reinit",
|
|
23
|
+
PerpsNewAccountFetch = "perps.connection.new_account_fetch",
|
|
24
|
+
PerpsReconnectionPreload = "perps.connection.reconnection_preload",
|
|
25
|
+
PerpsDataLakeApiCall = "perps.api.data_lake_call",
|
|
26
|
+
PerpsRewardsFeeDiscountApiCall = "perps.api.rewards_fee_discount",
|
|
27
|
+
PerpsRewardsPointsEstimationApiCall = "perps.api.rewards_points_estimation",
|
|
28
|
+
PerpsRewardsOrderExecutionFeeDiscountApiCall = "perps.api.rewards_order_execution_fee_discount",
|
|
29
|
+
PerpsGetPositionsOperation = "perps.operation.get_positions",
|
|
30
|
+
PerpsGetOpenOrdersOperation = "perps.operation.get_open_orders",
|
|
31
|
+
PerpsMarketDataPreload = "perps.operation.market_data_preload",
|
|
32
|
+
PerpsUserDataPreload = "perps.operation.user_data_preload",
|
|
33
|
+
PerpsWithdrawalScreenLoaded = "perps.screen.withdrawal_loaded",
|
|
34
|
+
PerpsMarketsScreenLoaded = "perps.screen.markets_loaded",
|
|
35
|
+
PerpsAssetScreenLoaded = "perps.screen.asset_loaded",
|
|
36
|
+
PerpsTradeScreenLoaded = "perps.screen.trade_loaded",
|
|
37
|
+
PerpsCloseScreenLoaded = "perps.screen.close_loaded",
|
|
38
|
+
PerpsTransactionHistoryScreenLoaded = "perps.screen.transaction_history_loaded",
|
|
39
|
+
PerpsTabLoaded = "perps.screen.tab_loaded",
|
|
40
|
+
PerpsLeverageBottomSheetLoaded = "perps.ui.leverage_bottom_sheet_loaded",
|
|
41
|
+
PerpsOrderSubmissionToastLoaded = "perps.ui.order_submission_toast_loaded",
|
|
42
|
+
PerpsOrderConfirmationToastLoaded = "perps.ui.order_confirmation_toast_loaded",
|
|
43
|
+
PerpsCloseOrderSubmissionToastLoaded = "perps.ui.close_order_submission_toast_loaded",
|
|
44
|
+
PerpsCloseOrderConfirmationToastLoaded = "perps.ui.close_order_confirmation_toast_loaded"
|
|
45
|
+
}
|
|
46
|
+
//# sourceMappingURL=performanceMetrics.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"performanceMetrics.d.mts","sourceRoot":"","sources":["../../src/constants/performanceMetrics.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,oBAAY,oBAAoB;IAK9B,qCAAqC,6CAA6C;IAClF,mCAAmC,4CAA4C;IAC/E,+BAA+B,wCAAwC;IACvE,uCAAuC,gDAAgD;IACvF,0BAA0B,iCAAiC;IAC3D,4BAA4B,8CAA8C;IAI1E,iBAAiB,mCAAmC;IACpD,sBAAsB,yCAAyC;IAC/D,yBAAyB,2CAA2C;IACpE,wBAAwB,6BAA6B;IACrD,qBAAqB,uCAAuC;IAC5D,oBAAoB,uCAAuC;IAC3D,wBAAwB,0CAA0C;IAIlE,oBAAoB,6BAA6B;IACjD,8BAA8B,mCAAmC;IACjE,mCAAmC,wCAAwC;IAC3E,4CAA4C,mDAAmD;IAI/F,0BAA0B,kCAAkC;IAC5D,2BAA2B,oCAAoC;IAC/D,sBAAsB,wCAAwC;IAC9D,oBAAoB,sCAAsC;IAI1D,2BAA2B,mCAAmC;IAC9D,wBAAwB,gCAAgC;IACxD,sBAAsB,8BAA8B;IACpD,sBAAsB,8BAA8B;IACpD,sBAAsB,8BAA8B;IACpD,mCAAmC,4CAA4C;IAC/E,cAAc,4BAA4B;IAI1C,8BAA8B,0CAA0C;IACxE,+BAA+B,2CAA2C;IAC1E,iCAAiC,6CAA6C;IAC9E,oCAAoC,iDAAiD;IACrF,sCAAsC,mDAAmD;CAC1F"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Performance measurement names for Sentry monitoring
|
|
3
|
+
* These constants ensure consistency across the Perps feature
|
|
4
|
+
* Used for direct setMeasurement() calls in controllers and services
|
|
5
|
+
*
|
|
6
|
+
* Naming Convention: perps.{category}.{metric_name}
|
|
7
|
+
* - Uses dot notation for hierarchical grouping in Sentry
|
|
8
|
+
* - Categories: websocket, connection, api, operation, screen, ui
|
|
9
|
+
* - Enables easy filtering (e.g., perps.websocket.*) and dashboard aggregation
|
|
10
|
+
*/
|
|
11
|
+
export var PerpsMeasurementName;
|
|
12
|
+
(function (PerpsMeasurementName) {
|
|
13
|
+
// ===== ACTIVE SENTRY METRICS =====
|
|
14
|
+
// WebSocket Performance Metrics (milliseconds)
|
|
15
|
+
// Tracks WebSocket connection lifecycle and data flow
|
|
16
|
+
PerpsMeasurementName["PerpsWebsocketConnectionEstablishment"] = "perps.websocket.connection_establishment";
|
|
17
|
+
PerpsMeasurementName["PerpsWebsocketConnectionWithPreload"] = "perps.websocket.connection_with_preload";
|
|
18
|
+
PerpsMeasurementName["PerpsWebsocketFirstPositionData"] = "perps.websocket.first_position_data";
|
|
19
|
+
PerpsMeasurementName["PerpsWebsocketAccountSwitchReconnection"] = "perps.websocket.account_switch_reconnection";
|
|
20
|
+
PerpsMeasurementName["PerpsConnectionHealthCheck"] = "perps.websocket.health_check";
|
|
21
|
+
PerpsMeasurementName["PerpsReconnectionHealthCheck"] = "perps.websocket.reconnection_health_check";
|
|
22
|
+
// Connection Lifecycle Metrics (milliseconds)
|
|
23
|
+
// Tracks connection initialization and reconnection sub-stages
|
|
24
|
+
PerpsMeasurementName["PerpsProviderInit"] = "perps.connection.provider_init";
|
|
25
|
+
PerpsMeasurementName["PerpsAccountStateFetch"] = "perps.connection.account_state_fetch";
|
|
26
|
+
PerpsMeasurementName["PerpsSubscriptionsPreload"] = "perps.connection.subscriptions_preload";
|
|
27
|
+
PerpsMeasurementName["PerpsReconnectionCleanup"] = "perps.connection.cleanup";
|
|
28
|
+
PerpsMeasurementName["PerpsControllerReinit"] = "perps.connection.controller_reinit";
|
|
29
|
+
PerpsMeasurementName["PerpsNewAccountFetch"] = "perps.connection.new_account_fetch";
|
|
30
|
+
PerpsMeasurementName["PerpsReconnectionPreload"] = "perps.connection.reconnection_preload";
|
|
31
|
+
// API Call Metrics (milliseconds)
|
|
32
|
+
// Tracks external API performance
|
|
33
|
+
PerpsMeasurementName["PerpsDataLakeApiCall"] = "perps.api.data_lake_call";
|
|
34
|
+
PerpsMeasurementName["PerpsRewardsFeeDiscountApiCall"] = "perps.api.rewards_fee_discount";
|
|
35
|
+
PerpsMeasurementName["PerpsRewardsPointsEstimationApiCall"] = "perps.api.rewards_points_estimation";
|
|
36
|
+
PerpsMeasurementName["PerpsRewardsOrderExecutionFeeDiscountApiCall"] = "perps.api.rewards_order_execution_fee_discount";
|
|
37
|
+
// Data Operation Metrics (milliseconds)
|
|
38
|
+
// Tracks data fetch operations
|
|
39
|
+
PerpsMeasurementName["PerpsGetPositionsOperation"] = "perps.operation.get_positions";
|
|
40
|
+
PerpsMeasurementName["PerpsGetOpenOrdersOperation"] = "perps.operation.get_open_orders";
|
|
41
|
+
PerpsMeasurementName["PerpsMarketDataPreload"] = "perps.operation.market_data_preload";
|
|
42
|
+
PerpsMeasurementName["PerpsUserDataPreload"] = "perps.operation.user_data_preload";
|
|
43
|
+
// Screen Load Metrics (milliseconds)
|
|
44
|
+
// Tracks full screen render performance
|
|
45
|
+
PerpsMeasurementName["PerpsWithdrawalScreenLoaded"] = "perps.screen.withdrawal_loaded";
|
|
46
|
+
PerpsMeasurementName["PerpsMarketsScreenLoaded"] = "perps.screen.markets_loaded";
|
|
47
|
+
PerpsMeasurementName["PerpsAssetScreenLoaded"] = "perps.screen.asset_loaded";
|
|
48
|
+
PerpsMeasurementName["PerpsTradeScreenLoaded"] = "perps.screen.trade_loaded";
|
|
49
|
+
PerpsMeasurementName["PerpsCloseScreenLoaded"] = "perps.screen.close_loaded";
|
|
50
|
+
PerpsMeasurementName["PerpsTransactionHistoryScreenLoaded"] = "perps.screen.transaction_history_loaded";
|
|
51
|
+
PerpsMeasurementName["PerpsTabLoaded"] = "perps.screen.tab_loaded";
|
|
52
|
+
// UI Component Metrics (milliseconds)
|
|
53
|
+
// Tracks individual UI component render performance
|
|
54
|
+
PerpsMeasurementName["PerpsLeverageBottomSheetLoaded"] = "perps.ui.leverage_bottom_sheet_loaded";
|
|
55
|
+
PerpsMeasurementName["PerpsOrderSubmissionToastLoaded"] = "perps.ui.order_submission_toast_loaded";
|
|
56
|
+
PerpsMeasurementName["PerpsOrderConfirmationToastLoaded"] = "perps.ui.order_confirmation_toast_loaded";
|
|
57
|
+
PerpsMeasurementName["PerpsCloseOrderSubmissionToastLoaded"] = "perps.ui.close_order_submission_toast_loaded";
|
|
58
|
+
PerpsMeasurementName["PerpsCloseOrderConfirmationToastLoaded"] = "perps.ui.close_order_confirmation_toast_loaded";
|
|
59
|
+
})(PerpsMeasurementName || (PerpsMeasurementName = {}));
|
|
60
|
+
//# sourceMappingURL=performanceMetrics.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"performanceMetrics.mjs","sourceRoot":"","sources":["../../src/constants/performanceMetrics.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,MAAM,CAAN,IAAY,oBAqDX;AArDD,WAAY,oBAAoB;IAC9B,oCAAoC;IAEpC,+CAA+C;IAC/C,sDAAsD;IACtD,0GAAkF,CAAA;IAClF,uGAA+E,CAAA;IAC/E,+FAAuE,CAAA;IACvE,+GAAuF,CAAA;IACvF,mFAA2D,CAAA;IAC3D,kGAA0E,CAAA;IAE1E,8CAA8C;IAC9C,+DAA+D;IAC/D,4EAAoD,CAAA;IACpD,uFAA+D,CAAA;IAC/D,4FAAoE,CAAA;IACpE,6EAAqD,CAAA;IACrD,oFAA4D,CAAA;IAC5D,mFAA2D,CAAA;IAC3D,0FAAkE,CAAA;IAElE,kCAAkC;IAClC,kCAAkC;IAClC,yEAAiD,CAAA;IACjD,yFAAiE,CAAA;IACjE,mGAA2E,CAAA;IAC3E,uHAA+F,CAAA;IAE/F,wCAAwC;IACxC,+BAA+B;IAC/B,oFAA4D,CAAA;IAC5D,uFAA+D,CAAA;IAC/D,sFAA8D,CAAA;IAC9D,kFAA0D,CAAA;IAE1D,qCAAqC;IACrC,wCAAwC;IACxC,sFAA8D,CAAA;IAC9D,gFAAwD,CAAA;IACxD,4EAAoD,CAAA;IACpD,4EAAoD,CAAA;IACpD,4EAAoD,CAAA;IACpD,uGAA+E,CAAA;IAC/E,kEAA0C,CAAA;IAE1C,sCAAsC;IACtC,oDAAoD;IACpD,gGAAwE,CAAA;IACxE,kGAA0E,CAAA;IAC1E,sGAA8E,CAAA;IAC9E,6GAAqF,CAAA;IACrF,iHAAyF,CAAA;AAC3F,CAAC,EArDW,oBAAoB,KAApB,oBAAoB,QAqD/B","sourcesContent":["/**\n * Performance measurement names for Sentry monitoring\n * These constants ensure consistency across the Perps feature\n * Used for direct setMeasurement() calls in controllers and services\n *\n * Naming Convention: perps.{category}.{metric_name}\n * - Uses dot notation for hierarchical grouping in Sentry\n * - Categories: websocket, connection, api, operation, screen, ui\n * - Enables easy filtering (e.g., perps.websocket.*) and dashboard aggregation\n */\nexport enum PerpsMeasurementName {\n // ===== ACTIVE SENTRY METRICS =====\n\n // WebSocket Performance Metrics (milliseconds)\n // Tracks WebSocket connection lifecycle and data flow\n PerpsWebsocketConnectionEstablishment = 'perps.websocket.connection_establishment',\n PerpsWebsocketConnectionWithPreload = 'perps.websocket.connection_with_preload',\n PerpsWebsocketFirstPositionData = 'perps.websocket.first_position_data',\n PerpsWebsocketAccountSwitchReconnection = 'perps.websocket.account_switch_reconnection',\n PerpsConnectionHealthCheck = 'perps.websocket.health_check',\n PerpsReconnectionHealthCheck = 'perps.websocket.reconnection_health_check',\n\n // Connection Lifecycle Metrics (milliseconds)\n // Tracks connection initialization and reconnection sub-stages\n PerpsProviderInit = 'perps.connection.provider_init',\n PerpsAccountStateFetch = 'perps.connection.account_state_fetch',\n PerpsSubscriptionsPreload = 'perps.connection.subscriptions_preload',\n PerpsReconnectionCleanup = 'perps.connection.cleanup',\n PerpsControllerReinit = 'perps.connection.controller_reinit',\n PerpsNewAccountFetch = 'perps.connection.new_account_fetch',\n PerpsReconnectionPreload = 'perps.connection.reconnection_preload',\n\n // API Call Metrics (milliseconds)\n // Tracks external API performance\n PerpsDataLakeApiCall = 'perps.api.data_lake_call',\n PerpsRewardsFeeDiscountApiCall = 'perps.api.rewards_fee_discount',\n PerpsRewardsPointsEstimationApiCall = 'perps.api.rewards_points_estimation',\n PerpsRewardsOrderExecutionFeeDiscountApiCall = 'perps.api.rewards_order_execution_fee_discount',\n\n // Data Operation Metrics (milliseconds)\n // Tracks data fetch operations\n PerpsGetPositionsOperation = 'perps.operation.get_positions',\n PerpsGetOpenOrdersOperation = 'perps.operation.get_open_orders',\n PerpsMarketDataPreload = 'perps.operation.market_data_preload',\n PerpsUserDataPreload = 'perps.operation.user_data_preload',\n\n // Screen Load Metrics (milliseconds)\n // Tracks full screen render performance\n PerpsWithdrawalScreenLoaded = 'perps.screen.withdrawal_loaded',\n PerpsMarketsScreenLoaded = 'perps.screen.markets_loaded',\n PerpsAssetScreenLoaded = 'perps.screen.asset_loaded',\n PerpsTradeScreenLoaded = 'perps.screen.trade_loaded',\n PerpsCloseScreenLoaded = 'perps.screen.close_loaded',\n PerpsTransactionHistoryScreenLoaded = 'perps.screen.transaction_history_loaded',\n PerpsTabLoaded = 'perps.screen.tab_loaded',\n\n // UI Component Metrics (milliseconds)\n // Tracks individual UI component render performance\n PerpsLeverageBottomSheetLoaded = 'perps.ui.leverage_bottom_sheet_loaded',\n PerpsOrderSubmissionToastLoaded = 'perps.ui.order_submission_toast_loaded',\n PerpsOrderConfirmationToastLoaded = 'perps.ui.order_confirmation_toast_loaded',\n PerpsCloseOrderSubmissionToastLoaded = 'perps.ui.close_order_submission_toast_loaded',\n PerpsCloseOrderConfirmationToastLoaded = 'perps.ui.close_order_confirmation_toast_loaded',\n}\n"]}
|