@drift-labs/sdk 2.142.0-beta.16 → 2.142.0-beta.17

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/VERSION CHANGED
@@ -1 +1 @@
1
- 2.142.0-beta.16
1
+ 2.142.0-beta.17
@@ -97,6 +97,10 @@ class grpcDriftClientAccountSubscriberV2 {
97
97
  return true;
98
98
  }
99
99
  async addOracle(oracleInfo) {
100
+ var _a, _c;
101
+ if ((_a = this.resubOpts) === null || _a === void 0 ? void 0 : _a.logResubMessages) {
102
+ console.log('[grpcDriftClientAccountSubscriberV2] addOracle');
103
+ }
100
104
  if (oracleInfo.publicKey.equals(web3_js_1.PublicKey.default)) {
101
105
  return true;
102
106
  }
@@ -105,10 +109,7 @@ class grpcDriftClientAccountSubscriberV2 {
105
109
  if (!exists) {
106
110
  this.oracleInfos = this.oracleInfos.concat(oracleInfo);
107
111
  }
108
- if (this.oracleMultiSubscriber) {
109
- await this.unsubscribeFromOracles();
110
- await this.subscribeToOracles();
111
- }
112
+ (_c = this.oracleMultiSubscriber) === null || _c === void 0 ? void 0 : _c.addAccounts([oracleInfo.publicKey]);
112
113
  return true;
113
114
  }
114
115
  async subscribe() {
@@ -272,6 +273,10 @@ class grpcDriftClientAccountSubscriberV2 {
272
273
  await Promise.all(addOraclePromises);
273
274
  }
274
275
  async subscribeToPerpMarketAccounts() {
276
+ var _a;
277
+ if ((_a = this.resubOpts) === null || _a === void 0 ? void 0 : _a.logResubMessages) {
278
+ console.log('[grpcDriftClientAccountSubscriberV2] subscribeToPerpMarketAccounts');
279
+ }
275
280
  const perpMarketIndexToAccountPubkeys = await Promise.all(this.perpMarketIndexes.map(async (marketIndex) => [
276
281
  marketIndex,
277
282
  await (0, pda_1.getPerpMarketPublicKey)(this.program.programId, marketIndex),
@@ -303,6 +308,10 @@ class grpcDriftClientAccountSubscriberV2 {
303
308
  return true;
304
309
  }
305
310
  async subscribeToSpotMarketAccounts() {
311
+ var _a;
312
+ if ((_a = this.resubOpts) === null || _a === void 0 ? void 0 : _a.logResubMessages) {
313
+ console.log('[grpcDriftClientAccountSubscriberV2] subscribeToSpotMarketAccounts');
314
+ }
306
315
  const spotMarketIndexToAccountPubkeys = await Promise.all(this.spotMarketIndexes.map(async (marketIndex) => [
307
316
  marketIndex,
308
317
  await (0, pda_1.getSpotMarketPublicKey)(this.program.programId, marketIndex),
@@ -334,6 +343,10 @@ class grpcDriftClientAccountSubscriberV2 {
334
343
  return true;
335
344
  }
336
345
  async subscribeToOracles() {
346
+ var _a;
347
+ if ((_a = this.resubOpts) === null || _a === void 0 ? void 0 : _a.logResubMessages) {
348
+ console.log('grpcDriftClientAccountSubscriberV2 subscribeToOracles');
349
+ }
337
350
  const oraclePubkeyToInfosMap = new Map();
338
351
  for (const info of this.oracleInfos) {
339
352
  const pubkey = info.publicKey.toBase58();
@@ -114,6 +114,10 @@ class grpcMultiAccountSubscriber {
114
114
  }
115
115
  }
116
116
  async subscribe(accounts, onChange) {
117
+ var _a;
118
+ if ((_a = this.resubOpts) === null || _a === void 0 ? void 0 : _a.logResubMessages) {
119
+ console.log(`[${this.accountName}] grpcMultiAccountSubscriber subscribe`);
120
+ }
117
121
  if (this.listenerId != null || this.isUnsubscribing) {
118
122
  return;
119
123
  }
@@ -1 +1 @@
1
- {"version":3,"file":"grpcDriftClientAccountSubscriberV2.d.ts","sourceRoot":"","sources":["../../../src/accounts/grpcDriftClientAccountSubscriberV2.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"grpcDriftClientAccountSubscriberV2.d.ts","sourceRoot":"","sources":["../../../src/accounts/grpcDriftClientAccountSubscriberV2.ts"],"names":[],"mappings":"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"}
@@ -97,6 +97,10 @@ class grpcDriftClientAccountSubscriberV2 {
97
97
  return true;
98
98
  }
99
99
  async addOracle(oracleInfo) {
100
+ var _a, _c;
101
+ if ((_a = this.resubOpts) === null || _a === void 0 ? void 0 : _a.logResubMessages) {
102
+ console.log('[grpcDriftClientAccountSubscriberV2] addOracle');
103
+ }
100
104
  if (oracleInfo.publicKey.equals(web3_js_1.PublicKey.default)) {
101
105
  return true;
102
106
  }
@@ -105,10 +109,7 @@ class grpcDriftClientAccountSubscriberV2 {
105
109
  if (!exists) {
106
110
  this.oracleInfos = this.oracleInfos.concat(oracleInfo);
107
111
  }
108
- if (this.oracleMultiSubscriber) {
109
- await this.unsubscribeFromOracles();
110
- await this.subscribeToOracles();
111
- }
112
+ (_c = this.oracleMultiSubscriber) === null || _c === void 0 ? void 0 : _c.addAccounts([oracleInfo.publicKey]);
112
113
  return true;
113
114
  }
114
115
  async subscribe() {
@@ -272,6 +273,10 @@ class grpcDriftClientAccountSubscriberV2 {
272
273
  await Promise.all(addOraclePromises);
273
274
  }
274
275
  async subscribeToPerpMarketAccounts() {
276
+ var _a;
277
+ if ((_a = this.resubOpts) === null || _a === void 0 ? void 0 : _a.logResubMessages) {
278
+ console.log('[grpcDriftClientAccountSubscriberV2] subscribeToPerpMarketAccounts');
279
+ }
275
280
  const perpMarketIndexToAccountPubkeys = await Promise.all(this.perpMarketIndexes.map(async (marketIndex) => [
276
281
  marketIndex,
277
282
  await (0, pda_1.getPerpMarketPublicKey)(this.program.programId, marketIndex),
@@ -303,6 +308,10 @@ class grpcDriftClientAccountSubscriberV2 {
303
308
  return true;
304
309
  }
305
310
  async subscribeToSpotMarketAccounts() {
311
+ var _a;
312
+ if ((_a = this.resubOpts) === null || _a === void 0 ? void 0 : _a.logResubMessages) {
313
+ console.log('[grpcDriftClientAccountSubscriberV2] subscribeToSpotMarketAccounts');
314
+ }
306
315
  const spotMarketIndexToAccountPubkeys = await Promise.all(this.spotMarketIndexes.map(async (marketIndex) => [
307
316
  marketIndex,
308
317
  await (0, pda_1.getSpotMarketPublicKey)(this.program.programId, marketIndex),
@@ -334,6 +343,10 @@ class grpcDriftClientAccountSubscriberV2 {
334
343
  return true;
335
344
  }
336
345
  async subscribeToOracles() {
346
+ var _a;
347
+ if ((_a = this.resubOpts) === null || _a === void 0 ? void 0 : _a.logResubMessages) {
348
+ console.log('grpcDriftClientAccountSubscriberV2 subscribeToOracles');
349
+ }
337
350
  const oraclePubkeyToInfosMap = new Map();
338
351
  for (const info of this.oracleInfos) {
339
352
  const pubkey = info.publicKey.toBase58();
@@ -1 +1 @@
1
- {"version":3,"file":"grpcMultiAccountSubscriber.d.ts","sourceRoot":"","sources":["../../../src/accounts/grpcMultiAccountSubscriber.ts"],"names":[],"mappings":";;AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAc,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAIjE,OAAO,EACN,MAAM,EAMN,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAyB9D,qBAAa,0BAA0B,CAAC,CAAC,EAAE,CAAC,GAAG,SAAS;IACvD,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,MAAM,CAAwD;IACtE,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,cAAc,CAAC,CAIhB;IACP,OAAO,CAAC,SAAS,CAAC,CAAY;IAC9B,OAAO,CAAC,aAAa,CAAC,CAAsB;IAErC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,eAAe,UAAS;IAC/B,OAAO,CAAC,SAAS,CAAC,CAAgC;IAClD,OAAO,CAAC,aAAa,CAAS;IAE9B,OAAO,CAAC,kBAAkB,CAAqB;IAC/C,OAAO,CAAC,WAAW,CAGf;IAEJ,OAAO,CAAC,OAAO,CAAqC;IACpD,OAAO,CAAC,eAAe,CAAmC;IAE1D,OAAO;WAoBa,MAAM,CAAC,CAAC,EAAE,CAAC,GAAG,SAAS,EAC1C,WAAW,EAAE,WAAW,EACxB,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,OAAO,EAChB,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,CAAC,KAAK,CAAC,EACvE,SAAS,CAAC,EAAE,SAAS,EACrB,UAAU,CAAC,EAAE,MAAM,EACnB,aAAa,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,EACnC,eAAe,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,GACzC,OAAO,CAAC,0BAA0B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAwB5C,cAAc,CAAC,aAAa,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI;IAInE,cAAc,CAAC,aAAa,EAAE,MAAM,GAAG,WAAW,CAAC,CAAC,CAAC,GAAG,SAAS;IAIjE,iBAAiB,IAAI,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC;IAI1C,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAkDtB,SAAS,CACd,QAAQ,EAAE,SAAS,EAAE,EACrB,QAAQ,EAAE,CACT,SAAS,EAAE,SAAS,EACpB,IAAI,EAAE,CAAC,EACP,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,CAAC,KACX,IAAI,GACP,OAAO,CAAC,IAAI,CAAC;IA+GV,WAAW,CAAC,QAAQ,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAiCjD,cAAc,CAAC,QAAQ,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAmCpD,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;IA4ClC,OAAO,CAAC,UAAU;IAelB,OAAO,CAAC,UAAU;CAIlB"}
1
+ {"version":3,"file":"grpcMultiAccountSubscriber.d.ts","sourceRoot":"","sources":["../../../src/accounts/grpcMultiAccountSubscriber.ts"],"names":[],"mappings":";;AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAc,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAIjE,OAAO,EACN,MAAM,EAMN,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAyB9D,qBAAa,0BAA0B,CAAC,CAAC,EAAE,CAAC,GAAG,SAAS;IACvD,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,MAAM,CAAwD;IACtE,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,cAAc,CAAC,CAIhB;IACP,OAAO,CAAC,SAAS,CAAC,CAAY;IAC9B,OAAO,CAAC,aAAa,CAAC,CAAsB;IAErC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,eAAe,UAAS;IAC/B,OAAO,CAAC,SAAS,CAAC,CAAgC;IAClD,OAAO,CAAC,aAAa,CAAS;IAE9B,OAAO,CAAC,kBAAkB,CAAqB;IAC/C,OAAO,CAAC,WAAW,CAGf;IAEJ,OAAO,CAAC,OAAO,CAAqC;IACpD,OAAO,CAAC,eAAe,CAAmC;IAE1D,OAAO;WAoBa,MAAM,CAAC,CAAC,EAAE,CAAC,GAAG,SAAS,EAC1C,WAAW,EAAE,WAAW,EACxB,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,OAAO,EAChB,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,CAAC,KAAK,CAAC,EACvE,SAAS,CAAC,EAAE,SAAS,EACrB,UAAU,CAAC,EAAE,MAAM,EACnB,aAAa,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,EACnC,eAAe,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,GACzC,OAAO,CAAC,0BAA0B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAwB5C,cAAc,CAAC,aAAa,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI;IAInE,cAAc,CAAC,aAAa,EAAE,MAAM,GAAG,WAAW,CAAC,CAAC,CAAC,GAAG,SAAS;IAIjE,iBAAiB,IAAI,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC;IAI1C,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAkDtB,SAAS,CACd,QAAQ,EAAE,SAAS,EAAE,EACrB,QAAQ,EAAE,CACT,SAAS,EAAE,SAAS,EACpB,IAAI,EAAE,CAAC,EACP,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,CAAC,KACX,IAAI,GACP,OAAO,CAAC,IAAI,CAAC;IAkHV,WAAW,CAAC,QAAQ,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAiCjD,cAAc,CAAC,QAAQ,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAmCpD,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;IA4ClC,OAAO,CAAC,UAAU;IAelB,OAAO,CAAC,UAAU;CAIlB"}
@@ -114,6 +114,10 @@ class grpcMultiAccountSubscriber {
114
114
  }
115
115
  }
116
116
  async subscribe(accounts, onChange) {
117
+ var _a;
118
+ if ((_a = this.resubOpts) === null || _a === void 0 ? void 0 : _a.logResubMessages) {
119
+ console.log(`[${this.accountName}] grpcMultiAccountSubscriber subscribe`);
120
+ }
117
121
  if (this.listenerId != null || this.isUnsubscribing) {
118
122
  return;
119
123
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@drift-labs/sdk",
3
- "version": "2.142.0-beta.16",
3
+ "version": "2.142.0-beta.17",
4
4
  "main": "lib/node/index.js",
5
5
  "types": "lib/node/index.d.ts",
6
6
  "module": "./lib/browser/index.js",
@@ -24,7 +24,7 @@ const GRPC_ENDPOINT = process.env.GRPC_ENDPOINT;
24
24
  const TOKEN = process.env.TOKEN;
25
25
 
26
26
  async function initializeGrpcDriftClientV2VersusV1() {
27
- const connection = new Connection('');
27
+ const connection = new Connection('https://api.mainnet-beta.solana.com');
28
28
  const wallet = new Wallet(new Keypair());
29
29
  dotenv.config({ path: '../' });
30
30
 
@@ -119,6 +119,7 @@ async function initializeGrpcDriftClientV2VersusV1() {
119
119
  accountSubscription: {
120
120
  ...baseAccountSubscription,
121
121
  driftClientAccountSubscriber: grpcDriftClientAccountSubscriberV2,
122
+ logResubMessages: true,
122
123
  },
123
124
  perpMarketIndexes,
124
125
  spotMarketIndexes,
@@ -132,6 +133,7 @@ async function initializeGrpcDriftClientV2VersusV1() {
132
133
  accountSubscription: {
133
134
  ...baseAccountSubscription,
134
135
  driftClientAccountSubscriber: grpcDriftClientAccountSubscriber,
136
+ // logResubMessages: true,
135
137
  },
136
138
  perpMarketIndexes,
137
139
  spotMarketIndexes,
@@ -142,6 +144,14 @@ async function initializeGrpcDriftClientV2VersusV1() {
142
144
  const clientV1 = new DriftClient(configV1);
143
145
 
144
146
  await Promise.all([clientV1.subscribe(), clientV2.subscribe()]);
147
+
148
+ clientV2.eventEmitter.on('oraclePriceUpdate', (pubkey, source, data) => {
149
+ const key = pubkey.toBase58();
150
+ const src = Object.keys(source ?? {})[0];
151
+ console.log(
152
+ `v2 oracle update ${key} (${src}) price ${data.price.toString()}`
153
+ );
154
+ });
145
155
  const compare = () => {
146
156
  for (const idx of perpMarketIndexes) {
147
157
  const p1 = clientV1.getOracleDataForPerpMarket(idx).price;
@@ -215,6 +215,9 @@ export class grpcDriftClientAccountSubscriberV2
215
215
  }
216
216
 
217
217
  async addOracle(oracleInfo: OracleInfo): Promise<boolean> {
218
+ if (this.resubOpts?.logResubMessages) {
219
+ console.log('[grpcDriftClientAccountSubscriberV2] addOracle');
220
+ }
218
221
  if (oracleInfo.publicKey.equals(PublicKey.default)) {
219
222
  return true;
220
223
  }
@@ -228,10 +231,7 @@ export class grpcDriftClientAccountSubscriberV2
228
231
  this.oracleInfos = this.oracleInfos.concat(oracleInfo);
229
232
  }
230
233
 
231
- if (this.oracleMultiSubscriber) {
232
- await this.unsubscribeFromOracles();
233
- await this.subscribeToOracles();
234
- }
234
+ this.oracleMultiSubscriber?.addAccounts([oracleInfo.publicKey]);
235
235
 
236
236
  return true;
237
237
  }
@@ -461,6 +461,11 @@ export class grpcDriftClientAccountSubscriberV2
461
461
  }
462
462
 
463
463
  async subscribeToPerpMarketAccounts(): Promise<boolean> {
464
+ if (this.resubOpts?.logResubMessages) {
465
+ console.log(
466
+ '[grpcDriftClientAccountSubscriberV2] subscribeToPerpMarketAccounts'
467
+ );
468
+ }
464
469
  const perpMarketIndexToAccountPubkeys: Array<[number, PublicKey]> =
465
470
  await Promise.all(
466
471
  this.perpMarketIndexes.map(async (marketIndex) => [
@@ -523,6 +528,11 @@ export class grpcDriftClientAccountSubscriberV2
523
528
  }
524
529
 
525
530
  async subscribeToSpotMarketAccounts(): Promise<boolean> {
531
+ if (this.resubOpts?.logResubMessages) {
532
+ console.log(
533
+ '[grpcDriftClientAccountSubscriberV2] subscribeToSpotMarketAccounts'
534
+ );
535
+ }
526
536
  const spotMarketIndexToAccountPubkeys: Array<[number, PublicKey]> =
527
537
  await Promise.all(
528
538
  this.spotMarketIndexes.map(async (marketIndex) => [
@@ -585,6 +595,9 @@ export class grpcDriftClientAccountSubscriberV2
585
595
  }
586
596
 
587
597
  async subscribeToOracles(): Promise<boolean> {
598
+ if (this.resubOpts?.logResubMessages) {
599
+ console.log('grpcDriftClientAccountSubscriberV2 subscribeToOracles');
600
+ }
588
601
  const oraclePubkeyToInfosMap = new Map<string, OracleInfo[]>();
589
602
  for (const info of this.oracleInfos) {
590
603
  const pubkey = info.publicKey.toBase58();
@@ -189,6 +189,9 @@ export class grpcMultiAccountSubscriber<T, U = undefined> {
189
189
  accountProps: U
190
190
  ) => void
191
191
  ): Promise<void> {
192
+ if (this.resubOpts?.logResubMessages) {
193
+ console.log(`[${this.accountName}] grpcMultiAccountSubscriber subscribe`);
194
+ }
192
195
  if (this.listenerId != null || this.isUnsubscribing) {
193
196
  return;
194
197
  }