@velocity-exchange/sdk 0.0.2 → 0.0.5

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 (192) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/README.md +5 -6
  3. package/bunfig.toml +3 -0
  4. package/lib/browser/auctionSubscriber/auctionSubscriber.d.ts +4 -2
  5. package/lib/browser/auctionSubscriber/auctionSubscriber.js +9 -4
  6. package/lib/browser/auctionSubscriber/auctionSubscriberGrpc.d.ts +4 -2
  7. package/lib/browser/auctionSubscriber/auctionSubscriberGrpc.js +9 -4
  8. package/lib/browser/auctionSubscriber/types.d.ts +4 -2
  9. package/lib/browser/config.d.ts +3 -8
  10. package/lib/browser/config.js +14 -22
  11. package/lib/browser/constituentMap/constituentMap.d.ts +4 -2
  12. package/lib/browser/constituentMap/constituentMap.js +14 -10
  13. package/lib/browser/core/VelocityCore.d.ts +4 -0
  14. package/lib/browser/core/VelocityCore.js +3 -1
  15. package/lib/browser/decode/user.js +5 -5
  16. package/lib/browser/dlob/DLOB.js +1 -1
  17. package/lib/browser/dlob/DLOBNode.js +1 -2
  18. package/lib/browser/dlob/DLOBSubscriber.d.ts +3 -1
  19. package/lib/browser/dlob/DLOBSubscriber.js +19 -10
  20. package/lib/browser/dlob/types.d.ts +3 -1
  21. package/lib/browser/idl/drift.d.ts +59 -6
  22. package/lib/browser/idl/drift.json +6049 -806
  23. package/lib/browser/math/auction.d.ts +1 -1
  24. package/lib/browser/math/auction.js +2 -9
  25. package/lib/browser/math/orders.js +3 -3
  26. package/lib/browser/orderSubscriber/OrderSubscriber.d.ts +3 -1
  27. package/lib/browser/orderSubscriber/OrderSubscriber.js +19 -11
  28. package/lib/browser/orderSubscriber/types.d.ts +3 -1
  29. package/lib/browser/priorityFee/priorityFeeSubscriber.d.ts +4 -2
  30. package/lib/browser/priorityFee/priorityFeeSubscriber.js +15 -11
  31. package/lib/browser/priorityFee/priorityFeeSubscriberMap.d.ts +11 -9
  32. package/lib/browser/priorityFee/priorityFeeSubscriberMap.js +18 -18
  33. package/lib/browser/priorityFee/types.d.ts +9 -5
  34. package/lib/browser/priorityFee/types.js +1 -1
  35. package/lib/browser/swift/grpcSignedMsgUserAccountSubscriber.d.ts +3 -12
  36. package/lib/browser/swift/grpcSignedMsgUserAccountSubscriber.js +3 -9
  37. package/lib/browser/swift/signedMsgUserAccountSubscriber.d.ts +11 -8
  38. package/lib/browser/swift/signedMsgUserAccountSubscriber.js +10 -5
  39. package/lib/browser/swift/swiftOrderSubscriber.d.ts +7 -4
  40. package/lib/browser/swift/swiftOrderSubscriber.js +19 -11
  41. package/lib/browser/types.d.ts +2 -2
  42. package/lib/browser/user.d.ts +3 -1
  43. package/lib/browser/user.js +93 -86
  44. package/lib/browser/userConfig.d.ts +4 -2
  45. package/lib/browser/userMap/referrerMap.d.ts +5 -3
  46. package/lib/browser/userMap/referrerMap.js +18 -14
  47. package/lib/browser/userMap/revenueShareEscrowMap.d.ts +5 -3
  48. package/lib/browser/userMap/revenueShareEscrowMap.js +18 -14
  49. package/lib/browser/userMap/userMap.d.ts +3 -1
  50. package/lib/browser/userMap/userMap.js +24 -19
  51. package/lib/browser/userMap/userMapConfig.d.ts +4 -2
  52. package/lib/browser/userMap/userStatsMap.d.ts +5 -3
  53. package/lib/browser/userMap/userStatsMap.js +15 -11
  54. package/lib/browser/userStats.d.ts +3 -1
  55. package/lib/browser/userStats.js +21 -15
  56. package/lib/browser/userStatsConfig.d.ts +4 -2
  57. package/lib/browser/util/deprecatedAlias.d.ts +26 -0
  58. package/lib/browser/util/deprecatedAlias.js +10 -0
  59. package/lib/browser/velocityClient.d.ts +6 -6
  60. package/lib/browser/velocityClient.js +6 -6
  61. package/lib/browser/velocityClientConfig.d.ts +7 -4
  62. package/lib/node/auctionSubscriber/auctionSubscriber.d.ts +4 -2
  63. package/lib/node/auctionSubscriber/auctionSubscriber.d.ts.map +1 -1
  64. package/lib/node/auctionSubscriber/auctionSubscriber.js +9 -4
  65. package/lib/node/auctionSubscriber/auctionSubscriberGrpc.d.ts +4 -2
  66. package/lib/node/auctionSubscriber/auctionSubscriberGrpc.d.ts.map +1 -1
  67. package/lib/node/auctionSubscriber/auctionSubscriberGrpc.js +9 -4
  68. package/lib/node/auctionSubscriber/types.d.ts +4 -2
  69. package/lib/node/auctionSubscriber/types.d.ts.map +1 -1
  70. package/lib/node/config.d.ts +3 -8
  71. package/lib/node/config.d.ts.map +1 -1
  72. package/lib/node/config.js +14 -22
  73. package/lib/node/constituentMap/constituentMap.d.ts +4 -2
  74. package/lib/node/constituentMap/constituentMap.d.ts.map +1 -1
  75. package/lib/node/constituentMap/constituentMap.js +14 -10
  76. package/lib/node/core/VelocityCore.d.ts +4 -0
  77. package/lib/node/core/VelocityCore.d.ts.map +1 -1
  78. package/lib/node/core/VelocityCore.js +3 -1
  79. package/lib/node/decode/user.js +5 -5
  80. package/lib/node/dlob/DLOB.js +1 -1
  81. package/lib/node/dlob/DLOBNode.js +1 -2
  82. package/lib/node/dlob/DLOBSubscriber.d.ts +3 -1
  83. package/lib/node/dlob/DLOBSubscriber.d.ts.map +1 -1
  84. package/lib/node/dlob/DLOBSubscriber.js +19 -10
  85. package/lib/node/dlob/types.d.ts +3 -1
  86. package/lib/node/dlob/types.d.ts.map +1 -1
  87. package/lib/node/idl/drift.d.ts +59 -6
  88. package/lib/node/idl/drift.d.ts.map +1 -1
  89. package/lib/node/idl/drift.json +6049 -806
  90. package/lib/node/math/auction.d.ts +1 -1
  91. package/lib/node/math/auction.d.ts.map +1 -1
  92. package/lib/node/math/auction.js +2 -9
  93. package/lib/node/math/orders.d.ts.map +1 -1
  94. package/lib/node/math/orders.js +3 -3
  95. package/lib/node/orderSubscriber/OrderSubscriber.d.ts +3 -1
  96. package/lib/node/orderSubscriber/OrderSubscriber.d.ts.map +1 -1
  97. package/lib/node/orderSubscriber/OrderSubscriber.js +19 -11
  98. package/lib/node/orderSubscriber/types.d.ts +3 -1
  99. package/lib/node/orderSubscriber/types.d.ts.map +1 -1
  100. package/lib/node/priorityFee/priorityFeeSubscriber.d.ts +4 -2
  101. package/lib/node/priorityFee/priorityFeeSubscriber.d.ts.map +1 -1
  102. package/lib/node/priorityFee/priorityFeeSubscriber.js +15 -11
  103. package/lib/node/priorityFee/priorityFeeSubscriberMap.d.ts +11 -9
  104. package/lib/node/priorityFee/priorityFeeSubscriberMap.d.ts.map +1 -1
  105. package/lib/node/priorityFee/priorityFeeSubscriberMap.js +18 -18
  106. package/lib/node/priorityFee/types.d.ts +9 -5
  107. package/lib/node/priorityFee/types.d.ts.map +1 -1
  108. package/lib/node/priorityFee/types.js +1 -1
  109. package/lib/node/swift/grpcSignedMsgUserAccountSubscriber.d.ts +3 -12
  110. package/lib/node/swift/grpcSignedMsgUserAccountSubscriber.d.ts.map +1 -1
  111. package/lib/node/swift/grpcSignedMsgUserAccountSubscriber.js +3 -9
  112. package/lib/node/swift/signedMsgUserAccountSubscriber.d.ts +11 -8
  113. package/lib/node/swift/signedMsgUserAccountSubscriber.d.ts.map +1 -1
  114. package/lib/node/swift/signedMsgUserAccountSubscriber.js +10 -5
  115. package/lib/node/swift/swiftOrderSubscriber.d.ts +7 -4
  116. package/lib/node/swift/swiftOrderSubscriber.d.ts.map +1 -1
  117. package/lib/node/swift/swiftOrderSubscriber.js +19 -11
  118. package/lib/node/types.d.ts +2 -2
  119. package/lib/node/types.d.ts.map +1 -1
  120. package/lib/node/user.d.ts +3 -1
  121. package/lib/node/user.d.ts.map +1 -1
  122. package/lib/node/user.js +93 -86
  123. package/lib/node/userConfig.d.ts +4 -2
  124. package/lib/node/userConfig.d.ts.map +1 -1
  125. package/lib/node/userMap/referrerMap.d.ts +5 -3
  126. package/lib/node/userMap/referrerMap.d.ts.map +1 -1
  127. package/lib/node/userMap/referrerMap.js +18 -14
  128. package/lib/node/userMap/revenueShareEscrowMap.d.ts +5 -3
  129. package/lib/node/userMap/revenueShareEscrowMap.d.ts.map +1 -1
  130. package/lib/node/userMap/revenueShareEscrowMap.js +18 -14
  131. package/lib/node/userMap/userMap.d.ts +3 -1
  132. package/lib/node/userMap/userMap.d.ts.map +1 -1
  133. package/lib/node/userMap/userMap.js +24 -19
  134. package/lib/node/userMap/userMapConfig.d.ts +4 -2
  135. package/lib/node/userMap/userMapConfig.d.ts.map +1 -1
  136. package/lib/node/userMap/userStatsMap.d.ts +5 -3
  137. package/lib/node/userMap/userStatsMap.d.ts.map +1 -1
  138. package/lib/node/userMap/userStatsMap.js +15 -11
  139. package/lib/node/userStats.d.ts +3 -1
  140. package/lib/node/userStats.d.ts.map +1 -1
  141. package/lib/node/userStats.js +21 -15
  142. package/lib/node/userStatsConfig.d.ts +4 -2
  143. package/lib/node/userStatsConfig.d.ts.map +1 -1
  144. package/lib/node/util/deprecatedAlias.d.ts +27 -0
  145. package/lib/node/util/deprecatedAlias.d.ts.map +1 -0
  146. package/lib/node/util/deprecatedAlias.js +10 -0
  147. package/lib/node/velocityClient.d.ts +6 -6
  148. package/lib/node/velocityClient.d.ts.map +1 -1
  149. package/lib/node/velocityClient.js +6 -6
  150. package/lib/node/velocityClientConfig.d.ts +7 -4
  151. package/lib/node/velocityClientConfig.d.ts.map +1 -1
  152. package/package.json +1 -1
  153. package/src/auctionSubscriber/auctionSubscriber.ts +12 -6
  154. package/src/auctionSubscriber/auctionSubscriberGrpc.ts +12 -6
  155. package/src/auctionSubscriber/types.ts +5 -2
  156. package/src/config.ts +38 -27
  157. package/src/constituentMap/constituentMap.ts +17 -9
  158. package/src/core/VelocityCore.ts +6 -0
  159. package/src/decode/user.ts +5 -5
  160. package/src/dlob/DLOB.ts +1 -1
  161. package/src/dlob/DLOBNode.ts +1 -1
  162. package/src/dlob/DLOBSubscriber.ts +21 -11
  163. package/src/dlob/types.ts +3 -1
  164. package/src/idl/drift.json +23940 -18697
  165. package/src/idl/drift.ts +59 -6
  166. package/src/math/auction.ts +3 -10
  167. package/src/math/orders.ts +3 -6
  168. package/src/orderSubscriber/OrderSubscriber.ts +17 -7
  169. package/src/orderSubscriber/types.ts +3 -1
  170. package/src/priorityFee/priorityFeeSubscriber.ts +13 -9
  171. package/src/priorityFee/priorityFeeSubscriberMap.ts +23 -25
  172. package/src/priorityFee/types.ts +19 -9
  173. package/src/swift/grpcSignedMsgUserAccountSubscriber.ts +10 -23
  174. package/src/swift/signedMsgUserAccountSubscriber.ts +22 -14
  175. package/src/swift/swiftOrderSubscriber.ts +24 -16
  176. package/src/types.ts +2 -2
  177. package/src/user.ts +93 -82
  178. package/src/userConfig.ts +5 -2
  179. package/src/userMap/referrerMap.ts +19 -15
  180. package/src/userMap/revenueShareEscrowMap.ts +20 -16
  181. package/src/userMap/userMap.ts +20 -15
  182. package/src/userMap/userMapConfig.ts +6 -3
  183. package/src/userMap/userStatsMap.ts +19 -15
  184. package/src/userStats.ts +13 -7
  185. package/src/userStatsConfig.ts +5 -2
  186. package/src/util/deprecatedAlias.ts +21 -0
  187. package/src/velocityClient.ts +12 -12
  188. package/src/velocityClientConfig.ts +27 -42
  189. package/tests/auctions/test.ts +4 -4
  190. package/tests/decode/test.ts +1 -1
  191. package/tests/dlob/test.ts +5 -5
  192. package/tests/user/helpers.ts +1 -1
