@metamask-previews/perps-controller 0.0.0-preview-e4aa1532 → 0.0.0-preview-6dfa4aeba

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 (498) hide show
  1. package/CHANGELOG.md +1 -11
  2. package/dist/PerpsController.cjs +66 -2224
  3. package/dist/PerpsController.cjs.map +1 -1
  4. package/dist/PerpsController.d.cts +79 -933
  5. package/dist/PerpsController.d.cts.map +1 -1
  6. package/dist/PerpsController.d.mts +79 -933
  7. package/dist/PerpsController.d.mts.map +1 -1
  8. package/dist/PerpsController.mjs +64 -2221
  9. package/dist/PerpsController.mjs.map +1 -1
  10. package/dist/index.cjs +1 -32
  11. package/dist/index.cjs.map +1 -1
  12. package/dist/index.d.cts +2 -6
  13. package/dist/index.d.cts.map +1 -1
  14. package/dist/index.d.mts +2 -6
  15. package/dist/index.d.mts.map +1 -1
  16. package/dist/index.mjs +1 -9
  17. package/dist/index.mjs.map +1 -1
  18. package/package.json +4 -19
  19. package/dist/__mocks__/hyperliquidMock.cjs +0 -68
  20. package/dist/__mocks__/hyperliquidMock.cjs.map +0 -1
  21. package/dist/__mocks__/hyperliquidMock.d.cts +0 -15
  22. package/dist/__mocks__/hyperliquidMock.d.cts.map +0 -1
  23. package/dist/__mocks__/hyperliquidMock.d.mts +0 -15
  24. package/dist/__mocks__/hyperliquidMock.d.mts.map +0 -1
  25. package/dist/__mocks__/hyperliquidMock.mjs +0 -65
  26. package/dist/__mocks__/hyperliquidMock.mjs.map +0 -1
  27. package/dist/__mocks__/providerMocks.cjs +0 -144
  28. package/dist/__mocks__/providerMocks.cjs.map +0 -1
  29. package/dist/__mocks__/providerMocks.d.cts +0 -44
  30. package/dist/__mocks__/providerMocks.d.cts.map +0 -1
  31. package/dist/__mocks__/providerMocks.d.mts +0 -44
  32. package/dist/__mocks__/providerMocks.d.mts.map +0 -1
  33. package/dist/__mocks__/providerMocks.mjs +0 -136
  34. package/dist/__mocks__/providerMocks.mjs.map +0 -1
  35. package/dist/__mocks__/serviceMocks.cjs +0 -187
  36. package/dist/__mocks__/serviceMocks.cjs.map +0 -1
  37. package/dist/__mocks__/serviceMocks.d.cts +0 -58
  38. package/dist/__mocks__/serviceMocks.d.cts.map +0 -1
  39. package/dist/__mocks__/serviceMocks.d.mts +0 -58
  40. package/dist/__mocks__/serviceMocks.d.mts.map +0 -1
  41. package/dist/__mocks__/serviceMocks.mjs +0 -180
  42. package/dist/__mocks__/serviceMocks.mjs.map +0 -1
  43. package/dist/aggregation/SubscriptionMultiplexer.cjs +0 -459
  44. package/dist/aggregation/SubscriptionMultiplexer.cjs.map +0 -1
  45. package/dist/aggregation/SubscriptionMultiplexer.d.cts +0 -222
  46. package/dist/aggregation/SubscriptionMultiplexer.d.cts.map +0 -1
  47. package/dist/aggregation/SubscriptionMultiplexer.d.mts +0 -222
  48. package/dist/aggregation/SubscriptionMultiplexer.d.mts.map +0 -1
  49. package/dist/aggregation/SubscriptionMultiplexer.mjs +0 -455
  50. package/dist/aggregation/SubscriptionMultiplexer.mjs.map +0 -1
  51. package/dist/aggregation/index.cjs +0 -9
  52. package/dist/aggregation/index.cjs.map +0 -1
  53. package/dist/aggregation/index.d.cts +0 -6
  54. package/dist/aggregation/index.d.cts.map +0 -1
  55. package/dist/aggregation/index.d.mts +0 -6
  56. package/dist/aggregation/index.d.mts.map +0 -1
  57. package/dist/aggregation/index.mjs +0 -5
  58. package/dist/aggregation/index.mjs.map +0 -1
  59. package/dist/constants/eventNames.cjs +0 -117
  60. package/dist/constants/eventNames.cjs.map +0 -1
  61. package/dist/constants/eventNames.d.cts +0 -106
  62. package/dist/constants/eventNames.d.cts.map +0 -1
  63. package/dist/constants/eventNames.d.mts +0 -106
  64. package/dist/constants/eventNames.d.mts.map +0 -1
  65. package/dist/constants/eventNames.mjs +0 -114
  66. package/dist/constants/eventNames.mjs.map +0 -1
  67. package/dist/constants/hyperLiquidConfig.cjs +0 -366
  68. package/dist/constants/hyperLiquidConfig.cjs.map +0 -1
  69. package/dist/constants/hyperLiquidConfig.d.cts +0 -276
  70. package/dist/constants/hyperLiquidConfig.d.cts.map +0 -1
  71. package/dist/constants/hyperLiquidConfig.d.mts +0 -276
  72. package/dist/constants/hyperLiquidConfig.d.mts.map +0 -1
  73. package/dist/constants/hyperLiquidConfig.mjs +0 -357
  74. package/dist/constants/hyperLiquidConfig.mjs.map +0 -1
  75. package/dist/constants/index.cjs +0 -23
  76. package/dist/constants/index.cjs.map +0 -1
  77. package/dist/constants/index.d.cts +0 -7
  78. package/dist/constants/index.d.cts.map +0 -1
  79. package/dist/constants/index.d.mts +0 -7
  80. package/dist/constants/index.d.mts.map +0 -1
  81. package/dist/constants/index.mjs +0 -7
  82. package/dist/constants/index.mjs.map +0 -1
  83. package/dist/constants/orderTypes.cjs +0 -31
  84. package/dist/constants/orderTypes.cjs.map +0 -1
  85. package/dist/constants/orderTypes.d.cts +0 -19
  86. package/dist/constants/orderTypes.d.cts.map +0 -1
  87. package/dist/constants/orderTypes.d.mts +0 -19
  88. package/dist/constants/orderTypes.d.mts.map +0 -1
  89. package/dist/constants/orderTypes.mjs +0 -27
  90. package/dist/constants/orderTypes.mjs.map +0 -1
  91. package/dist/constants/performanceMetrics.cjs +0 -61
  92. package/dist/constants/performanceMetrics.cjs.map +0 -1
  93. package/dist/constants/performanceMetrics.d.cts +0 -44
  94. package/dist/constants/performanceMetrics.d.cts.map +0 -1
  95. package/dist/constants/performanceMetrics.d.mts +0 -44
  96. package/dist/constants/performanceMetrics.d.mts.map +0 -1
  97. package/dist/constants/performanceMetrics.mjs +0 -58
  98. package/dist/constants/performanceMetrics.mjs.map +0 -1
  99. package/dist/constants/perpsConfig.cjs +0 -461
  100. package/dist/constants/perpsConfig.cjs.map +0 -1
  101. package/dist/constants/perpsConfig.d.cts +0 -343
  102. package/dist/constants/perpsConfig.d.cts.map +0 -1
  103. package/dist/constants/perpsConfig.d.mts +0 -343
  104. package/dist/constants/perpsConfig.d.mts.map +0 -1
  105. package/dist/constants/perpsConfig.mjs +0 -458
  106. package/dist/constants/perpsConfig.mjs.map +0 -1
  107. package/dist/constants/perpsErrorCodes.cjs +0 -79
  108. package/dist/constants/perpsErrorCodes.cjs.map +0 -1
  109. package/dist/constants/perpsErrorCodes.d.cts +0 -64
  110. package/dist/constants/perpsErrorCodes.d.cts.map +0 -1
  111. package/dist/constants/perpsErrorCodes.d.mts +0 -64
  112. package/dist/constants/perpsErrorCodes.d.mts.map +0 -1
  113. package/dist/constants/perpsErrorCodes.mjs +0 -76
  114. package/dist/constants/perpsErrorCodes.mjs.map +0 -1
  115. package/dist/platform-services/HyperLiquidClientService.cjs +0 -857
  116. package/dist/platform-services/HyperLiquidClientService.cjs.map +0 -1
  117. package/dist/platform-services/HyperLiquidClientService.d.cts +0 -263
  118. package/dist/platform-services/HyperLiquidClientService.d.cts.map +0 -1
  119. package/dist/platform-services/HyperLiquidClientService.d.mts +0 -263
  120. package/dist/platform-services/HyperLiquidClientService.d.mts.map +0 -1
  121. package/dist/platform-services/HyperLiquidClientService.mjs +0 -853
  122. package/dist/platform-services/HyperLiquidClientService.mjs.map +0 -1
  123. package/dist/platform-services/HyperLiquidSubscriptionService.cjs +0 -2170
  124. package/dist/platform-services/HyperLiquidSubscriptionService.cjs.map +0 -1
  125. package/dist/platform-services/HyperLiquidSubscriptionService.d.cts +0 -424
  126. package/dist/platform-services/HyperLiquidSubscriptionService.d.cts.map +0 -1
  127. package/dist/platform-services/HyperLiquidSubscriptionService.d.mts +0 -424
  128. package/dist/platform-services/HyperLiquidSubscriptionService.d.mts.map +0 -1
  129. package/dist/platform-services/HyperLiquidSubscriptionService.mjs +0 -2166
  130. package/dist/platform-services/HyperLiquidSubscriptionService.mjs.map +0 -1
  131. package/dist/platform-services/HyperLiquidWalletService.cjs +0 -140
  132. package/dist/platform-services/HyperLiquidWalletService.cjs.map +0 -1
  133. package/dist/platform-services/HyperLiquidWalletService.d.cts +0 -78
  134. package/dist/platform-services/HyperLiquidWalletService.d.cts.map +0 -1
  135. package/dist/platform-services/HyperLiquidWalletService.d.mts +0 -78
  136. package/dist/platform-services/HyperLiquidWalletService.d.mts.map +0 -1
  137. package/dist/platform-services/HyperLiquidWalletService.mjs +0 -136
  138. package/dist/platform-services/HyperLiquidWalletService.mjs.map +0 -1
  139. package/dist/providers/AggregatedPerpsProvider.cjs +0 -777
  140. package/dist/providers/AggregatedPerpsProvider.cjs.map +0 -1
  141. package/dist/providers/AggregatedPerpsProvider.d.cts +0 -466
  142. package/dist/providers/AggregatedPerpsProvider.d.cts.map +0 -1
  143. package/dist/providers/AggregatedPerpsProvider.d.mts +0 -466
  144. package/dist/providers/AggregatedPerpsProvider.d.mts.map +0 -1
  145. package/dist/providers/AggregatedPerpsProvider.mjs +0 -773
  146. package/dist/providers/AggregatedPerpsProvider.mjs.map +0 -1
  147. package/dist/providers/HyperLiquidProvider.cjs +0 -5172
  148. package/dist/providers/HyperLiquidProvider.cjs.map +0 -1
  149. package/dist/providers/HyperLiquidProvider.d.cts +0 -881
  150. package/dist/providers/HyperLiquidProvider.d.cts.map +0 -1
  151. package/dist/providers/HyperLiquidProvider.d.mts +0 -881
  152. package/dist/providers/HyperLiquidProvider.d.mts.map +0 -1
  153. package/dist/providers/HyperLiquidProvider.mjs +0 -5168
  154. package/dist/providers/HyperLiquidProvider.mjs.map +0 -1
  155. package/dist/providers/index.cjs +0 -11
  156. package/dist/providers/index.cjs.map +0 -1
  157. package/dist/providers/index.d.cts +0 -6
  158. package/dist/providers/index.d.cts.map +0 -1
  159. package/dist/providers/index.d.mts +0 -6
  160. package/dist/providers/index.d.mts.map +0 -1
  161. package/dist/providers/index.mjs +0 -6
  162. package/dist/providers/index.mjs.map +0 -1
  163. package/dist/routing/ProviderRouter.cjs +0 -148
  164. package/dist/routing/ProviderRouter.cjs.map +0 -1
  165. package/dist/routing/ProviderRouter.d.cts +0 -124
  166. package/dist/routing/ProviderRouter.d.cts.map +0 -1
  167. package/dist/routing/ProviderRouter.d.mts +0 -124
  168. package/dist/routing/ProviderRouter.d.mts.map +0 -1
  169. package/dist/routing/ProviderRouter.mjs +0 -144
  170. package/dist/routing/ProviderRouter.mjs.map +0 -1
  171. package/dist/routing/index.cjs +0 -9
  172. package/dist/routing/index.cjs.map +0 -1
  173. package/dist/routing/index.d.cts +0 -6
  174. package/dist/routing/index.d.cts.map +0 -1
  175. package/dist/routing/index.d.mts +0 -6
  176. package/dist/routing/index.d.mts.map +0 -1
  177. package/dist/routing/index.mjs +0 -5
  178. package/dist/routing/index.mjs.map +0 -1
  179. package/dist/selectors.cjs +0 -161
  180. package/dist/selectors.cjs.map +0 -1
  181. package/dist/selectors.d.cts +0 -345
  182. package/dist/selectors.d.cts.map +0 -1
  183. package/dist/selectors.d.mts +0 -345
  184. package/dist/selectors.d.mts.map +0 -1
  185. package/dist/selectors.mjs +0 -153
  186. package/dist/selectors.mjs.map +0 -1
  187. package/dist/services/AccountService.cjs +0 -313
  188. package/dist/services/AccountService.cjs.map +0 -1
  189. package/dist/services/AccountService.d.cts +0 -53
  190. package/dist/services/AccountService.d.cts.map +0 -1
  191. package/dist/services/AccountService.d.mts +0 -53
  192. package/dist/services/AccountService.d.mts.map +0 -1
  193. package/dist/services/AccountService.mjs +0 -309
  194. package/dist/services/AccountService.mjs.map +0 -1
  195. package/dist/services/DataLakeService.cjs +0 -219
  196. package/dist/services/DataLakeService.cjs.map +0 -1
  197. package/dist/services/DataLakeService.d.cts +0 -49
  198. package/dist/services/DataLakeService.d.cts.map +0 -1
  199. package/dist/services/DataLakeService.d.mts +0 -49
  200. package/dist/services/DataLakeService.d.mts.map +0 -1
  201. package/dist/services/DataLakeService.mjs +0 -215
  202. package/dist/services/DataLakeService.mjs.map +0 -1
  203. package/dist/services/DepositService.cjs +0 -96
  204. package/dist/services/DepositService.cjs.map +0 -1
  205. package/dist/services/DepositService.d.cts +0 -37
  206. package/dist/services/DepositService.d.cts.map +0 -1
  207. package/dist/services/DepositService.d.mts +0 -37
  208. package/dist/services/DepositService.d.mts.map +0 -1
  209. package/dist/services/DepositService.mjs +0 -92
  210. package/dist/services/DepositService.mjs.map +0 -1
  211. package/dist/services/EligibilityService.cjs +0 -156
  212. package/dist/services/EligibilityService.cjs.map +0 -1
  213. package/dist/services/EligibilityService.d.cts +0 -48
  214. package/dist/services/EligibilityService.d.cts.map +0 -1
  215. package/dist/services/EligibilityService.d.mts +0 -48
  216. package/dist/services/EligibilityService.d.mts.map +0 -1
  217. package/dist/services/EligibilityService.mjs +0 -152
  218. package/dist/services/EligibilityService.mjs.map +0 -1
  219. package/dist/services/FeatureFlagConfigurationService.cjs +0 -258
  220. package/dist/services/FeatureFlagConfigurationService.cjs.map +0 -1
  221. package/dist/services/FeatureFlagConfigurationService.d.cts +0 -100
  222. package/dist/services/FeatureFlagConfigurationService.d.cts.map +0 -1
  223. package/dist/services/FeatureFlagConfigurationService.d.mts +0 -100
  224. package/dist/services/FeatureFlagConfigurationService.d.mts.map +0 -1
  225. package/dist/services/FeatureFlagConfigurationService.mjs +0 -254
  226. package/dist/services/FeatureFlagConfigurationService.mjs.map +0 -1
  227. package/dist/services/MarketDataService.cjs +0 -875
  228. package/dist/services/MarketDataService.cjs.map +0 -1
  229. package/dist/services/MarketDataService.d.cts +0 -289
  230. package/dist/services/MarketDataService.d.cts.map +0 -1
  231. package/dist/services/MarketDataService.d.mts +0 -289
  232. package/dist/services/MarketDataService.d.mts.map +0 -1
  233. package/dist/services/MarketDataService.mjs +0 -871
  234. package/dist/services/MarketDataService.mjs.map +0 -1
  235. package/dist/services/RewardsIntegrationService.cjs +0 -94
  236. package/dist/services/RewardsIntegrationService.cjs.map +0 -1
  237. package/dist/services/RewardsIntegrationService.d.cts +0 -30
  238. package/dist/services/RewardsIntegrationService.d.cts.map +0 -1
  239. package/dist/services/RewardsIntegrationService.d.mts +0 -30
  240. package/dist/services/RewardsIntegrationService.d.mts.map +0 -1
  241. package/dist/services/RewardsIntegrationService.mjs +0 -90
  242. package/dist/services/RewardsIntegrationService.mjs.map +0 -1
  243. package/dist/services/ServiceContext.cjs +0 -3
  244. package/dist/services/ServiceContext.cjs.map +0 -1
  245. package/dist/services/ServiceContext.d.cts +0 -110
  246. package/dist/services/ServiceContext.d.cts.map +0 -1
  247. package/dist/services/ServiceContext.d.mts +0 -110
  248. package/dist/services/ServiceContext.d.mts.map +0 -1
  249. package/dist/services/ServiceContext.mjs +0 -2
  250. package/dist/services/ServiceContext.mjs.map +0 -1
  251. package/dist/services/TradingService.cjs +0 -1481
  252. package/dist/services/TradingService.cjs.map +0 -1
  253. package/dist/services/TradingService.d.cts +0 -308
  254. package/dist/services/TradingService.d.cts.map +0 -1
  255. package/dist/services/TradingService.d.mts +0 -308
  256. package/dist/services/TradingService.d.mts.map +0 -1
  257. package/dist/services/TradingService.mjs +0 -1477
  258. package/dist/services/TradingService.mjs.map +0 -1
  259. package/dist/services/index.cjs +0 -26
  260. package/dist/services/index.cjs.map +0 -1
  261. package/dist/services/index.d.cts +0 -11
  262. package/dist/services/index.d.cts.map +0 -1
  263. package/dist/services/index.d.mts +0 -11
  264. package/dist/services/index.d.mts.map +0 -1
  265. package/dist/services/index.mjs +0 -10
  266. package/dist/services/index.mjs.map +0 -1
  267. package/dist/services/utils.cjs +0 -16
  268. package/dist/services/utils.cjs.map +0 -1
  269. package/dist/services/utils.d.cts +0 -8
  270. package/dist/services/utils.d.cts.map +0 -1
  271. package/dist/services/utils.d.mts +0 -8
  272. package/dist/services/utils.d.mts.map +0 -1
  273. package/dist/services/utils.mjs +0 -12
  274. package/dist/services/utils.mjs.map +0 -1
  275. package/dist/types/chart.cjs +0 -42
  276. package/dist/types/chart.cjs.map +0 -1
  277. package/dist/types/chart.d.cts +0 -62
  278. package/dist/types/chart.d.cts.map +0 -1
  279. package/dist/types/chart.d.mts +0 -62
  280. package/dist/types/chart.d.mts.map +0 -1
  281. package/dist/types/chart.mjs +0 -39
  282. package/dist/types/chart.mjs.map +0 -1
  283. package/dist/types/hyperliquid-types.cjs +0 -3
  284. package/dist/types/hyperliquid-types.cjs.map +0 -1
  285. package/dist/types/hyperliquid-types.d.cts +0 -52
  286. package/dist/types/hyperliquid-types.d.cts.map +0 -1
  287. package/dist/types/hyperliquid-types.d.mts +0 -52
  288. package/dist/types/hyperliquid-types.d.mts.map +0 -1
  289. package/dist/types/hyperliquid-types.mjs +0 -2
  290. package/dist/types/hyperliquid-types.mjs.map +0 -1
  291. package/dist/types/index.cjs +0 -96
  292. package/dist/types/index.cjs.map +0 -1
  293. package/dist/types/index.d.cts +0 -1153
  294. package/dist/types/index.d.cts.map +0 -1
  295. package/dist/types/index.d.mts +0 -1153
  296. package/dist/types/index.d.mts.map +0 -1
  297. package/dist/types/index.mjs +0 -79
  298. package/dist/types/index.mjs.map +0 -1
  299. package/dist/types/transactionTypes.cjs +0 -28
  300. package/dist/types/transactionTypes.cjs.map +0 -1
  301. package/dist/types/transactionTypes.d.cts +0 -64
  302. package/dist/types/transactionTypes.d.cts.map +0 -1
  303. package/dist/types/transactionTypes.d.mts +0 -64
  304. package/dist/types/transactionTypes.d.mts.map +0 -1
  305. package/dist/types/transactionTypes.mjs +0 -23
  306. package/dist/types/transactionTypes.mjs.map +0 -1
  307. package/dist/utils/accountUtils.cjs +0 -65
  308. package/dist/utils/accountUtils.cjs.map +0 -1
  309. package/dist/utils/accountUtils.d.cts +0 -26
  310. package/dist/utils/accountUtils.d.cts.map +0 -1
  311. package/dist/utils/accountUtils.d.mts +0 -26
  312. package/dist/utils/accountUtils.d.mts.map +0 -1
  313. package/dist/utils/accountUtils.mjs +0 -61
  314. package/dist/utils/accountUtils.mjs.map +0 -1
  315. package/dist/utils/amountConversion.cjs +0 -61
  316. package/dist/utils/amountConversion.cjs.map +0 -1
  317. package/dist/utils/amountConversion.d.cts +0 -16
  318. package/dist/utils/amountConversion.d.cts.map +0 -1
  319. package/dist/utils/amountConversion.d.mts +0 -16
  320. package/dist/utils/amountConversion.d.mts.map +0 -1
  321. package/dist/utils/amountConversion.mjs +0 -54
  322. package/dist/utils/amountConversion.mjs.map +0 -1
  323. package/dist/utils/chartUtils.cjs +0 -98
  324. package/dist/utils/chartUtils.cjs.map +0 -1
  325. package/dist/utils/chartUtils.d.cts +0 -14
  326. package/dist/utils/chartUtils.d.cts.map +0 -1
  327. package/dist/utils/chartUtils.d.mts +0 -14
  328. package/dist/utils/chartUtils.d.mts.map +0 -1
  329. package/dist/utils/chartUtils.mjs +0 -94
  330. package/dist/utils/chartUtils.mjs.map +0 -1
  331. package/dist/utils/errorUtils.cjs +0 -22
  332. package/dist/utils/errorUtils.cjs.map +0 -1
  333. package/dist/utils/errorUtils.d.cts +0 -13
  334. package/dist/utils/errorUtils.d.cts.map +0 -1
  335. package/dist/utils/errorUtils.d.mts +0 -13
  336. package/dist/utils/errorUtils.d.mts.map +0 -1
  337. package/dist/utils/errorUtils.mjs +0 -18
  338. package/dist/utils/errorUtils.mjs.map +0 -1
  339. package/dist/utils/formatUtils.cjs +0 -987
  340. package/dist/utils/formatUtils.cjs.map +0 -1
  341. package/dist/utils/formatUtils.d.cts +0 -387
  342. package/dist/utils/formatUtils.d.cts.map +0 -1
  343. package/dist/utils/formatUtils.d.mts +0 -387
  344. package/dist/utils/formatUtils.d.mts.map +0 -1
  345. package/dist/utils/formatUtils.mjs +0 -966
  346. package/dist/utils/formatUtils.mjs.map +0 -1
  347. package/dist/utils/hyperLiquidAdapter.cjs +0 -454
  348. package/dist/utils/hyperLiquidAdapter.cjs.map +0 -1
  349. package/dist/utils/hyperLiquidAdapter.d.cts +0 -158
  350. package/dist/utils/hyperLiquidAdapter.d.cts.map +0 -1
  351. package/dist/utils/hyperLiquidAdapter.d.mts +0 -158
  352. package/dist/utils/hyperLiquidAdapter.d.mts.map +0 -1
  353. package/dist/utils/hyperLiquidAdapter.mjs +0 -439
  354. package/dist/utils/hyperLiquidAdapter.mjs.map +0 -1
  355. package/dist/utils/hyperLiquidOrderBookProcessor.cjs +0 -89
  356. package/dist/utils/hyperLiquidOrderBookProcessor.cjs.map +0 -1
  357. package/dist/utils/hyperLiquidOrderBookProcessor.d.cts +0 -58
  358. package/dist/utils/hyperLiquidOrderBookProcessor.d.cts.map +0 -1
  359. package/dist/utils/hyperLiquidOrderBookProcessor.d.mts +0 -58
  360. package/dist/utils/hyperLiquidOrderBookProcessor.d.mts.map +0 -1
  361. package/dist/utils/hyperLiquidOrderBookProcessor.mjs +0 -84
  362. package/dist/utils/hyperLiquidOrderBookProcessor.mjs.map +0 -1
  363. package/dist/utils/hyperLiquidValidation.cjs +0 -426
  364. package/dist/utils/hyperLiquidValidation.cjs.map +0 -1
  365. package/dist/utils/hyperLiquidValidation.d.cts +0 -143
  366. package/dist/utils/hyperLiquidValidation.d.cts.map +0 -1
  367. package/dist/utils/hyperLiquidValidation.d.mts +0 -143
  368. package/dist/utils/hyperLiquidValidation.d.mts.map +0 -1
  369. package/dist/utils/hyperLiquidValidation.mjs +0 -413
  370. package/dist/utils/hyperLiquidValidation.mjs.map +0 -1
  371. package/dist/utils/idUtils.cjs +0 -50
  372. package/dist/utils/idUtils.cjs.map +0 -1
  373. package/dist/utils/idUtils.d.cts +0 -38
  374. package/dist/utils/idUtils.d.cts.map +0 -1
  375. package/dist/utils/idUtils.d.mts +0 -38
  376. package/dist/utils/idUtils.d.mts.map +0 -1
  377. package/dist/utils/idUtils.mjs +0 -42
  378. package/dist/utils/idUtils.mjs.map +0 -1
  379. package/dist/utils/marginUtils.cjs +0 -137
  380. package/dist/utils/marginUtils.cjs.map +0 -1
  381. package/dist/utils/marginUtils.d.cts +0 -64
  382. package/dist/utils/marginUtils.d.cts.map +0 -1
  383. package/dist/utils/marginUtils.d.mts +0 -64
  384. package/dist/utils/marginUtils.d.mts.map +0 -1
  385. package/dist/utils/marginUtils.mjs +0 -131
  386. package/dist/utils/marginUtils.mjs.map +0 -1
  387. package/dist/utils/marketDataTransform.cjs +0 -227
  388. package/dist/utils/marketDataTransform.cjs.map +0 -1
  389. package/dist/utils/marketDataTransform.d.cts +0 -45
  390. package/dist/utils/marketDataTransform.d.cts.map +0 -1
  391. package/dist/utils/marketDataTransform.d.mts +0 -45
  392. package/dist/utils/marketDataTransform.d.mts.map +0 -1
  393. package/dist/utils/marketDataTransform.mjs +0 -220
  394. package/dist/utils/marketDataTransform.mjs.map +0 -1
  395. package/dist/utils/marketUtils.cjs +0 -420
  396. package/dist/utils/marketUtils.cjs.map +0 -1
  397. package/dist/utils/marketUtils.d.cts +0 -227
  398. package/dist/utils/marketUtils.d.cts.map +0 -1
  399. package/dist/utils/marketUtils.d.mts +0 -227
  400. package/dist/utils/marketUtils.d.mts.map +0 -1
  401. package/dist/utils/marketUtils.mjs +0 -404
  402. package/dist/utils/marketUtils.mjs.map +0 -1
  403. package/dist/utils/orderBookGrouping.cjs +0 -151
  404. package/dist/utils/orderBookGrouping.cjs.map +0 -1
  405. package/dist/utils/orderBookGrouping.d.cts +0 -76
  406. package/dist/utils/orderBookGrouping.d.cts.map +0 -1
  407. package/dist/utils/orderBookGrouping.d.mts +0 -76
  408. package/dist/utils/orderBookGrouping.d.mts.map +0 -1
  409. package/dist/utils/orderBookGrouping.mjs +0 -143
  410. package/dist/utils/orderBookGrouping.mjs.map +0 -1
  411. package/dist/utils/orderCalculations.cjs +0 -283
  412. package/dist/utils/orderCalculations.cjs.map +0 -1
  413. package/dist/utils/orderCalculations.d.cts +0 -107
  414. package/dist/utils/orderCalculations.d.cts.map +0 -1
  415. package/dist/utils/orderCalculations.d.mts +0 -107
  416. package/dist/utils/orderCalculations.d.mts.map +0 -1
  417. package/dist/utils/orderCalculations.mjs +0 -274
  418. package/dist/utils/orderCalculations.mjs.map +0 -1
  419. package/dist/utils/orderUtils.cjs +0 -159
  420. package/dist/utils/orderUtils.cjs.map +0 -1
  421. package/dist/utils/orderUtils.d.cts +0 -66
  422. package/dist/utils/orderUtils.d.cts.map +0 -1
  423. package/dist/utils/orderUtils.d.mts +0 -66
  424. package/dist/utils/orderUtils.d.mts.map +0 -1
  425. package/dist/utils/orderUtils.mjs +0 -151
  426. package/dist/utils/orderUtils.mjs.map +0 -1
  427. package/dist/utils/pnlCalculations.cjs +0 -107
  428. package/dist/utils/pnlCalculations.cjs.map +0 -1
  429. package/dist/utils/pnlCalculations.d.cts +0 -79
  430. package/dist/utils/pnlCalculations.d.cts.map +0 -1
  431. package/dist/utils/pnlCalculations.d.mts +0 -79
  432. package/dist/utils/pnlCalculations.d.mts.map +0 -1
  433. package/dist/utils/pnlCalculations.mjs +0 -97
  434. package/dist/utils/pnlCalculations.mjs.map +0 -1
  435. package/dist/utils/positionCalculations.cjs +0 -176
  436. package/dist/utils/positionCalculations.cjs.map +0 -1
  437. package/dist/utils/positionCalculations.d.cts +0 -85
  438. package/dist/utils/positionCalculations.d.cts.map +0 -1
  439. package/dist/utils/positionCalculations.d.mts +0 -85
  440. package/dist/utils/positionCalculations.d.mts.map +0 -1
  441. package/dist/utils/positionCalculations.mjs +0 -165
  442. package/dist/utils/positionCalculations.mjs.map +0 -1
  443. package/dist/utils/sortMarkets.cjs +0 -88
  444. package/dist/utils/sortMarkets.cjs.map +0 -1
  445. package/dist/utils/sortMarkets.d.cts +0 -21
  446. package/dist/utils/sortMarkets.d.cts.map +0 -1
  447. package/dist/utils/sortMarkets.d.mts +0 -21
  448. package/dist/utils/sortMarkets.d.mts.map +0 -1
  449. package/dist/utils/sortMarkets.mjs +0 -84
  450. package/dist/utils/sortMarkets.mjs.map +0 -1
  451. package/dist/utils/standaloneInfoClient.cjs +0 -34
  452. package/dist/utils/standaloneInfoClient.cjs.map +0 -1
  453. package/dist/utils/standaloneInfoClient.d.cts +0 -31
  454. package/dist/utils/standaloneInfoClient.d.cts.map +0 -1
  455. package/dist/utils/standaloneInfoClient.d.mts +0 -31
  456. package/dist/utils/standaloneInfoClient.d.mts.map +0 -1
  457. package/dist/utils/standaloneInfoClient.mjs +0 -30
  458. package/dist/utils/standaloneInfoClient.mjs.map +0 -1
  459. package/dist/utils/stringParseUtils.cjs +0 -49
  460. package/dist/utils/stringParseUtils.cjs.map +0 -1
  461. package/dist/utils/stringParseUtils.d.cts +0 -35
  462. package/dist/utils/stringParseUtils.d.cts.map +0 -1
  463. package/dist/utils/stringParseUtils.d.mts +0 -35
  464. package/dist/utils/stringParseUtils.d.mts.map +0 -1
  465. package/dist/utils/stringParseUtils.mjs +0 -44
  466. package/dist/utils/stringParseUtils.mjs.map +0 -1
  467. package/dist/utils/time.cjs +0 -37
  468. package/dist/utils/time.cjs.map +0 -1
  469. package/dist/utils/time.d.cts +0 -17
  470. package/dist/utils/time.d.cts.map +0 -1
  471. package/dist/utils/time.d.mts +0 -17
  472. package/dist/utils/time.d.mts.map +0 -1
  473. package/dist/utils/time.mjs +0 -33
  474. package/dist/utils/time.mjs.map +0 -1
  475. package/dist/utils/tpslValidation.cjs +0 -505
  476. package/dist/utils/tpslValidation.cjs.map +0 -1
  477. package/dist/utils/tpslValidation.d.cts +0 -182
  478. package/dist/utils/tpslValidation.d.cts.map +0 -1
  479. package/dist/utils/tpslValidation.d.mts +0 -182
  480. package/dist/utils/tpslValidation.d.mts.map +0 -1
  481. package/dist/utils/tpslValidation.mjs +0 -482
  482. package/dist/utils/tpslValidation.mjs.map +0 -1
  483. package/dist/utils/transactionUtils.cjs +0 -36
  484. package/dist/utils/transactionUtils.cjs.map +0 -1
  485. package/dist/utils/transactionUtils.d.cts +0 -17
  486. package/dist/utils/transactionUtils.d.cts.map +0 -1
  487. package/dist/utils/transactionUtils.d.mts +0 -17
  488. package/dist/utils/transactionUtils.d.mts.map +0 -1
  489. package/dist/utils/transactionUtils.mjs +0 -32
  490. package/dist/utils/transactionUtils.mjs.map +0 -1
  491. package/dist/utils/wait.cjs +0 -12
  492. package/dist/utils/wait.cjs.map +0 -1
  493. package/dist/utils/wait.d.cts +0 -8
  494. package/dist/utils/wait.d.cts.map +0 -1
  495. package/dist/utils/wait.d.mts +0 -8
  496. package/dist/utils/wait.d.mts.map +0 -1
  497. package/dist/utils/wait.mjs +0 -8
  498. package/dist/utils/wait.mjs.map +0 -1
