@velocity-exchange/sdk 0.0.5 → 0.1.0

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 (383) hide show
  1. package/.prettierignore +1 -1
  2. package/CHANGELOG.md +20 -0
  3. package/README.md +30 -30
  4. package/bun.lock +1 -1
  5. package/lib/browser/accounts/grpcProgramAccountSubscriber.js +1 -1
  6. package/lib/browser/accounts/grpcVelocityClientAccountSubscriber.d.ts +0 -4
  7. package/lib/browser/accounts/grpcVelocityClientAccountSubscriber.js +1 -3
  8. package/lib/browser/accounts/grpcVelocityClientAccountSubscriberV2.d.ts +0 -4
  9. package/lib/browser/accounts/grpcVelocityClientAccountSubscriberV2.js +5 -7
  10. package/lib/browser/accounts/laserProgramAccountSubscriber.js +1 -1
  11. package/lib/browser/accounts/pollingVelocityClientAccountSubscriber.d.ts +0 -4
  12. package/lib/browser/accounts/pollingVelocityClientAccountSubscriber.js +5 -7
  13. package/lib/browser/accounts/types.d.ts +2 -8
  14. package/lib/browser/accounts/utils.js +2 -2
  15. package/lib/browser/accounts/webSocketVelocityClientAccountSubscriber.d.ts +0 -4
  16. package/lib/browser/accounts/webSocketVelocityClientAccountSubscriber.js +5 -7
  17. package/lib/browser/accounts/webSocketVelocityClientAccountSubscriberV2.d.ts +0 -4
  18. package/lib/browser/accounts/webSocketVelocityClientAccountSubscriberV2.js +5 -7
  19. package/lib/browser/addresses/pda.d.ts +1 -7
  20. package/lib/browser/addresses/pda.js +4 -10
  21. package/lib/browser/adminClient.d.ts +1 -1
  22. package/lib/browser/adminClient.js +21 -21
  23. package/lib/browser/auctionSubscriber/auctionSubscriber.d.ts +1 -3
  24. package/lib/browser/auctionSubscriber/auctionSubscriber.js +2 -6
  25. package/lib/browser/auctionSubscriber/auctionSubscriberGrpc.d.ts +1 -3
  26. package/lib/browser/auctionSubscriber/auctionSubscriberGrpc.js +2 -6
  27. package/lib/browser/auctionSubscriber/types.d.ts +3 -2
  28. package/lib/browser/config.d.ts +10 -19
  29. package/lib/browser/config.js +6 -33
  30. package/lib/browser/constants/insuranceFund.d.ts +1 -1
  31. package/lib/browser/constants/insuranceFund.js +1 -1
  32. package/lib/browser/constituentMap/constituentMap.d.ts +0 -2
  33. package/lib/browser/constituentMap/constituentMap.js +5 -5
  34. package/lib/browser/core/VelocityCore.d.ts +9 -15
  35. package/lib/browser/core/VelocityCore.js +5 -7
  36. package/lib/browser/core/instructions/withdraw.d.ts +1 -1
  37. package/lib/browser/core/instructions/withdraw.js +1 -1
  38. package/lib/browser/core/remainingAccounts.js +3 -3
  39. package/lib/browser/dlob/DLOB.d.ts +1 -1
  40. package/lib/browser/dlob/DLOB.js +6 -6
  41. package/lib/browser/dlob/DLOBSubscriber.d.ts +0 -2
  42. package/lib/browser/dlob/DLOBSubscriber.js +2 -7
  43. package/lib/browser/dlob/orderBookLevels.js +7 -7
  44. package/lib/browser/dlob/types.d.ts +0 -2
  45. package/lib/browser/events/eventSubscriber.d.ts +1 -1
  46. package/lib/browser/events/eventsServerLogProvider.js +2 -2
  47. package/lib/browser/events/parse.js +14 -14
  48. package/lib/browser/events/types.d.ts +3 -5
  49. package/lib/browser/events/types.js +1 -1
  50. package/lib/browser/idl/{drift.d.ts → velocity.d.ts} +1042 -767
  51. package/lib/browser/idl/{drift.json → velocity.json} +1033 -758
  52. package/lib/browser/index.d.ts +1 -1
  53. package/lib/browser/index.js +1 -2
  54. package/lib/browser/math/amm.d.ts +10 -10
  55. package/lib/browser/math/amm.js +29 -28
  56. package/lib/browser/math/auction.js +16 -12
  57. package/lib/browser/math/builder.d.ts +18 -1
  58. package/lib/browser/math/builder.js +32 -1
  59. package/lib/browser/math/funding.js +26 -26
  60. package/lib/browser/math/margin.d.ts +4 -4
  61. package/lib/browser/math/margin.js +15 -15
  62. package/lib/browser/math/market.js +13 -13
  63. package/lib/browser/math/oracles.d.ts +4 -4
  64. package/lib/browser/math/oracles.js +23 -23
  65. package/lib/browser/math/orders.d.ts +2 -2
  66. package/lib/browser/math/orders.js +9 -9
  67. package/lib/browser/math/position.js +4 -4
  68. package/lib/browser/math/superStake.d.ts +8 -10
  69. package/lib/browser/math/superStake.js +18 -20
  70. package/lib/browser/math/trade.js +5 -5
  71. package/lib/browser/math/utils.d.ts +1 -1
  72. package/lib/browser/math/utils.js +1 -1
  73. package/lib/browser/oracles/pythLazerClient.js +2 -2
  74. package/lib/browser/orderSubscriber/OrderSubscriber.d.ts +0 -2
  75. package/lib/browser/orderSubscriber/OrderSubscriber.js +8 -12
  76. package/lib/browser/orderSubscriber/WebsocketSubscription.js +1 -1
  77. package/lib/browser/orderSubscriber/grpcSubscription.js +2 -2
  78. package/lib/browser/orderSubscriber/types.d.ts +0 -2
  79. package/lib/browser/priorityFee/priorityFeeSubscriber.d.ts +1 -5
  80. package/lib/browser/priorityFee/priorityFeeSubscriber.js +7 -15
  81. package/lib/browser/priorityFee/priorityFeeSubscriberMap.d.ts +0 -4
  82. package/lib/browser/priorityFee/priorityFeeSubscriberMap.js +3 -11
  83. package/lib/browser/priorityFee/types.d.ts +3 -8
  84. package/lib/browser/priorityFee/velocityPriorityFeeMethod.d.ts +0 -8
  85. package/lib/browser/priorityFee/velocityPriorityFeeMethod.js +1 -3
  86. package/lib/browser/pyth/pythLazerSubscriber.d.ts +1 -1
  87. package/lib/browser/pyth/pythLazerSubscriber.js +1 -1
  88. package/lib/browser/swap/UnifiedSwapClient.js +1 -1
  89. package/lib/browser/swift/signedMsgUserAccountSubscriber.d.ts +4 -5
  90. package/lib/browser/swift/signedMsgUserAccountSubscriber.js +2 -6
  91. package/lib/browser/swift/swiftOrderSubscriber.d.ts +6 -5
  92. package/lib/browser/swift/swiftOrderSubscriber.js +5 -11
  93. package/lib/browser/types.d.ts +79 -91
  94. package/lib/browser/types.js +4 -0
  95. package/lib/browser/user.d.ts +1 -3
  96. package/lib/browser/user.js +19 -23
  97. package/lib/browser/userConfig.d.ts +3 -2
  98. package/lib/browser/userMap/WebsocketSubscription.js +1 -1
  99. package/lib/browser/userMap/grpcSubscription.js +1 -1
  100. package/lib/browser/userMap/referrerMap.d.ts +0 -2
  101. package/lib/browser/userMap/referrerMap.js +0 -4
  102. package/lib/browser/userMap/revenueShareEscrowMap.d.ts +0 -2
  103. package/lib/browser/userMap/revenueShareEscrowMap.js +0 -4
  104. package/lib/browser/userMap/userMap.d.ts +2 -4
  105. package/lib/browser/userMap/userMap.js +10 -14
  106. package/lib/browser/userMap/userMapConfig.d.ts +3 -2
  107. package/lib/browser/userMap/userStatsMap.d.ts +0 -2
  108. package/lib/browser/userMap/userStatsMap.js +0 -4
  109. package/lib/browser/userStats.d.ts +0 -2
  110. package/lib/browser/userStats.js +10 -14
  111. package/lib/browser/userStatsConfig.d.ts +3 -2
  112. package/lib/browser/util/ed25519Utils.d.ts +1 -1
  113. package/lib/browser/util/ed25519Utils.js +1 -1
  114. package/lib/browser/velocityClient.d.ts +53 -38
  115. package/lib/browser/velocityClient.js +258 -196
  116. package/lib/browser/velocityClientConfig.d.ts +0 -8
  117. package/lib/node/accounts/grpcProgramAccountSubscriber.js +1 -1
  118. package/lib/node/accounts/grpcVelocityClientAccountSubscriber.d.ts +0 -4
  119. package/lib/node/accounts/grpcVelocityClientAccountSubscriber.d.ts.map +1 -1
  120. package/lib/node/accounts/grpcVelocityClientAccountSubscriber.js +1 -3
  121. package/lib/node/accounts/grpcVelocityClientAccountSubscriberV2.d.ts +0 -4
  122. package/lib/node/accounts/grpcVelocityClientAccountSubscriberV2.d.ts.map +1 -1
  123. package/lib/node/accounts/grpcVelocityClientAccountSubscriberV2.js +5 -7
  124. package/lib/node/accounts/laserProgramAccountSubscriber.js +1 -1
  125. package/lib/node/accounts/pollingVelocityClientAccountSubscriber.d.ts +0 -4
  126. package/lib/node/accounts/pollingVelocityClientAccountSubscriber.d.ts.map +1 -1
  127. package/lib/node/accounts/pollingVelocityClientAccountSubscriber.js +5 -7
  128. package/lib/node/accounts/types.d.ts +2 -8
  129. package/lib/node/accounts/types.d.ts.map +1 -1
  130. package/lib/node/accounts/utils.js +2 -2
  131. package/lib/node/accounts/webSocketVelocityClientAccountSubscriber.d.ts +0 -4
  132. package/lib/node/accounts/webSocketVelocityClientAccountSubscriber.d.ts.map +1 -1
  133. package/lib/node/accounts/webSocketVelocityClientAccountSubscriber.js +5 -7
  134. package/lib/node/accounts/webSocketVelocityClientAccountSubscriberV2.d.ts +0 -4
  135. package/lib/node/accounts/webSocketVelocityClientAccountSubscriberV2.d.ts.map +1 -1
  136. package/lib/node/accounts/webSocketVelocityClientAccountSubscriberV2.js +5 -7
  137. package/lib/node/addresses/pda.d.ts +1 -7
  138. package/lib/node/addresses/pda.d.ts.map +1 -1
  139. package/lib/node/addresses/pda.js +4 -10
  140. package/lib/node/adminClient.d.ts +1 -1
  141. package/lib/node/adminClient.js +21 -21
  142. package/lib/node/auctionSubscriber/auctionSubscriber.d.ts +1 -3
  143. package/lib/node/auctionSubscriber/auctionSubscriber.d.ts.map +1 -1
  144. package/lib/node/auctionSubscriber/auctionSubscriber.js +2 -6
  145. package/lib/node/auctionSubscriber/auctionSubscriberGrpc.d.ts +1 -3
  146. package/lib/node/auctionSubscriber/auctionSubscriberGrpc.d.ts.map +1 -1
  147. package/lib/node/auctionSubscriber/auctionSubscriberGrpc.js +2 -6
  148. package/lib/node/auctionSubscriber/types.d.ts +3 -2
  149. package/lib/node/auctionSubscriber/types.d.ts.map +1 -1
  150. package/lib/node/config.d.ts +10 -19
  151. package/lib/node/config.d.ts.map +1 -1
  152. package/lib/node/config.js +6 -33
  153. package/lib/node/constants/insuranceFund.d.ts +1 -1
  154. package/lib/node/constants/insuranceFund.js +1 -1
  155. package/lib/node/constituentMap/constituentMap.d.ts +0 -2
  156. package/lib/node/constituentMap/constituentMap.d.ts.map +1 -1
  157. package/lib/node/constituentMap/constituentMap.js +5 -5
  158. package/lib/node/core/VelocityCore.d.ts +9 -15
  159. package/lib/node/core/VelocityCore.d.ts.map +1 -1
  160. package/lib/node/core/VelocityCore.js +5 -7
  161. package/lib/node/core/instructions/withdraw.d.ts +1 -1
  162. package/lib/node/core/instructions/withdraw.d.ts.map +1 -1
  163. package/lib/node/core/instructions/withdraw.js +1 -1
  164. package/lib/node/core/remainingAccounts.js +3 -3
  165. package/lib/node/dlob/DLOB.d.ts +1 -1
  166. package/lib/node/dlob/DLOB.d.ts.map +1 -1
  167. package/lib/node/dlob/DLOB.js +6 -6
  168. package/lib/node/dlob/DLOBSubscriber.d.ts +0 -2
  169. package/lib/node/dlob/DLOBSubscriber.d.ts.map +1 -1
  170. package/lib/node/dlob/DLOBSubscriber.js +2 -7
  171. package/lib/node/dlob/orderBookLevels.d.ts.map +1 -1
  172. package/lib/node/dlob/orderBookLevels.js +7 -7
  173. package/lib/node/dlob/types.d.ts +0 -2
  174. package/lib/node/dlob/types.d.ts.map +1 -1
  175. package/lib/node/events/eventSubscriber.d.ts +1 -1
  176. package/lib/node/events/eventsServerLogProvider.js +2 -2
  177. package/lib/node/events/parse.d.ts.map +1 -1
  178. package/lib/node/events/parse.js +14 -14
  179. package/lib/node/events/types.d.ts +3 -5
  180. package/lib/node/events/types.d.ts.map +1 -1
  181. package/lib/node/events/types.js +1 -1
  182. package/lib/node/idl/{drift.d.ts → velocity.d.ts} +1043 -768
  183. package/lib/node/idl/velocity.d.ts.map +1 -0
  184. package/lib/node/idl/{drift.json → velocity.json} +1033 -758
  185. package/lib/node/index.d.ts +1 -1
  186. package/lib/node/index.d.ts.map +1 -1
  187. package/lib/node/index.js +1 -2
  188. package/lib/node/math/amm.d.ts +10 -10
  189. package/lib/node/math/amm.d.ts.map +1 -1
  190. package/lib/node/math/amm.js +29 -28
  191. package/lib/node/math/auction.d.ts.map +1 -1
  192. package/lib/node/math/auction.js +16 -12
  193. package/lib/node/math/builder.d.ts +18 -1
  194. package/lib/node/math/builder.d.ts.map +1 -1
  195. package/lib/node/math/builder.js +32 -1
  196. package/lib/node/math/funding.d.ts.map +1 -1
  197. package/lib/node/math/funding.js +26 -26
  198. package/lib/node/math/margin.d.ts +4 -4
  199. package/lib/node/math/margin.d.ts.map +1 -1
  200. package/lib/node/math/margin.js +15 -15
  201. package/lib/node/math/market.d.ts.map +1 -1
  202. package/lib/node/math/market.js +13 -13
  203. package/lib/node/math/oracles.d.ts +4 -4
  204. package/lib/node/math/oracles.d.ts.map +1 -1
  205. package/lib/node/math/oracles.js +23 -23
  206. package/lib/node/math/orders.d.ts +2 -2
  207. package/lib/node/math/orders.d.ts.map +1 -1
  208. package/lib/node/math/orders.js +9 -9
  209. package/lib/node/math/position.d.ts.map +1 -1
  210. package/lib/node/math/position.js +4 -4
  211. package/lib/node/math/superStake.d.ts +8 -10
  212. package/lib/node/math/superStake.d.ts.map +1 -1
  213. package/lib/node/math/superStake.js +18 -20
  214. package/lib/node/math/trade.d.ts.map +1 -1
  215. package/lib/node/math/trade.js +5 -5
  216. package/lib/node/math/utils.d.ts +1 -1
  217. package/lib/node/math/utils.js +1 -1
  218. package/lib/node/oracles/pythLazerClient.js +2 -2
  219. package/lib/node/orderSubscriber/OrderSubscriber.d.ts +0 -2
  220. package/lib/node/orderSubscriber/OrderSubscriber.d.ts.map +1 -1
  221. package/lib/node/orderSubscriber/OrderSubscriber.js +8 -12
  222. package/lib/node/orderSubscriber/WebsocketSubscription.js +1 -1
  223. package/lib/node/orderSubscriber/grpcSubscription.js +2 -2
  224. package/lib/node/orderSubscriber/types.d.ts +0 -2
  225. package/lib/node/orderSubscriber/types.d.ts.map +1 -1
  226. package/lib/node/priorityFee/priorityFeeSubscriber.d.ts +1 -5
  227. package/lib/node/priorityFee/priorityFeeSubscriber.d.ts.map +1 -1
  228. package/lib/node/priorityFee/priorityFeeSubscriber.js +7 -15
  229. package/lib/node/priorityFee/priorityFeeSubscriberMap.d.ts +0 -4
  230. package/lib/node/priorityFee/priorityFeeSubscriberMap.d.ts.map +1 -1
  231. package/lib/node/priorityFee/priorityFeeSubscriberMap.js +3 -11
  232. package/lib/node/priorityFee/types.d.ts +3 -8
  233. package/lib/node/priorityFee/types.d.ts.map +1 -1
  234. package/lib/node/priorityFee/velocityPriorityFeeMethod.d.ts +0 -8
  235. package/lib/node/priorityFee/velocityPriorityFeeMethod.d.ts.map +1 -1
  236. package/lib/node/priorityFee/velocityPriorityFeeMethod.js +1 -3
  237. package/lib/node/pyth/pythLazerSubscriber.d.ts +1 -1
  238. package/lib/node/pyth/pythLazerSubscriber.js +1 -1
  239. package/lib/node/swap/UnifiedSwapClient.js +1 -1
  240. package/lib/node/swift/signedMsgUserAccountSubscriber.d.ts +4 -5
  241. package/lib/node/swift/signedMsgUserAccountSubscriber.d.ts.map +1 -1
  242. package/lib/node/swift/signedMsgUserAccountSubscriber.js +2 -6
  243. package/lib/node/swift/swiftOrderSubscriber.d.ts +6 -5
  244. package/lib/node/swift/swiftOrderSubscriber.d.ts.map +1 -1
  245. package/lib/node/swift/swiftOrderSubscriber.js +5 -11
  246. package/lib/node/types.d.ts +79 -91
  247. package/lib/node/types.d.ts.map +1 -1
  248. package/lib/node/types.js +4 -0
  249. package/lib/node/user.d.ts +1 -3
  250. package/lib/node/user.d.ts.map +1 -1
  251. package/lib/node/user.js +19 -23
  252. package/lib/node/userConfig.d.ts +3 -2
  253. package/lib/node/userConfig.d.ts.map +1 -1
  254. package/lib/node/userMap/WebsocketSubscription.js +1 -1
  255. package/lib/node/userMap/grpcSubscription.js +1 -1
  256. package/lib/node/userMap/referrerMap.d.ts +0 -2
  257. package/lib/node/userMap/referrerMap.d.ts.map +1 -1
  258. package/lib/node/userMap/referrerMap.js +0 -4
  259. package/lib/node/userMap/revenueShareEscrowMap.d.ts +0 -2
  260. package/lib/node/userMap/revenueShareEscrowMap.d.ts.map +1 -1
  261. package/lib/node/userMap/revenueShareEscrowMap.js +0 -4
  262. package/lib/node/userMap/userMap.d.ts +2 -4
  263. package/lib/node/userMap/userMap.d.ts.map +1 -1
  264. package/lib/node/userMap/userMap.js +10 -14
  265. package/lib/node/userMap/userMapConfig.d.ts +3 -2
  266. package/lib/node/userMap/userMapConfig.d.ts.map +1 -1
  267. package/lib/node/userMap/userStatsMap.d.ts +0 -2
  268. package/lib/node/userMap/userStatsMap.d.ts.map +1 -1
  269. package/lib/node/userMap/userStatsMap.js +0 -4
  270. package/lib/node/userStats.d.ts +0 -2
  271. package/lib/node/userStats.d.ts.map +1 -1
  272. package/lib/node/userStats.js +10 -14
  273. package/lib/node/userStatsConfig.d.ts +3 -2
  274. package/lib/node/userStatsConfig.d.ts.map +1 -1
  275. package/lib/node/util/ed25519Utils.d.ts +1 -1
  276. package/lib/node/util/ed25519Utils.js +1 -1
  277. package/lib/node/velocityClient.d.ts +53 -38
  278. package/lib/node/velocityClient.d.ts.map +1 -1
  279. package/lib/node/velocityClient.js +258 -196
  280. package/lib/node/velocityClientConfig.d.ts +0 -8
  281. package/lib/node/velocityClientConfig.d.ts.map +1 -1
  282. package/package.json +6 -7
  283. package/scripts/deposit-isolated-positions.ts +2 -2
  284. package/scripts/find-flagged-users.ts +1 -1
  285. package/scripts/grpc-client-test-comparison.ts +4 -4
  286. package/scripts/grpc-multiuser-client-test-comparison.ts +2 -2
  287. package/scripts/single-grpc-client-test.ts +3 -3
  288. package/scripts/updateVersion.js +4 -4
  289. package/scripts/withdraw-isolated-positions.ts +2 -2
  290. package/src/accounts/grpcProgramAccountSubscriber.ts +1 -1
  291. package/src/accounts/grpcVelocityClientAccountSubscriber.ts +0 -7
  292. package/src/accounts/grpcVelocityClientAccountSubscriberV2.ts +4 -11
  293. package/src/accounts/laserProgramAccountSubscriber.ts +1 -1
  294. package/src/accounts/pollingVelocityClientAccountSubscriber.ts +4 -11
  295. package/src/accounts/types.ts +2 -9
  296. package/src/accounts/utils.ts +2 -2
  297. package/src/accounts/webSocketVelocityClientAccountSubscriber.ts +4 -11
  298. package/src/accounts/webSocketVelocityClientAccountSubscriberV2.ts +4 -11
  299. package/src/addresses/pda.ts +3 -13
  300. package/src/adminClient.ts +21 -21
  301. package/src/auctionSubscriber/auctionSubscriber.ts +1 -6
  302. package/src/auctionSubscriber/auctionSubscriberGrpc.ts +1 -6
  303. package/src/auctionSubscriber/types.ts +3 -3
  304. package/src/config.ts +8 -67
  305. package/src/constants/insuranceFund.ts +1 -1
  306. package/src/constituentMap/constituentMap.ts +2 -6
  307. package/src/core/VelocityCore.ts +11 -20
  308. package/src/core/instructions/withdraw.ts +2 -2
  309. package/src/core/remainingAccounts.ts +3 -3
  310. package/src/dlob/DLOB.ts +6 -6
  311. package/src/dlob/DLOBSubscriber.ts +2 -8
  312. package/src/dlob/orderBookLevels.ts +12 -6
  313. package/src/dlob/types.ts +0 -2
  314. package/src/events/eventSubscriber.ts +1 -1
  315. package/src/events/eventsServerLogProvider.ts +2 -2
  316. package/src/events/parse.ts +14 -14
  317. package/src/events/types.ts +4 -7
  318. package/src/idl/{drift.json → velocity.json} +1033 -758
  319. package/src/idl/{drift.ts → velocity.ts} +1035 -760
  320. package/src/index.ts +1 -4
  321. package/src/margin/README.md +2 -2
  322. package/src/math/amm.ts +43 -21
  323. package/src/math/auction.ts +16 -12
  324. package/src/math/builder.ts +45 -1
  325. package/src/math/funding.ts +46 -43
  326. package/src/math/margin.ts +15 -15
  327. package/src/math/market.ts +21 -13
  328. package/src/math/oracles.ts +29 -26
  329. package/src/math/orders.ts +18 -5
  330. package/src/math/position.ts +9 -3
  331. package/src/math/superStake.ts +21 -24
  332. package/src/math/trade.ts +9 -1
  333. package/src/math/utils.ts +1 -1
  334. package/src/oracles/pythLazerClient.ts +3 -3
  335. package/src/orderSubscriber/OrderSubscriber.ts +2 -8
  336. package/src/orderSubscriber/WebsocketSubscription.ts +1 -1
  337. package/src/orderSubscriber/grpcSubscription.ts +2 -2
  338. package/src/orderSubscriber/types.ts +0 -2
  339. package/src/priorityFee/priorityFeeSubscriber.ts +5 -12
  340. package/src/priorityFee/priorityFeeSubscriberMap.ts +2 -10
  341. package/src/priorityFee/types.ts +3 -13
  342. package/src/priorityFee/velocityPriorityFeeMethod.ts +0 -12
  343. package/src/pyth/pythLazerSubscriber.ts +1 -1
  344. package/src/swap/UnifiedSwapClient.ts +1 -1
  345. package/src/swift/signedMsgUserAccountSubscriber.ts +2 -8
  346. package/src/swift/swiftOrderSubscriber.ts +7 -12
  347. package/src/types.ts +84 -102
  348. package/src/user.ts +9 -14
  349. package/src/userConfig.ts +1 -3
  350. package/src/userMap/WebsocketSubscription.ts +1 -1
  351. package/src/userMap/grpcSubscription.ts +1 -1
  352. package/src/userMap/referrerMap.ts +0 -4
  353. package/src/userMap/revenueShareEscrowMap.ts +0 -4
  354. package/src/userMap/userMap.ts +3 -7
  355. package/src/userMap/userMapConfig.ts +3 -3
  356. package/src/userMap/userStatsMap.ts +0 -4
  357. package/src/userStats.ts +1 -5
  358. package/src/userStatsConfig.ts +3 -3
  359. package/src/util/ed25519Utils.ts +1 -1
  360. package/src/velocityClient.ts +339 -225
  361. package/src/velocityClientConfig.ts +0 -10
  362. package/tests/{DriftCore → VelocityCore}/decode.test.ts +1 -1
  363. package/tests/{DriftCore → VelocityCore}/fill_trigger.test.ts +1 -1
  364. package/tests/{DriftCore → VelocityCore}/instructions.test.ts +1 -1
  365. package/tests/{DriftCore → VelocityCore}/pdas.test.ts +4 -2
  366. package/tests/ci/verifyConstants.ts +24 -27
  367. package/tests/decode/test.ts +2 -2
  368. package/tests/dlob/helpers.ts +5 -9
  369. package/tests/events/parseLogsForCuUsage.ts +15 -15
  370. package/tests/user/helpers.ts +9 -9
  371. package/tests/user/test.ts +13 -10
  372. package/lib/browser/util/deprecatedAlias.d.ts +0 -26
  373. package/lib/browser/util/deprecatedAlias.js +0 -10
  374. package/lib/node/idl/drift.d.ts.map +0 -1
  375. package/lib/node/util/deprecatedAlias.d.ts +0 -27
  376. package/lib/node/util/deprecatedAlias.d.ts.map +0 -1
  377. package/lib/node/util/deprecatedAlias.js +0 -10
  378. package/src/util/deprecatedAlias.ts +0 -21
  379. /package/lib/browser/idl/{drift.js → velocity.js} +0 -0
  380. /package/lib/node/idl/{drift.js → velocity.js} +0 -0
  381. /package/tests/{DriftCore → VelocityCore}/perp_orders.test.ts +0 -0
  382. /package/tests/{DriftCore → VelocityCore}/remainingAccounts.test.ts +0 -0
  383. /package/tests/{DriftCore → VelocityCore}/settlement_liquidation.test.ts +0 -0