@@ -67,35 +67,38 @@ export type VelocityClientConfig = {
67
67
  /** @deprecated Use `VelocityClientConfig` instead. `DriftClientConfig` will be removed in a future major. */
68
68
  export type DriftClientConfig = VelocityClientConfig;
69
69
 
70
+ type GrpcVelocityClientAccountSubscriberCtor = new (
71
+ grpcConfigs: GrpcConfigs,
72
+ program: Program,
73
+ perpMarketIndexes: number[],
74
+ spotMarketIndexes: number[],
75
+ oracleInfos: OracleInfo[],
76
+ shouldFindAllMarketsAndOracles: boolean,
77
+ delistedMarketSetting: DelistedMarketSetting
78
+ ) =>
79
+ | grpcVelocityClientAccountSubscriberV2
80
+ | grpcVelocityClientAccountSubscriber;
81
+
82
+ type WsVelocityClientAccountSubscriberCtor = new (
83
+ program: Program,
84
+ perpMarketIndexes: number[],
85
+ spotMarketIndexes: number[],
86
+ oracleInfos: OracleInfo[],
87
+ shouldFindAllMarketsAndOracles: boolean,
88
+ delistedMarketSetting: DelistedMarketSetting
89
+ ) =>
90
+ | WebSocketVelocityClientAccountSubscriber
91
+ | WebSocketVelocityClientAccountSubscriberV2;
92
+
70
93
  export type VelocityClientSubscriptionConfig =
71
94
  | {
72
95
  type: 'grpc';
73
96
  grpcConfigs: GrpcConfigs;
74
97
  resubTimeoutMs?: number;
75
98
  logResubMessages?: boolean;
76
- velocityClientAccountSubscriber?: new (
77
- grpcConfigs: GrpcConfigs,
78
- program: Program,
79
- perpMarketIndexes: number[],
80
- spotMarketIndexes: number[],
81
- oracleInfos: OracleInfo[],
82
- shouldFindAllMarketsAndOracles: boolean,
83
- delistedMarketSetting: DelistedMarketSetting
84
- ) =>
85
- | grpcVelocityClientAccountSubscriberV2
86
- | grpcVelocityClientAccountSubscriber;
99
+ velocityClientAccountSubscriber?: GrpcVelocityClientAccountSubscriberCtor;
87
100
  /** @deprecated Use `velocityClientAccountSubscriber` instead. `driftClientAccountSubscriber` will be removed in a future major. */
88
- driftClientAccountSubscriber?: new (
89
- grpcConfigs: GrpcConfigs,
90
- program: Program,
91
- perpMarketIndexes: number[],
92
- spotMarketIndexes: number[],
93
- oracleInfos: OracleInfo[],
94
- shouldFindAllMarketsAndOracles: boolean,
95
- delistedMarketSetting: DelistedMarketSetting
96
- ) =>
97
- | grpcVelocityClientAccountSubscriberV2
98
- | grpcVelocityClientAccountSubscriber;
101
+ driftClientAccountSubscriber?: GrpcVelocityClientAccountSubscriberCtor;
99
102
  grpcMultiUserAccountSubscriber?: grpcMultiUserAccountSubscriber;
100
103
  }
101
104
  | {
@@ -113,27 +116,9 @@ export type VelocityClientSubscriptionConfig =
113
116
  commitment?: Commitment
114
117
  ) => WebSocketAccountSubscriberV2<any> | WebSocketAccountSubscriber<any>;
115
118
  /** If you use V2 here, whatever you pass for perpMarketAccountSubscriber will be ignored and it will use v2 under the hood regardless */
116
- velocityClientAccountSubscriber?: new (
117
- program: Program,
118
- perpMarketIndexes: number[],
119
- spotMarketIndexes: number[],
120
- oracleInfos: OracleInfo[],
121
- shouldFindAllMarketsAndOracles: boolean,
122
- delistedMarketSetting: DelistedMarketSetting
123
- ) =>
124
- | WebSocketVelocityClientAccountSubscriber
125
- | WebSocketVelocityClientAccountSubscriberV2;
119
+ velocityClientAccountSubscriber?: WsVelocityClientAccountSubscriberCtor;
126
120
  /** @deprecated Use `velocityClientAccountSubscriber` instead. `driftClientAccountSubscriber` will be removed in a future major. */
127
- driftClientAccountSubscriber?: new (
128
- program: Program,
129
- perpMarketIndexes: number[],
130
- spotMarketIndexes: number[],
131
- oracleInfos: OracleInfo[],
132
- shouldFindAllMarketsAndOracles: boolean,
133
- delistedMarketSetting: DelistedMarketSetting
134
- ) =>
135
- | WebSocketVelocityClientAccountSubscriber
136
- | WebSocketVelocityClientAccountSubscriberV2;
121
+ driftClientAccountSubscriber?: WsVelocityClientAccountSubscriberCtor;
137
122
  }