@@ -1,875 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.MarketDataService = void 0;
4
- /* eslint-disable id-denylist, no-restricted-syntax, @typescript-eslint/prefer-nullish-coalescing */
5
- // TODO: Fix ESLint errors in this file - tracked for Phase 5 cleanup
6
- const uuid_1 = require("uuid");
7
- const performanceMetrics_1 = require("../constants/performanceMetrics.cjs");
8
- const perpsErrorCodes_1 = require("../constants/perpsErrorCodes.cjs");
9
- // Import trace names and operations from types
10
- const TraceNames = {
11
- PlaceOrder: 'Perps Place Order',
12
- EditOrder: 'Perps Edit Order',
13
- CancelOrder: 'Perps Cancel Order',
14
- ClosePosition: 'Perps Close Position',
15
- UpdateTpsl: 'Perps Update TP/SL',
16
- UpdateMargin: 'Perps Update Margin',
17
- FlipPosition: 'Perps Flip Position',
18
- Withdraw: 'Perps Withdraw',
19
- Deposit: 'Perps Deposit',
20
- GetPositions: 'Perps Get Positions',
21
- GetAccountState: 'Perps Get Account State',
22
- GetMarkets: 'Perps Get Markets',
23
- OrderFillsFetch: 'Perps Order Fills Fetch',
24
- OrdersFetch: 'Perps Orders Fetch',
25
- FundingFetch: 'Perps Funding Fetch',
26
- GetHistoricalPortfolio: 'Perps Get Historical Portfolio',
27
- FetchHistoricalCandles: 'Perps Fetch Historical Candles',
28
- DataLakeReport: 'Perps Data Lake Report',
29
- WebsocketConnected: 'Perps WebSocket Connected',
30
- WebsocketDisconnected: 'Perps WebSocket Disconnected',
31
- WebsocketFirstPositions: 'Perps WebSocket First Positions',
32
- WebsocketFirstOrders: 'Perps WebSocket First Orders',
33
- WebsocketFirstAccount: 'Perps WebSocket First Account',
34
- RewardsApiCall: 'Perps Rewards API Call',
35
- ConnectionEstablishment: 'Perps Connection Establishment',
36
- AccountSwitchReconnection: 'Perps Account Switch Reconnection',
37
- };
38
- const TraceOperations = {
39
- Operation: 'perps.operation',
40
- OrderSubmission: 'perps.order_submission',
41
- PositionManagement: 'perps.position_management',
42
- MarketData: 'perps.market_data',
43
- };
44
- /**
45
- * MarketDataService
46
- *
47
- * Handles all read-only data-fetching operations for the Perps controller.
48
- * This service is stateless and delegates to the provider.
49
- * The controller is responsible for tracing and state management.
50
- *
51
- * Instance-based service with constructor injection of platform dependencies.
52
- */
53
- class MarketDataService {
54
- /**
55
- * Create a new MarketDataService instance.
56
- *
57
- * @param deps - Platform dependencies for logging, metrics, etc.
58
- */
59
- constructor(deps) {
60
- this.deps = deps;
61
- }
62
- /**
63
- * Get current positions.
64
- * Handles full orchestration: tracing, error logging, state management, and provider delegation.
65
- *
66
- * @param options - Options for getting positions
67
- * @param options.provider - The perps provider
68
- * @param options.params - Optional parameters for the request
69
- * @param options.context - Service context for tracing and state management
70
- * @returns Array of positions
71
- */
72
- async getPositions(options) {
73
- const { provider, params, context } = options;
74
- const traceId = (0, uuid_1.v4)();
75
- let traceData;
76
- try {
77
- this.deps.tracer.trace({
78
- name: TraceNames.GetPositions,
79
- id: traceId,
80
- op: TraceOperations.Operation,
81
- tags: {
82
- provider: context.tracingContext.provider,
83
- isTestnet: String(context.tracingContext.isTestnet),
84
- },
85
- });
86
- const positions = await provider.getPositions(params);
87
- // Update state on success (if stateManager is provided)
88
- if (context.stateManager) {
89
- context.stateManager.update((state) => {
90
- state.lastUpdateTimestamp = Date.now();
91
- state.lastError = null;
92
- });
93
- }
94
- traceData = { success: true };
95
- return positions;
96
- }
97
- catch (error) {
98
- const errorMessage = error instanceof Error
99
- ? error.message
100
- : perpsErrorCodes_1.PERPS_ERROR_CODES.POSITIONS_FAILED;
101
- // Update error state (if stateManager is provided)
102
- if (context.stateManager) {
103
- context.stateManager.update((state) => {
104
- state.lastError = errorMessage;
105
- state.lastUpdateTimestamp = Date.now();
106
- });
107
- }
108
- traceData = {
109
- success: false,
110
- error: errorMessage,
111
- };
112
- throw error;
113
- }
114
- finally {
115
- this.deps.tracer.endTrace({
116
- name: TraceNames.GetPositions,
117
- id: traceId,
118
- data: traceData,
119
- });
120
- }
121
- }
122
- /**
123
- * Get order fills for a specific user or order.
124
- * Handles full orchestration: tracing, error logging, and provider delegation.
125
- *
126
- * @param options - Options for getting order fills
127
- * @param options.provider - The perps provider
128
- * @param options.params - Optional parameters for the request
129
- * @param options.context - Service context for tracing
130
- * @returns Array of order fills
131
- */
132
- async getOrderFills(options) {
133
- const { provider, params, context } = options;
134
- const traceId = (0, uuid_1.v4)();
135
- let traceData;
136
- try {
137
- this.deps.tracer.trace({
138
- name: TraceNames.OrderFillsFetch,
139
- id: traceId,
140
- op: TraceOperations.Operation,
141
- tags: {
142
- provider: context.tracingContext.provider,
143
- isTestnet: String(context.tracingContext.isTestnet),
144
- },
145
- });
146
- const result = await provider.getOrderFills(params);
147
- traceData = { success: true };
148
- return result;
149
- }
150
- catch (err) {
151
- const error = err instanceof Error ? err : new Error(String(err));
152
- this.deps.logger.error(error, {
153
- tags: {
154
- feature: 'perps',
155
- provider: context.tracingContext.provider,
156
- network: context.tracingContext.isTestnet ? 'testnet' : 'mainnet',
157
- },
158
- context: {
159
- name: context.errorContext.controller,
160
- data: {
161
- method: context.errorContext.method,
162
- params,
163
- },
164
- },
165
- });
166
- traceData = {
167
- success: false,
168
- error: error.message,
169
- };
170
- throw err;
171
- }
172
- finally {
173
- this.deps.tracer.endTrace({
174
- name: TraceNames.OrderFillsFetch,
175
- id: traceId,
176
- data: traceData,
177
- });
178
- }
179
- }
180
- /**
181
- * Get historical user orders (order lifecycle).
182
- * Handles full orchestration: tracing, error logging, and provider delegation.
183
- *
184
- * @param options - Options for getting orders
185
- * @param options.provider - The perps provider
186
- * @param options.params - Optional parameters for the request
187
- * @param options.context - Service context for tracing
188
- * @returns Array of orders
189
- */
190
- async getOrders(options) {
191
- const { provider, params, context } = options;
192
- const traceId = (0, uuid_1.v4)();
193
- let traceData;
194
- try {
195
- this.deps.tracer.trace({
196
- name: TraceNames.OrdersFetch,
197
- id: traceId,
198
- op: TraceOperations.Operation,
199
- tags: {
200
- provider: context.tracingContext.provider,
201
- isTestnet: String(context.tracingContext.isTestnet),
202
- },
203
- });
204
- const result = await provider.getOrders(params);
205
- traceData = { success: true };
206
- return result;
207
- }
208
- catch (err) {
209
- const error = err instanceof Error ? err : new Error(String(err));
210
- this.deps.logger.error(error, {
211
- tags: {
212
- feature: 'perps',
213
- provider: context.tracingContext.provider,
214
- network: context.tracingContext.isTestnet ? 'testnet' : 'mainnet',
215
- },
216
- context: {
217
- name: context.errorContext.controller,
218
- data: {
219
- method: context.errorContext.method,
220
- params,
221
- },
222
- },
223
- });
224
- traceData = {
225
- success: false,
226
- error: error.message,
227
- };
228
- throw err;
229
- }
230
- finally {
231
- this.deps.tracer.endTrace({
232
- name: TraceNames.OrdersFetch,
233
- id: traceId,
234
- data: traceData,
235
- });
236
- }
237
- }
238
- /**
239
- * Get current open orders.
240
- * Handles full orchestration: tracing, error logging, performance measurement, and provider delegation.
241
- *
242
- * @param options - Options for getting open orders
243
- * @param options.provider - The perps provider
244
- * @param options.params - Optional parameters for the request
245
- * @param options.context - Service context for tracing
246
- * @returns Array of open orders
247
- */
248
- async getOpenOrders(options) {
249
- const { provider, params, context } = options;
250
- const traceId = (0, uuid_1.v4)();
251
- const startTime = this.deps.performance.now();
252
- let traceData;
253
- try {
254
- this.deps.tracer.trace({
255
- name: TraceNames.OrdersFetch,
256
- id: traceId,
257
- op: TraceOperations.Operation,
258
- tags: {
259
- provider: context.tracingContext.provider,
260
- isTestnet: String(context.tracingContext.isTestnet),
261
- },
262
- });
263
- const result = await provider.getOpenOrders(params);
264
- const completionDuration = this.deps.performance.now() - startTime;
265
- this.deps.tracer.setMeasurement(performanceMetrics_1.PerpsMeasurementName.PerpsGetOpenOrdersOperation, completionDuration, 'millisecond');
266
- traceData = { success: true };
267
- return result;
268
- }
269
- catch (err) {
270
- const error = err instanceof Error ? err : new Error(String(err));
271
- this.deps.logger.error(error, {
272
- tags: {
273
- feature: 'perps',
274
- provider: context.tracingContext.provider,
275
- network: context.tracingContext.isTestnet ? 'testnet' : 'mainnet',
276
- },
277
- context: {
278
- name: context.errorContext.controller,
279
- data: {
280
- method: context.errorContext.method,
281
- params,
282
- },
283
- },
284
- });
285
- traceData = {
286
- success: false,
287
- error: error.message,
288
- };
289
- throw err;
290
- }
291
- finally {
292
- this.deps.tracer.endTrace({
293
- name: TraceNames.OrdersFetch,
294
- id: traceId,
295
- data: traceData,
296
- });
297
- }
298
- }
299
- /**
300
- * Get funding rates.
301
- * Handles full orchestration: tracing, error logging, and provider delegation.
302
- *
303
- * @param options - Options for getting funding
304
- * @param options.provider - The perps provider
305
- * @param options.params - Optional parameters for the request
306
- * @param options.context - Service context for tracing
307
- * @returns Array of funding entries
308
- */
309
- async getFunding(options) {
310
- const { provider, params, context } = options;
311
- const traceId = (0, uuid_1.v4)();
312
- let traceData;
313
- try {
314
- this.deps.tracer.trace({
315
- name: TraceNames.FundingFetch,
316
- id: traceId,
317
- op: TraceOperations.Operation,
318
- tags: {
319
- provider: context.tracingContext.provider,
320
- isTestnet: String(context.tracingContext.isTestnet),
321
- },
322
- });
323
- const result = await provider.getFunding(params);
324
- traceData = { success: true };
325
- return result;
326
- }
327
- catch (err) {
328
- const error = err instanceof Error ? err : new Error(String(err));
329
- this.deps.logger.error(error, {
330
- tags: {
331
- feature: 'perps',
332
- provider: context.tracingContext.provider,
333
- network: context.tracingContext.isTestnet ? 'testnet' : 'mainnet',
334
- },
335
- context: {
336
- name: context.errorContext.controller,
337
- data: {
338
- method: context.errorContext.method,
339
- params,
340
- },
341
- },
342
- });
343
- traceData = {
344
- success: false,
345
- error: error.message,
346
- };
347
- throw err;
348
- }
349
- finally {
350
- this.deps.tracer.endTrace({
351
- name: TraceNames.FundingFetch,
352
- id: traceId,
353
- data: traceData,
354
- });
355
- }
356
- }
357
- /**
358
- * Get account state.
359
- * Handles full orchestration: tracing, error logging, state management, and provider delegation.
360
- *
361
- * @param options - Options for getting account state
362
- * @param options.provider - The perps provider
363
- * @param options.params - Optional parameters for the request
364
- * @param options.context - Service context for tracing and state management
365
- * @returns Account state
366
- */
367
- async getAccountState(options) {
368
- const { provider, params, context } = options;
369
- const traceId = (0, uuid_1.v4)();
370
- let traceData;
371
- try {
372
- this.deps.tracer.trace({
373
- name: TraceNames.GetAccountState,
374
- id: traceId,
375
- op: TraceOperations.Operation,
376
- tags: {
377
- provider: context.tracingContext.provider,
378
- isTestnet: String(context.tracingContext.isTestnet),
379
- source: params?.source || 'unknown',
380
- },
381
- });
382
- const accountState = await provider.getAccountState(params);
383
- // Safety check for accountState
384
- if (!accountState) {
385
- const error = new Error('Failed to get account state: received null/undefined response');
386
- this.deps.logger.error(error, {
387
- tags: {
388
- feature: 'perps',
389
- provider: context.tracingContext.provider,
390
- network: context.tracingContext.isTestnet ? 'testnet' : 'mainnet',
391
- },
392
- context: {
393
- name: context.errorContext.controller,
394
- data: {
395
- method: context.errorContext.method,
396
- operation: 'nullAccountStateCheck',
397
- },
398
- },
399
- });
400
- throw error;
401
- }
402
- // Update state on success (if stateManager is provided)
403
- if (context.stateManager) {
404
- context.stateManager.update((state) => {
405
- state.accountState = accountState;
406
- state.lastUpdateTimestamp = Date.now();
407
- state.lastError = null;
408
- });
409
- }
410
- traceData = { success: true };
411
- return accountState;
412
- }
413
- catch (error) {
414
- const errorMessage = error instanceof Error ? error.message : 'Account state fetch failed';
415
- // Update error state (if stateManager is provided)
416
- if (context.stateManager) {
417
- context.stateManager.update((state) => {
418
- state.lastError = errorMessage;
419
- state.lastUpdateTimestamp = Date.now();
420
- });
421
- }
422
- traceData = {
423
- success: false,
424
- error: errorMessage,
425
- };
426
- throw error;
427
- }
428
- finally {
429
- this.deps.tracer.endTrace({
430
- name: TraceNames.GetAccountState,
431
- id: traceId,
432
- data: traceData,
433
- });
434
- }
435
- }
436
- /**
437
- * Get historical portfolio data.
438
- * Handles full orchestration: tracing, error logging, state management, and provider delegation.
439
- *
440
- * @param options - Options for getting historical portfolio
441
- * @param options.provider - The perps provider
442
- * @param options.params - Optional parameters for the request
443
- * @param options.context - Service context for tracing and state management
444
- * @returns Historical portfolio result
445
- */
446
- async getHistoricalPortfolio(options) {
447
- const { provider, params, context } = options;
448
- const traceId = (0, uuid_1.v4)();
449
- let traceData;
450
- try {
451
- this.deps.tracer.trace({
452
- name: TraceNames.GetHistoricalPortfolio,
453
- id: traceId,
454
- op: TraceOperations.Operation,
455
- tags: {
456
- provider: context.tracingContext.provider,
457
- isTestnet: String(context.tracingContext.isTestnet),
458
- },
459
- });
460
- if (!provider.getHistoricalPortfolio) {
461
- throw new Error('Historical portfolio not supported by provider');
462
- }
463
- const result = await provider.getHistoricalPortfolio(params);
464
- traceData = { success: true };
465
- return result;
466
- }
467
- catch (err) {
468
- const errorMessage = err instanceof Error
469
- ? err.message
470
- : 'Failed to get historical portfolio';
471
- const error = err instanceof Error ? err : new Error(String(err));
472
- this.deps.logger.error(error, {
473
- tags: {
474
- feature: 'perps',
475
- provider: context.tracingContext.provider,
476
- network: context.tracingContext.isTestnet ? 'testnet' : 'mainnet',
477
- },
478
- context: {
479
- name: context.errorContext.controller,
480
- data: {
481
- method: context.errorContext.method,
482
- params,
483
- },
484
- },
485
- });
486
- // Update error state (if stateManager is provided)
487
- if (context.stateManager) {
488
- context.stateManager.update((state) => {
489
- state.lastError = errorMessage;
490
- state.lastUpdateTimestamp = Date.now();
491
- });
492
- }
493
- traceData = {
494
- success: false,
495
- error: errorMessage,
496
- };
497
- throw err;
498
- }
499
- finally {
500
- this.deps.tracer.endTrace({
501
- name: TraceNames.GetHistoricalPortfolio,
502
- id: traceId,
503
- data: traceData,
504
- });
505
- }
506
- }
507
- /**
508
- * Get available markets.
509
- * Handles full orchestration: tracing, error logging, state management, and provider delegation.
510
- *
511
- * @param options - Options for getting markets
512
- * @param options.provider - The perps provider
513
- * @param options.params - Optional parameters for the request
514
- * @param options.context - Service context for tracing and state management
515
- * @returns Array of market info
516
- */
517
- async getMarkets(options) {
518
- const { provider, params, context } = options;
519
- const traceId = (0, uuid_1.v4)();
520
- let traceData;
521
- try {
522
- this.deps.tracer.trace({
523
- name: TraceNames.GetMarkets,
524
- id: traceId,
525
- op: TraceOperations.Operation,
526
- tags: {
527
- provider: context.tracingContext.provider,
528
- isTestnet: String(context.tracingContext.isTestnet),
529
- ...(params?.symbols && {
530
- symbolCount: String(params.symbols.length),
531
- }),
532
- ...(params?.dex !== undefined && { dex: params.dex }),
533
- },
534
- });
535
- const markets = await provider.getMarkets(params);
536
- // Clear any previous errors on successful call (if stateManager is provided)
537
- if (context.stateManager) {
538
- context.stateManager.update((state) => {
539
- state.lastError = null;
540
- state.lastUpdateTimestamp = Date.now();
541
- });
542
- }
543
- traceData = { success: true };
544
- return markets;
545
- }
546
- catch (err) {
547
- const errorMessage = err instanceof Error ? err.message : perpsErrorCodes_1.PERPS_ERROR_CODES.MARKETS_FAILED;
548
- const error = err instanceof Error ? err : new Error(String(err));
549
- this.deps.logger.error(error, {
550
- tags: {
551
- feature: 'perps',
552
- provider: context.tracingContext.provider,
553
- network: context.tracingContext.isTestnet ? 'testnet' : 'mainnet',
554
- },
555
- context: {
556
- name: context.errorContext.controller,
557
- data: {
558
- method: context.errorContext.method,
559
- params,
560
- },
561
- },
562
- });
563
- // Update error state (if stateManager is provided)
564
- if (context.stateManager) {
565
- context.stateManager.update((state) => {
566
- state.lastError = errorMessage;
567
- state.lastUpdateTimestamp = Date.now();
568
- });
569
- }
570
- traceData = {
571
- success: false,
572
- error: errorMessage,
573
- };
574
- throw err;
575
- }
576
- finally {
577
- this.deps.tracer.endTrace({
578
- name: TraceNames.GetMarkets,
579
- id: traceId,
580
- data: traceData,
581
- });
582
- }
583
- }
584
- /**
585
- * Get available DEXs (HIP-3 support required).
586
- *
587
- * @param options - Options for getting available DEXs
588
- * @param options.provider - The perps provider
589
- * @param options.params - Optional parameters for the request
590
- * @param options.context - Service context for error logging
591
- * @returns Array of DEX names
592
- */
593
- async getAvailableDexs(options) {
594
- const { provider, params } = options;
595
- try {
596
- if (!provider.getAvailableDexs) {
597
- throw new Error('Provider does not support HIP-3 DEXs');
598
- }
599
- return await provider.getAvailableDexs(params);
600
- }
601
- catch (err) {
602
- const error = err instanceof Error ? err : new Error(String(err));
603
- this.deps.logger.error(error, {
604
- context: {
605
- name: 'MarketDataService.getAvailableDexs',
606
- data: { params },
607
- },
608
- });
609
- throw err;
610
- }
611
- }
612
- /**
613
- * Fetch historical candle data for charting.
614
- * Handles full orchestration: tracing, error logging, state management, and provider delegation.
615
- *
616
- * @param options - Options for fetching historical candles
617
- * @param options.provider - The perps provider
618
- * @param options.symbol - The asset symbol
619
- * @param options.interval - The candle period
620
- * @param options.limit - Maximum number of candles to fetch
621
- * @param options.endTime - End time for the candle range
622
- * @param options.context - Service context for tracing and state management
623
- * @returns Candle data
624
- */
625
- async fetchHistoricalCandles(options) {
626
- const { provider, symbol, interval, limit = 100, endTime, context, } = options;
627
- const traceId = (0, uuid_1.v4)();
628
- let traceData;
629
- try {
630
- this.deps.tracer.trace({
631
- name: TraceNames.FetchHistoricalCandles,
632
- id: traceId,
633
- op: TraceOperations.Operation,
634
- tags: {
635
- provider: context.tracingContext.provider,
636
- isTestnet: String(context.tracingContext.isTestnet),
637
- symbol,
638
- interval,
639
- },
640
- });
641
- // Check if provider supports historical candles via clientService
642
- const hyperLiquidProvider = provider;
643
- if (!hyperLiquidProvider.clientService?.fetchHistoricalCandles) {
644
- throw new Error('Historical candles not supported by provider');
645
- }
646
- const result = await hyperLiquidProvider.clientService.fetchHistoricalCandles(symbol, interval, limit, endTime);
647
- traceData = { success: true };
648
- return result;
649
- }
650
- catch (err) {
651
- const errorMessage = err instanceof Error
652
- ? err.message
653
- : 'Failed to fetch historical candles';
654
- const error = err instanceof Error ? err : new Error(String(err));
655
- this.deps.logger.error(error, {
656
- tags: {
657
- feature: 'perps',
658
- provider: context.tracingContext.provider,
659
- network: context.tracingContext.isTestnet ? 'testnet' : 'mainnet',
660
- },
661
- context: {
662
- name: context.errorContext.controller,
663
- data: {
664
- method: context.errorContext.method,
665
- symbol,
666
- interval,
667
- limit,
668
- endTime,
669
- },
670
- },
671
- });
672
- // Update error state (if stateManager is provided)
673
- if (context.stateManager) {
674
- context.stateManager.update((state) => {
675
- state.lastError = errorMessage;
676
- state.lastUpdateTimestamp = Date.now();
677
- });
678
- }
679
- traceData = {
680
- success: false,
681
- error: errorMessage,
682
- };
683
- throw err;
684
- }
685
- finally {
686
- this.deps.tracer.endTrace({
687
- name: TraceNames.FetchHistoricalCandles,
688
- id: traceId,
689
- data: traceData,
690
- });
691
- }
692
- }
693
- /**
694
- * Calculate liquidation price for a position.
695
- *
696
- * @param options - Options for calculating liquidation price
697
- * @param options.provider - The perps provider
698
- * @param options.params - Liquidation price parameters
699
- * @param options.context - Service context for error logging
700
- * @returns Liquidation price as string
701
- */
702
- async calculateLiquidationPrice(options) {
703
- const { provider, params } = options;
704
- try {
705
- return await provider.calculateLiquidationPrice(params);
706
- }
707
- catch (err) {
708
- const error = err instanceof Error ? err : new Error(String(err));
709
- this.deps.logger.error(error, {
710
- context: {
711
- name: 'MarketDataService.calculateLiquidationPrice',
712
- data: { params },
713
- },
714
- });
715
- throw err;
716
- }
717
- }
718
- /**
719
- * Calculate maintenance margin for a position.
720
- *
721
- * @param options - Options for calculating maintenance margin
722
- * @param options.provider - The perps provider
723
- * @param options.params - Maintenance margin parameters
724
- * @param options.context - Service context for error logging
725
- * @returns Maintenance margin as number
726
- */
727
- async calculateMaintenanceMargin(options) {
728
- const { provider, params } = options;
729
- try {
730
- return await provider.calculateMaintenanceMargin(params);
731
- }
732
- catch (err) {
733
- const error = err instanceof Error ? err : new Error(String(err));
734
- this.deps.logger.error(error, {
735
- context: {
736
- name: 'MarketDataService.calculateMaintenanceMargin',
737
- data: { params },
738
- },
739
- });
740
- throw err;
741
- }
742
- }
743
- /**
744
- * Get maximum leverage for an asset.
745
- *
746
- * @param options - Options for getting max leverage
747
- * @param options.provider - The perps provider
748
- * @param options.asset - The asset symbol
749
- * @param options.context - Service context for error logging
750
- * @returns Maximum leverage as number
751
- */
752
- async getMaxLeverage(options) {
753
- const { provider, asset } = options;
754
- try {
755
- return await provider.getMaxLeverage(asset);
756
- }
757
- catch (err) {
758
- const error = err instanceof Error ? err : new Error(String(err));
759
- this.deps.logger.error(error, {
760
- context: {
761
- name: 'MarketDataService.getMaxLeverage',
762
- data: { asset },
763
- },
764
- });
765
- throw err;
766
- }
767
- }
768
- /**
769
- * Calculate fees for an order.
770
- *
771
- * @param options - Options for calculating fees
772
- * @param options.provider - The perps provider
773
- * @param options.params - Fee calculation parameters
774
- * @param options.context - Service context for error logging
775
- * @returns Fee calculation result
776
- */
777
- async calculateFees(options) {
778
- const { provider, params } = options;
779
- try {
780
- return await provider.calculateFees(params);
781
- }
782
- catch (err) {
783
- const error = err instanceof Error ? err : new Error(String(err));
784
- this.deps.logger.error(error, {
785
- context: {
786
- name: 'MarketDataService.calculateFees',
787
- data: { params },
788
- },
789
- });
790
- throw err;
791
- }
792
- }
793
- /**
794
- * Validate an order before placement.
795
- *
796
- * @param options - Options for validating order
797
- * @param options.provider - The perps provider
798
- * @param options.params - Order parameters
799
- * @param options.context - Service context for error logging
800
- * @returns Validation result
801
- */
802
- async validateOrder(options) {
803
- const { provider, params } = options;
804
- try {
805
- return await provider.validateOrder(params);
806
- }
807
- catch (err) {
808
- const error = err instanceof Error ? err : new Error(String(err));
809
- this.deps.logger.error(error, {
810
- context: {
811
- name: 'MarketDataService.validateOrder',
812
- data: { params },
813
- },
814
- });
815
- throw err;
816
- }
817
- }
818
- /**
819
- * Validate a position close request.
820
- *
821
- * @param options - Options for validating close position
822
- * @param options.provider - The perps provider
823
- * @param options.params - Close position parameters
824
- * @param options.context - Service context for error logging
825
- * @returns Validation result
826
- */
827
- async validateClosePosition(options) {
828
- const { provider, params } = options;
829
- try {
830
- return await provider.validateClosePosition(params);
831
- }
832
- catch (err) {
833
- const error = err instanceof Error ? err : new Error(String(err));
834
- this.deps.logger.error(error, {
835
- context: {
836
- name: 'MarketDataService.validateClosePosition',
837
- data: { params },
838
- },
839
- });
840
- throw err;
841
- }
842
- }
843
- /**
844
- * Get supported withdrawal routes (synchronous).
845
- * Note: This method doesn't log errors to avoid needing context for a synchronous getter.
846
- *
847
- * @param options - Options for getting withdrawal routes
848
- * @param options.provider - The perps provider
849
- * @returns Array of asset routes
850
- */
851
- getWithdrawalRoutes(options) {
852
- const { provider } = options;
853
- try {
854
- return provider.getWithdrawalRoutes();
855
- }
856
- catch {
857
- // Silent fail - withdrawal routes are not critical
858
- return [];
859
- }
860
- }
861
- /**
862
- * Get block explorer URL (synchronous).
863
- *
864
- * @param options - Options for getting block explorer URL
865
- * @param options.provider - The perps provider
866
- * @param options.address - Optional address to include in URL
867
- * @returns Block explorer URL
868
- */
869
- getBlockExplorerUrl(options) {
870
- const { provider, address } = options;
871
- return provider.getBlockExplorerUrl(address);
872
- }
873
- }
874
- exports.MarketDataService = MarketDataService;
875
- //# sourceMappingURL=MarketDataService.cjs.map