@@ -54,8 +54,6 @@ export type VelocityClientConfig = {
54
54
  useHotWalletAdmin?: boolean;
55
55
  coder?: Coder;
56
56
  };
57
- /** @deprecated Use `VelocityClientConfig` instead. `DriftClientConfig` will be removed in a future major. */
58
- export type DriftClientConfig = VelocityClientConfig;
59
57
  type GrpcVelocityClientAccountSubscriberCtor = new (grpcConfigs: GrpcConfigs, program: Program, perpMarketIndexes: number[], spotMarketIndexes: number[], oracleInfos: OracleInfo[], shouldFindAllMarketsAndOracles: boolean, delistedMarketSetting: DelistedMarketSetting) => grpcVelocityClientAccountSubscriberV2 | grpcVelocityClientAccountSubscriber;
60
58
  type WsVelocityClientAccountSubscriberCtor = new (program: Program, perpMarketIndexes: number[], spotMarketIndexes: number[], oracleInfos: OracleInfo[], shouldFindAllMarketsAndOracles: boolean, delistedMarketSetting: DelistedMarketSetting) => WebSocketVelocityClientAccountSubscriber | WebSocketVelocityClientAccountSubscriberV2;
61
59
  export type VelocityClientSubscriptionConfig = {
@@ -64,8 +62,6 @@ export type VelocityClientSubscriptionConfig = {
64
62
  resubTimeoutMs?: number;
65
63
  logResubMessages?: boolean;
66
64
  velocityClientAccountSubscriber?: GrpcVelocityClientAccountSubscriberCtor;
67
- /** @deprecated Use `velocityClientAccountSubscriber` instead. `driftClientAccountSubscriber` will be removed in a future major. */
68
- driftClientAccountSubscriber?: GrpcVelocityClientAccountSubscriberCtor;
69
65
  grpcMultiUserAccountSubscriber?: grpcMultiUserAccountSubscriber;
70
66
  } | {
71
67
  type: 'websocket';
@@ -76,13 +72,9 @@ export type VelocityClientSubscriptionConfig = {
76
72
  perpMarketAccountSubscriber?: new (accountName: string, program: Program, accountPublicKey: PublicKey, decodeBuffer?: (buffer: Buffer) => any, resubOpts?: ResubOpts, commitment?: Commitment) => WebSocketAccountSubscriberV2<any> | WebSocketAccountSubscriber<any>;
77
73
  /** If you use V2 here, whatever you pass for perpMarketAccountSubscriber will be ignored and it will use v2 under the hood regardless */
78
74
  velocityClientAccountSubscriber?: WsVelocityClientAccountSubscriberCtor;
79
- /** @deprecated Use `velocityClientAccountSubscriber` instead. `driftClientAccountSubscriber` will be removed in a future major. */
80
- driftClientAccountSubscriber?: WsVelocityClientAccountSubscriberCtor;
81
75
  } | {
82
76
  type: 'polling';
83
77
  accountLoader: BulkAccountLoader;
84
78
  };
85
- /** @deprecated Use `VelocityClientSubscriptionConfig` instead. `DriftClientSubscriptionConfig` will be removed in a future major. */
86
- export type DriftClientSubscriptionConfig = VelocityClientSubscriptionConfig;
87
79
  export {};
88
80
  //# sourceMappingURL=velocityClientConfig.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"velocityClientConfig.d.ts","sourceRoot":"","sources":["../../src/velocityClientConfig.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"velocityClientConfig.d.ts","sourceRoot":"","sources":["../../src/velocityClientConfig.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,13 +1,12 @@
1
1
  {
2
2
  "name": "@velocity-exchange/sdk",
3
- "version": "0.0.5",
3
+ "version": "0.1.0",
4
4
  "main": "lib/node/index.js",
5
5
  "types": "lib/node/index.d.ts",
6
6
  "module": "./lib/browser/index.js",
7
- "homepage": "https://www.drift.trade/",
8
7
  "repository": {
9
8
  "type": "git",
10
- "url": "git@github.com:drift-labs/protocol-v2.git"
9
+ "url": "git@github.com:drift-labs/protocol-v2-shadow.git"
11
10
  },
12
11
  "scripts": {
13
12
  "lint": "eslint './**/*.{ts,tsx}' --quiet --format unix",
@@ -22,7 +21,7 @@
22
21
  "test:ci": "mocha -r ts-node/register tests/ci/**/*.ts",
23
22
  "test:dlob": "mocha -r ts-node/register tests/dlob/**/*.ts",
24
23
  "test:events": "mocha -r ts-node/register tests/events/**/*.ts",
25
- "test:driftcore": "bun test tests/DriftCore",
24
+ "test:velocitycore": "bun test tests/VelocityCore",
26
25
  "patch-and-pub": "npm version patch --force && npm publish",
27
26
  "prettify": "prettier --check './src/***/*.ts'",
28
27
  "prettify:fix": "prettier --write './{src,tests}/***/*.ts'",
@@ -30,8 +29,8 @@
30
29
  "circular-deps": "bunx madge --circular --circular --extensions ts src"
31
30
  },
32
31
  "keywords": [
33
- "drift-labs",
34
- "drift",
32
+ "velocity-exchange",
33
+ "velocity",
35
34
  "perps",
36
35
  "velocity",
37
36
  "velocity-exchange"
@@ -100,7 +99,7 @@
100
99
  "typescript": "5.4.5",
101
100
  "vm-browserify": "1.1.2"
102
101
  },
103
- "description": "SDK for Drift Protocol",
102
+ "description": "SDK for Velocity Protocol",
104
103
  "engines": {
105
104
  "node": "^24.0.0"
106
105
  },
@@ -1,7 +1,7 @@
1
1
  import { Connection, Keypair, PublicKey } from '@solana/web3.js';
2
2
  import dotenv from 'dotenv';
3
3
  import { AnchorProvider, Idl, Program, ProgramAccount, BN } from '@coral-xyz/anchor';
4
- import driftIDL from '../src/idl/drift.json';
4
+ import velocityIDL from '../src/idl/velocity.json';
5
5
  import {
6
6
  VELOCITY_PROGRAM_ID,
7
7
  PerpMarketAccount,
@@ -35,7 +35,7 @@ async function main() {
35
35
  commitment: 'processed',
36
36
  });
37
37
  const programId = new PublicKey(VELOCITY_PROGRAM_ID);
38
- const program = new Program(driftIDL as Idl, programId, provider);
38
+ const program = new Program(velocityIDL as Idl, programId, provider);
39
39
 
40
40
  const allPerpMarketProgramAccounts =
41
41
  (await program.account.perpMarket.all()) as ProgramAccount<PerpMarketAccount>[];
@@ -79,7 +79,7 @@ async function main() {
79
79
  await client.subscribe();
80
80
 
81
81
  const userMap = new UserMap({
82
- driftClient: client,
82
+ velocityClient: client,
83
83
  subscriptionConfig: {
84
84
  type: 'polling',
85
85
  frequency: 60_000,
@@ -18,14 +18,14 @@ import {
18
18
  Program,
19
19
  ProgramAccount,
20
20
  } from '@coral-xyz/anchor';
21
- import driftIDL from '../src/idl/drift.json';
21
+ import velocityIDL from '../src/idl/velocity.json';
22
22
  import assert from 'assert';
23
23
 
24
24
  const GRPC_ENDPOINT = process.env.GRPC_ENDPOINT;
25
25
  const TOKEN = process.env.TOKEN;
26
26
  const RPC_ENDPOINT = process.env.RPC_ENDPOINT;
27
27
 
28
- async function initializeGrpcDriftClientV2VersusV1() {
28
+ async function initializeGrpcVelocityClientV2VersusV1() {
29
29
  const connection = new Connection(RPC_ENDPOINT);
30
30
  const wallet = new Wallet(new Keypair());
31
31
  dotenv.config({ path: '../' });
@@ -40,7 +40,7 @@ async function initializeGrpcDriftClientV2VersusV1() {
40
40
  }
41
41
  );
42
42
 
43
- const program = new Program(driftIDL as Idl, programId, provider);
43
+ const program = new Program(velocityIDL as Idl, programId, provider);
44
44
 
45
45
  const allPerpMarketProgramAccounts =
46
46
  (await program.account.perpMarket.all()) as ProgramAccount<PerpMarketAccount>[];
@@ -369,4 +369,4 @@ async function initializeGrpcDriftClientV2VersusV1() {
369
369
  process.on('SIGTERM', cleanup);
370
370
  }
371
371
 
372
- initializeGrpcDriftClientV2VersusV1().catch(console.error);
372
+ initializeGrpcVelocityClientV2VersusV1().catch(console.error);
@@ -4,7 +4,7 @@ import { Connection, Keypair, PublicKey } from '@solana/web3.js';
4
4
  import { VELOCITY_PROGRAM_ID } from '../src';
5
5
  import { CommitmentLevel } from '@triton-one/yellowstone-grpc';
6
6
  import { AnchorProvider, Idl, Program } from '@coral-xyz/anchor';
7
- import driftIDL from '../src/idl/drift.json';
7
+ import velocityIDL from '../src/idl/velocity.json';
8
8
  import assert from 'assert';
9
9
  import { Wallet } from '../src';
10
10
 
@@ -40,7 +40,7 @@ async function testGrpcUserAccountSubscriberV1VsV2() {
40
40
  }
41
41
  );
42
42
 
43
- const program = new Program(driftIDL as Idl, programId, provider);
43
+ const program = new Program(velocityIDL as Idl, programId, provider);
44
44
 
45
45
  const grpcConfigs = {
46
46
  endpoint: GRPC_ENDPOINT,
@@ -18,7 +18,7 @@ import {
18
18
  Program,
19
19
  ProgramAccount,
20
20
  } from '@coral-xyz/anchor';
21
- import driftIDL from '../src/idl/drift.json';
21
+ import velocityIDL from '../src/idl/velocity.json';
22
22
  import { grpcMultiUserAccountSubscriber } from '../src/accounts/grpcMultiUserAccountSubscriber';
23
23
 
24
24
  const GRPC_ENDPOINT = process.env.GRPC_ENDPOINT;
@@ -26,7 +26,7 @@ const TOKEN = process.env.TOKEN;
26
26
  const RPC_ENDPOINT = process.env.RPC_ENDPOINT;
27
27
 
28
28
  async function initializeSingleGrpcClient() {
29
- console.log('🚀 Initializing single gRPC Drift Client...');
29
+ console.log('🚀 Initializing single gRPC Velocity Client...');
30
30
 
31
31
  const connection = new Connection(RPC_ENDPOINT);
32
32
  const wallet = new Wallet(new Keypair());
@@ -42,7 +42,7 @@ async function initializeSingleGrpcClient() {
42
42
  }
43
43
  );
44
44
 
45
- const program = new Program(driftIDL as Idl, programId, provider);
45
+ const program = new Program(velocityIDL as Idl, programId, provider);
46
46
 
47
47
  // Get perp market accounts
48
48
  const allPerpMarketProgramAccounts =
@@ -8,10 +8,10 @@ let version = fs.readFileSync(versionFilePath, 'utf8');
8
8
  version = version.replace(/\n/g, '');
9
9
 
10
10
  const filesToReplace = [
11
- // sdk/src/idl/drift.json
12
- path.join(__dirname, '..', 'src', 'idl', 'drift.json'),
13
- // programs/drift/Cargo.toml
14
- path.join(__dirname, '..', '..', 'programs', 'drift', 'Cargo.toml'),
11
+ // sdk/src/idl/velocity.json
12
+ path.join(__dirname, '..', 'src', 'idl', 'velocity.json'),
13
+ // programs/velocity/Cargo.toml
14
+ path.join(__dirname, '..', '..', 'programs', 'velocity', 'Cargo.toml'),
15
15
  // Cargo.lock
16
16
  path.join(__dirname, '..', '..', 'Cargo.lock'),
17
17
  ]
@@ -6,7 +6,7 @@ import {
6
6
  Program,
7
7
  ProgramAccount,
8
8
  } from '@coral-xyz/anchor';
9
- import driftIDL from '../src/idl/drift.json';
9
+ import velocityIDL from '../src/idl/velocity.json';
10
10
  import {
11
11
  VELOCITY_PROGRAM_ID,
12
12
  PerpMarketAccount,
@@ -53,7 +53,7 @@ async function main() {
53
53
  commitment: 'processed',
54
54
  });
55
55
  const programId = new PublicKey(VELOCITY_PROGRAM_ID);
56
- const program = new Program(driftIDL as Idl, programId, provider);
56
+ const program = new Program(velocityIDL as Idl, programId, provider);
57
57
 
58
58
  // Discover markets and oracles (like the example test script)
59
59
  const allPerpMarketProgramAccounts =
@@ -109,7 +109,7 @@ export class grpcProgramAccountSubscriber<
109
109
  const request: SubscribeRequest = {
110
110
  slots: {},
111
111
  accounts: {
112
- drift: {
112
+ velocity: {
113
113
  account: [],
114
114
  owner: [this.program.programId.toBase58()],
115
115
  filters,
@@ -204,10 +204,3 @@ export class grpcVelocityClientAccountSubscriber extends WebSocketVelocityClient
204
204
  return true;
205
205
  }
206
206
  }
207
-
208
- /** @deprecated Use `grpcVelocityClientAccountSubscriber` instead. `grpcDriftClientAccountSubscriber` will be removed in a future major. */
209
- export const grpcDriftClientAccountSubscriber =
210
- grpcVelocityClientAccountSubscriber;
211
- /** @deprecated Use `grpcVelocityClientAccountSubscriber` instead. `grpcDriftClientAccountSubscriber` will be removed in a future major. */
212
- export type grpcDriftClientAccountSubscriber =
213
- grpcVelocityClientAccountSubscriber;
@@ -382,7 +382,7 @@ export class grpcVelocityClientAccountSubscriberV2
382
382
  return undefined;
383
383
  }
384
384
 
385
- if (!perpMarketAccount.data.amm.oracle.equals(oracle)) {
385
+ if (!perpMarketAccount.data.oracle.equals(oracle)) {
386
386
  // If the oracle has changed, we need to update the oracle map in background
387
387
  this.setPerpOracleMap();
388
388
  }
@@ -418,13 +418,13 @@ export class grpcVelocityClientAccountSubscriberV2
418
418
  }
419
419
  const perpMarketAccount = perpMarket.data;
420
420
  const perpMarketIndex = perpMarketAccount.marketIndex;
421
- const oracle = perpMarketAccount.amm.oracle;
422
- const oracleId = getOracleId(oracle, perpMarket.data.amm.oracleSource);
421
+ const oracle = perpMarketAccount.oracle;
422
+ const oracleId = getOracleId(oracle, perpMarket.data.oracleSource);
423
423
  if (!this.oracleMultiSubscriber?.getAccountDataMap().has(oracleId)) {
424
424
  addOraclePromises.push(
425
425
  this.addOracle({
426
426
  publicKey: oracle,
427
- source: perpMarket.data.amm.oracleSource,
427
+ source: perpMarket.data.oracleSource,
428
428
  })
429
429
  );
430
430
  }
@@ -753,10 +753,3 @@ export class grpcVelocityClientAccountSubscriberV2
753
753
  this.spotOracleStringMap.clear();
754
754
  }
755
755
  }
756
-
757
- /** @deprecated Use `grpcVelocityClientAccountSubscriberV2` instead. `grpcDriftClientAccountSubscriberV2` will be removed in a future major. */
758
- export const grpcDriftClientAccountSubscriberV2 =
759
- grpcVelocityClientAccountSubscriberV2;
760
- /** @deprecated Use `grpcVelocityClientAccountSubscriberV2` instead. `grpcDriftClientAccountSubscriberV2` will be removed in a future major. */
761
- export type grpcDriftClientAccountSubscriberV2 =
762
- grpcVelocityClientAccountSubscriberV2;
@@ -126,7 +126,7 @@ export class LaserstreamProgramAccountSubscriber<
126
126
  const request: LaserSubscribeRequest = {
127
127
  slots: {},
128
128
  accounts: {
129
- drift: {
129
+ velocity: {
130
130
  account: [],
131
131
  owner: [this.program.programId.toBase58()],
132
132
  filters,
@@ -486,13 +486,13 @@ export class PollingVelocityClientAccountSubscriber
486
486
  for (const perpMarket of perpMarkets) {
487
487
  const perpMarketAccount = perpMarket.data;
488
488
  const perpMarketIndex = perpMarketAccount.marketIndex;
489
- const oracle = perpMarketAccount.amm.oracle;
490
- const oracleId = getOracleId(oracle, perpMarketAccount.amm.oracleSource);
489
+ const oracle = perpMarketAccount.oracle;
490
+ const oracleId = getOracleId(oracle, perpMarketAccount.oracleSource);
491
491
  if (!this.oracles.has(oracleId)) {
492
492
  oraclePromises.push(
493
493
  this.addOracle({
494
494
  publicKey: oracle,
495
- source: perpMarketAccount.amm.oracleSource,
495
+ source: perpMarketAccount.oracleSource,
496
496
  })
497
497
  );
498
498
  }
@@ -613,7 +613,7 @@ export class PollingVelocityClientAccountSubscriber
613
613
  return undefined;
614
614
  }
615
615
 
616
- if (!perpMarketAccount.data.amm.oracle.equals(oracle)) {
616
+ if (!perpMarketAccount.data.oracle.equals(oracle)) {
617
617
  // If the oracle has changed, we need to update the oracle map in background
618
618
  this.setPerpOracleMap();
619
619
  }
@@ -643,10 +643,3 @@ export class PollingVelocityClientAccountSubscriber
643
643
  this.accountLoader.updatePollingFrequency(pollingFrequency);
644
644
  }
645
645
  }
646
-
647
- /** @deprecated Use `PollingVelocityClientAccountSubscriber` instead. `PollingDriftClientAccountSubscriber` will be removed in a future major. */
648
- export const PollingDriftClientAccountSubscriber =
649
- PollingVelocityClientAccountSubscriber;
650
- /** @deprecated Use `PollingVelocityClientAccountSubscriber` instead. `PollingDriftClientAccountSubscriber` will be removed in a future major. */
651
- export type PollingDriftClientAccountSubscriber =
652
- PollingVelocityClientAccountSubscriber;
@@ -5,8 +5,8 @@
5
5
  * market, oracle, and state accounts cached in memory. `User` uses a `UserAccountSubscriber`
6
6
  * for the individual User account. All subscribers implement the interfaces defined here.
7
7
  *
8
- * Implementations: `webSocketDriftClientAccountSubscriber.ts` (default),
9
- * `pollingDriftClientAccountSubscriber.ts`, `bulkAccountLoader.ts` (batched RPC).
8
+ * Implementations: `webSocketVelocityClientAccountSubscriber.ts` (default),
9
+ * `pollingVelocityClientAccountSubscriber.ts`, `bulkAccountLoader.ts` (batched RPC).
10
10
  */
11
11
  import {
12
12
  SpotMarketAccount,
@@ -65,9 +65,6 @@ export interface VelocityClientAccountEvents {
65
65
  error: (e: Error) => void;
66
66
  }
67
67
 
68
- /** @deprecated Use `VelocityClientAccountEvents` instead. `DriftClientAccountEvents` will be removed in a future major. */
69
- export interface DriftClientAccountEvents extends VelocityClientAccountEvents {}
70
-
71
68
  export interface VelocityClientAccountSubscriber {
72
69
  eventEmitter: StrictEventEmitter<EventEmitter, VelocityClientAccountEvents>;
73
70
  isSubscribed: boolean;
@@ -104,10 +101,6 @@ export interface VelocityClientAccountSubscriber {
104
101
  updateAccountLoaderPollingFrequency?: (pollingFrequency: number) => void;
105
102
  }
106
103
 
107
- /** @deprecated Use `VelocityClientAccountSubscriber` instead. `DriftClientAccountSubscriber` will be removed in a future major. */
108
- export interface DriftClientAccountSubscriber
109
- extends VelocityClientAccountSubscriber {}
110
-
111
104
  export enum DelistedMarketSetting {
112
105
  Unsubscribe,
113
106
  Subscribe,
@@ -21,8 +21,8 @@ export function findDelistedPerpMarketsAndOracles(
21
21
  if (isVariant(perpMarket.data.status, 'delisted')) {
22
22
  delistedPerpMarketIndexes.push(perpMarket.data.marketIndex);
23
23
  delistedOracles.push({
24
- publicKey: perpMarket.data.amm.oracle,
25
- source: perpMarket.data.amm.oracleSource,
24
+ publicKey: perpMarket.data.oracle,
25
+ source: perpMarket.data.oracleSource,
26
26
  });
27
27
  }
28
28
  }
@@ -553,13 +553,13 @@ export class WebSocketVelocityClientAccountSubscriber
553
553
  }
554
554
  const perpMarketAccount = perpMarket.data;
555
555
  const perpMarketIndex = perpMarketAccount.marketIndex;
556
- const oracle = perpMarketAccount.amm.oracle;
557
- const oracleId = getOracleId(oracle, perpMarket.data.amm.oracleSource);
556
+ const oracle = perpMarketAccount.oracle;
557
+ const oracleId = getOracleId(oracle, perpMarket.data.oracleSource);
558
558
  if (!this.oracleSubscribers.has(oracleId)) {
559
559
  addOraclePromises.push(
560
560
  this.addOracle({
561
561
  publicKey: oracle,
562
- source: perpMarket.data.amm.oracleSource,
562
+ source: perpMarket.data.oracleSource,
563
563
  })
564
564
  );
565
565
  }
@@ -684,7 +684,7 @@ export class WebSocketVelocityClientAccountSubscriber
684
684
  return undefined;
685
685
  }
686
686
 
687
- if (!perpMarketAccount.data.amm.oracle.equals(oracle)) {
687
+ if (!perpMarketAccount.data.oracle.equals(oracle)) {
688
688
  // If the oracle has changed, we need to update the oracle map in background
689
689
  this.setPerpOracleMap();
690
690
  }
@@ -710,10 +710,3 @@ export class WebSocketVelocityClientAccountSubscriber
710
710
  return this.getOraclePriceDataAndSlot(oracleId);
711
711
  }
712
712
  }
713
-
714
- /** @deprecated Use `WebSocketVelocityClientAccountSubscriber` instead. `WebSocketDriftClientAccountSubscriber` will be removed in a future major. */
715
- export const WebSocketDriftClientAccountSubscriber =
716
- WebSocketVelocityClientAccountSubscriber;
717
- /** @deprecated Use `WebSocketVelocityClientAccountSubscriber` instead. `WebSocketDriftClientAccountSubscriber` will be removed in a future major. */
718
- export type WebSocketDriftClientAccountSubscriber =
719
- WebSocketVelocityClientAccountSubscriber;
@@ -600,13 +600,13 @@ export class WebSocketVelocityClientAccountSubscriberV2
600
600
  }
601
601
  const perpMarketAccount = perpMarket.data;
602
602
  const perpMarketIndex = perpMarketAccount.marketIndex;
603
- const oracle = perpMarketAccount.amm.oracle;
604
- const oracleId = getOracleId(oracle, perpMarket.data.amm.oracleSource);
603
+ const oracle = perpMarketAccount.oracle;
604
+ const oracleId = getOracleId(oracle, perpMarket.data.oracleSource);
605
605
  if (!this.oracleSubscribers.has(oracleId)) {
606
606
  addOraclePromises.push(
607
607
  this.addOracle({
608
608
  publicKey: oracle,
609
- source: perpMarket.data.amm.oracleSource,
609
+ source: perpMarket.data.oracleSource,
610
610
  })
611
611
  );
612
612
  }
@@ -720,7 +720,7 @@ export class WebSocketVelocityClientAccountSubscriberV2
720
720
  return undefined;
721
721
  }
722
722
 
723
- if (!perpMarketAccount.data.amm.oracle.equals(oracle)) {
723
+ if (!perpMarketAccount.data.oracle.equals(oracle)) {
724
724
  // If the oracle has changed, we need to update the oracle map in background
725
725
  this.setPerpOracleMap();
726
726
  }
@@ -746,10 +746,3 @@ export class WebSocketVelocityClientAccountSubscriberV2
746
746
  return this.getOraclePriceDataAndSlot(oracleId);
747
747
  }
748
748
  }
749
-
750
- /** @deprecated Use `WebSocketVelocityClientAccountSubscriberV2` instead. `WebSocketDriftClientAccountSubscriberV2` will be removed in a future major. */
751
- export const WebSocketDriftClientAccountSubscriberV2 =
752
- WebSocketVelocityClientAccountSubscriberV2;
753
- /** @deprecated Use `WebSocketVelocityClientAccountSubscriberV2` instead. `WebSocketDriftClientAccountSubscriberV2` will be removed in a future major. */
754
- export type WebSocketDriftClientAccountSubscriberV2 =
755
- WebSocketVelocityClientAccountSubscriberV2;
@@ -1,5 +1,5 @@
1
1
  /**
2
- * PDA derivation helpers for all Drift protocol accounts.
2
+ * PDA derivation helpers for all Velocity protocol accounts.
3
3
  * Covers: User, UserStats, PerpMarket, SpotMarket, InsuranceFundStake,
4
4
  * HighLeverageModeConfig, State, and vault PDAs.
5
5
  * All functions are pure (no RPC calls).
@@ -18,24 +18,17 @@ export async function getVelocityStateAccountPublicKeyAndNonce(
18
18
  programId: PublicKey
19
19
  ): Promise<[PublicKey, number]> {
20
20
  return PublicKey.findProgramAddress(
21
- [Buffer.from(anchor.utils.bytes.utf8.encode('drift_state'))],
21
+ [Buffer.from(anchor.utils.bytes.utf8.encode('velocity_state'))],
22
22
  programId
23
23
  );
24
24
  }
25
25
 
26
- /** @deprecated Use `getVelocityStateAccountPublicKeyAndNonce` instead. `getDriftStateAccountPublicKeyAndNonce` will be removed in a future major. */
27
- export const getDriftStateAccountPublicKeyAndNonce =
28
- getVelocityStateAccountPublicKeyAndNonce;
29
-
30
26
  export async function getVelocityStateAccountPublicKey(
31
27
  programId: PublicKey
32
28
  ): Promise<PublicKey> {
33
29
  return (await getVelocityStateAccountPublicKeyAndNonce(programId))[0];
34
30
  }
35
31
 
36
- /** @deprecated Use `getVelocityStateAccountPublicKey` instead. `getDriftStateAccountPublicKey` will be removed in a future major. */
37
- export const getDriftStateAccountPublicKey = getVelocityStateAccountPublicKey;
38
-
39
32
  export async function getUserAccountPublicKeyAndNonce(
40
33
  programId: PublicKey,
41
34
  authority: PublicKey,
@@ -218,14 +211,11 @@ export function getInsuranceFundStakeAccountPublicKey(
218
211
 
219
212
  export function getVelocitySignerPublicKey(programId: PublicKey): PublicKey {
220
213
  return PublicKey.findProgramAddressSync(
221
- [Buffer.from(anchor.utils.bytes.utf8.encode('drift_signer'))],
214
+ [Buffer.from(anchor.utils.bytes.utf8.encode('velocity_signer'))],
222
215
  programId
223
216
  )[0];
224
217
  }
225
218
 
226
- /** @deprecated Use `getVelocitySignerPublicKey` instead. `getDriftSignerPublicKey` will be removed in a future major. */
227
- export const getDriftSignerPublicKey = getVelocitySignerPublicKey;
228
-
229
219
  export function getReferrerNamePublicKeySync(
230
220
  programId: PublicKey,
231
221
  nameBuffer: number[]