138
123
  | {
139
124
  type: 'polling';
@@ -28,7 +28,7 @@ describe('Auction Tests', () => {
28
28
  oracleOrderParams.auctionEndPrice.eq(new BN(10).mul(PRICE_PRECISION))
29
29
  );
30
30
  assert(
31
- oracleOrderParams.oraclePriceOffset === 20 * PRICE_PRECISION.toNumber()
31
+ oracleOrderParams.oraclePriceOffset.eq(new BN(20).mul(PRICE_PRECISION))
32
32
  );
33
33
 
34
34
  oracleOrderParams = deriveOracleAuctionParams({
@@ -41,7 +41,7 @@ describe('Auction Tests', () => {
41
41
 
42
42
  assert(oracleOrderParams.auctionStartPrice.eq(new BN(0)));
43
43
  assert(oracleOrderParams.auctionEndPrice.eq(new BN(0)));
44
- assert(oracleOrderParams.oraclePriceOffset === 1);
44
+ assert(oracleOrderParams.oraclePriceOffset.eq(new BN(1)));
45
45
 
46
46
  oraclePrice = new BN(100).mul(PRICE_PRECISION);
47
47
  auctionStartPrice = new BN(110).mul(PRICE_PRECISION);
@@ -63,7 +63,7 @@ describe('Auction Tests', () => {
63
63
  oracleOrderParams.auctionEndPrice.eq(new BN(-10).mul(PRICE_PRECISION))
64
64
  );
65
65
  assert(
66
- oracleOrderParams.oraclePriceOffset === -20 * PRICE_PRECISION.toNumber()
66
+ oracleOrderParams.oraclePriceOffset.eq(new BN(-20).mul(PRICE_PRECISION))
67
67
  );
68
68
 
69
69
  oracleOrderParams = deriveOracleAuctionParams({
@@ -76,6 +76,6 @@ describe('Auction Tests', () => {
76
76
 
77
77
  assert(oracleOrderParams.auctionStartPrice.eq(new BN(0)));
78
78
  assert(oracleOrderParams.auctionEndPrice.eq(new BN(0)));
79
- assert(oracleOrderParams.oraclePriceOffset === -1);
79
+ assert(oracleOrderParams.oraclePriceOffset.eq(new BN(-1)));
80
80
  });
81
81
  });
@@ -221,7 +221,7 @@ function testOrder(anchor: Order, custom: Order) {
221
221
  );
222
222
  assert(anchor.postOnly === custom.postOnly);
223
223
  assert(anchor.immediateOrCancel === custom.immediateOrCancel);
224
- assert(anchor.oraclePriceOffset === custom.oraclePriceOffset);
224
+ assert(anchor.oraclePriceOffset.eq(custom.oraclePriceOffset));
225
225
  assert(anchor.auctionDuration === custom.auctionDuration);
226
226
  assert(anchor.auctionStartPrice.eq(custom.auctionStartPrice));
227
227
  assert(anchor.auctionEndPrice.eq(custom.auctionEndPrice));
@@ -89,7 +89,7 @@ function insertOrderToDLOB(
89
89
  existingPositionDirection: PositionDirection.LONG,
90
90
  postOnly,
91
91
  immediateOrCancel: false,
92
- oraclePriceOffset: oraclePriceOffset.toNumber(),
92
+ oraclePriceOffset: oraclePriceOffset,
93
93
  auctionDuration,
94
94
  auctionStartPrice,
95
95
  auctionEndPrice,
@@ -144,7 +144,7 @@ function insertTriggerOrderToDLOB(
144
144
  existingPositionDirection: PositionDirection.LONG,
145
145
  postOnly: false,
146
146
  immediateOrCancel: true,
147
- oraclePriceOffset: oraclePriceOffset.toNumber(),
147
+ oraclePriceOffset: oraclePriceOffset,
148
148
  auctionDuration: 10,
149
149
  auctionStartPrice,
150
150
  auctionEndPrice,
@@ -3943,7 +3943,7 @@ describe('DLOB Perp Tests', () => {
3943
3943
  triggerCondition: OrderTriggerCondition.ABOVE,
3944
3944
  existingPositionDirection: direction,
3945
3945
  immediateOrCancel: false,
3946
- oraclePriceOffset: 0,
3946
+ oraclePriceOffset: ZERO,
3947
3947
  maxTs: ZERO,
3948
3948
  postedSlotTail: 0,
3949
3949
  };
@@ -4045,7 +4045,7 @@ describe('DLOB Perp Tests', () => {
4045
4045
  triggerCondition: OrderTriggerCondition.ABOVE,
4046
4046
  existingPositionDirection: PositionDirection.LONG,
4047
4047
  immediateOrCancel: false,
4048
- oraclePriceOffset: 0,
4048
+ oraclePriceOffset: ZERO,
4049
4049
  maxTs: ZERO,
4050
4050
  postedSlotTail: 0,
4051
4051
  };
@@ -4124,7 +4124,7 @@ describe('DLOB Perp Tests', () => {
4124
4124
  triggerCondition: OrderTriggerCondition.ABOVE,
4125
4125
  existingPositionDirection: PositionDirection.LONG,
4126
4126
  immediateOrCancel: false,
4127
- oraclePriceOffset: 0,
4127
+ oraclePriceOffset: ZERO,
4128
4128
  maxTs: ZERO,
4129
4129
  postedSlotTail: 0,
4130
4130
  };
@@ -42,7 +42,7 @@ export const mockOrder: Order = {
42
42
  existingPositionDirection: PositionDirection.LONG,
43
43
  postOnly: false,
44
44
  immediateOrCancel: false,
45
- oraclePriceOffset: 0,
45
+ oraclePriceOffset: ZERO,
46
46
  auctionDuration: 0,
47
47
  auctionStartPrice: ZERO,
48
48
  auctionEndPrice: ZERO,