@drift-labs/sdk 2.111.0-beta.2 → 2.111.0-beta.3

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.111.0-beta.2
1
+ 2.111.0-beta.3
@@ -146,6 +146,22 @@ export declare class DriftClient {
146
146
  * Adds and subscribes to users based on params set by the constructor or by updateWallet.
147
147
  */
148
148
  addAndSubscribeToUsers(authority?: PublicKey): Promise<boolean>;
149
+ /**
150
+ * Returns the instructions to initialize a user account and the public key of the user account.
151
+ * @param subAccountId
152
+ * @param name
153
+ * @param referrerInfo
154
+ * @returns [instructions, userAccountPublicKey]
155
+ */
156
+ getInitializeUserAccountIxs(subAccountId?: number, name?: string, referrerInfo?: ReferrerInfo): Promise<[TransactionInstruction[], PublicKey]>;
157
+ /**
158
+ * Initializes a user account and returns the transaction signature and the public key of the user account.
159
+ * @param subAccountId
160
+ * @param name
161
+ * @param referrerInfo
162
+ * @param txParams
163
+ * @returns [transactionSignature, userAccountPublicKey]
164
+ */
149
165
  initializeUserAccount(subAccountId?: number, name?: string, referrerInfo?: ReferrerInfo, txParams?: TxParams): Promise<[TransactionSignature, PublicKey]>;
150
166
  getInitializeUserStatsIx(): Promise<TransactionInstruction>;
151
167
  initializeSignedMsgUserOrders(authority: PublicKey, numOrders: number, txParams?: TxParams): Promise<[TransactionSignature, PublicKey]>;
@@ -156,7 +172,7 @@ export declare class DriftClient {
156
172
  getInitializeFuelOverflowIx(authority?: PublicKey): Promise<TransactionInstruction>;
157
173
  sweepFuel(authority?: PublicKey): Promise<TransactionSignature>;
158
174
  getSweepFuelIx(authority?: PublicKey): Promise<TransactionInstruction>;
159
- getInitializeUserInstructions(subAccountId?: number, name?: string, referrerInfo?: ReferrerInfo): Promise<[PublicKey, TransactionInstruction]>;
175
+ private getInitializeUserInstructions;
160
176
  getNextSubAccountId(): Promise<number>;
161
177
  initializeReferrerName(name: string): Promise<TransactionSignature>;
162
178
  updateUserName(name: string, subAccountId?: number): Promise<TransactionSignature>;
@@ -578,7 +578,14 @@ class DriftClient {
578
578
  }
579
579
  return result;
580
580
  }
581
- async initializeUserAccount(subAccountId = 0, name, referrerInfo, txParams) {
581
+ /**
582
+ * Returns the instructions to initialize a user account and the public key of the user account.
583
+ * @param subAccountId
584
+ * @param name
585
+ * @param referrerInfo
586
+ * @returns [instructions, userAccountPublicKey]
587
+ */
588
+ async getInitializeUserAccountIxs(subAccountId = 0, name, referrerInfo) {
582
589
  const initializeIxs = [];
583
590
  const [userAccountPublicKey, initializeUserAccountIx] = await this.getInitializeUserInstructions(subAccountId, name, referrerInfo);
584
591
  if (subAccountId === 0) {
@@ -587,6 +594,18 @@ class DriftClient {
587
594
  }
588
595
  }
589
596
  initializeIxs.push(initializeUserAccountIx);
597
+ return [initializeIxs, userAccountPublicKey];
598
+ }
599
+ /**
600
+ * Initializes a user account and returns the transaction signature and the public key of the user account.
601
+ * @param subAccountId
602
+ * @param name
603
+ * @param referrerInfo
604
+ * @param txParams
605
+ * @returns [transactionSignature, userAccountPublicKey]
606
+ */
607
+ async initializeUserAccount(subAccountId = 0, name, referrerInfo, txParams) {
608
+ const [initializeIxs, userAccountPublicKey] = await this.getInitializeUserAccountIxs(subAccountId, name, referrerInfo);
590
609
  const tx = await this.buildTransaction(initializeIxs, txParams);
591
610
  const { txSig } = await this.sendTransaction(tx, [], this.opts);
592
611
  await this.addUser(subAccountId);
@@ -146,6 +146,22 @@ export declare class DriftClient {
146
146
  * Adds and subscribes to users based on params set by the constructor or by updateWallet.
147
147
  */
148
148
  addAndSubscribeToUsers(authority?: PublicKey): Promise<boolean>;
149
+ /**
150
+ * Returns the instructions to initialize a user account and the public key of the user account.
151
+ * @param subAccountId
152
+ * @param name
153
+ * @param referrerInfo
154
+ * @returns [instructions, userAccountPublicKey]
155
+ */
156
+ getInitializeUserAccountIxs(subAccountId?: number, name?: string, referrerInfo?: ReferrerInfo): Promise<[TransactionInstruction[], PublicKey]>;
157
+ /**
158
+ * Initializes a user account and returns the transaction signature and the public key of the user account.
159
+ * @param subAccountId
160
+ * @param name
161
+ * @param referrerInfo
162
+ * @param txParams
163
+ * @returns [transactionSignature, userAccountPublicKey]
164
+ */
149
165
  initializeUserAccount(subAccountId?: number, name?: string, referrerInfo?: ReferrerInfo, txParams?: TxParams): Promise<[TransactionSignature, PublicKey]>;
150
166
  getInitializeUserStatsIx(): Promise<TransactionInstruction>;
151
167
  initializeSignedMsgUserOrders(authority: PublicKey, numOrders: number, txParams?: TxParams): Promise<[TransactionSignature, PublicKey]>;
@@ -156,7 +172,7 @@ export declare class DriftClient {
156
172
  getInitializeFuelOverflowIx(authority?: PublicKey): Promise<TransactionInstruction>;
157
173
  sweepFuel(authority?: PublicKey): Promise<TransactionSignature>;
158
174
  getSweepFuelIx(authority?: PublicKey): Promise<TransactionInstruction>;
159
- getInitializeUserInstructions(subAccountId?: number, name?: string, referrerInfo?: ReferrerInfo): Promise<[PublicKey, TransactionInstruction]>;
175
+ private getInitializeUserInstructions;
160
176
  getNextSubAccountId(): Promise<number>;
161
177
  initializeReferrerName(name: string): Promise<TransactionSignature>;
162
178
  updateUserName(name: string, subAccountId?: number): Promise<TransactionSignature>;
@@ -578,7 +578,14 @@ class DriftClient {
578
578
  }
579
579
  return result;
580
580
  }
581
- async initializeUserAccount(subAccountId = 0, name, referrerInfo, txParams) {
581
+ /**
582
+ * Returns the instructions to initialize a user account and the public key of the user account.
583
+ * @param subAccountId
584
+ * @param name
585
+ * @param referrerInfo
586
+ * @returns [instructions, userAccountPublicKey]
587
+ */
588
+ async getInitializeUserAccountIxs(subAccountId = 0, name, referrerInfo) {
582
589
  const initializeIxs = [];
583
590
  const [userAccountPublicKey, initializeUserAccountIx] = await this.getInitializeUserInstructions(subAccountId, name, referrerInfo);
584
591
  if (subAccountId === 0) {
@@ -587,6 +594,18 @@ class DriftClient {
587
594
  }
588
595
  }
589
596
  initializeIxs.push(initializeUserAccountIx);
597
+ return [initializeIxs, userAccountPublicKey];
598
+ }
599
+ /**
600
+ * Initializes a user account and returns the transaction signature and the public key of the user account.
601
+ * @param subAccountId
602
+ * @param name
603
+ * @param referrerInfo
604
+ * @param txParams
605
+ * @returns [transactionSignature, userAccountPublicKey]
606
+ */
607
+ async initializeUserAccount(subAccountId = 0, name, referrerInfo, txParams) {
608
+ const [initializeIxs, userAccountPublicKey] = await this.getInitializeUserAccountIxs(subAccountId, name, referrerInfo);
590
609
  const tx = await this.buildTransaction(initializeIxs, txParams);
591
610
  const { txSig } = await this.sendTransaction(tx, [], this.opts);
592
611
  await this.addUser(subAccountId);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@drift-labs/sdk",
3
- "version": "2.111.0-beta.2",
3
+ "version": "2.111.0-beta.3",
4
4
  "main": "lib/node/index.js",
5
5
  "types": "lib/node/index.d.ts",
6
6
  "browser": "./lib/browser/index.js",
@@ -996,13 +996,19 @@ export class DriftClient {
996
996
  return result;
997
997
  }
998
998
 
999
- public async initializeUserAccount(
999
+ /**
1000
+ * Returns the instructions to initialize a user account and the public key of the user account.
1001
+ * @param subAccountId
1002
+ * @param name
1003
+ * @param referrerInfo
1004
+ * @returns [instructions, userAccountPublicKey]
1005
+ */
1006
+ public async getInitializeUserAccountIxs(
1000
1007
  subAccountId = 0,
1001
1008
  name?: string,
1002
- referrerInfo?: ReferrerInfo,
1003
- txParams?: TxParams
1004
- ): Promise<[TransactionSignature, PublicKey]> {
1005
- const initializeIxs = [];
1009
+ referrerInfo?: ReferrerInfo
1010
+ ): Promise<[TransactionInstruction[], PublicKey]> {
1011
+ const initializeIxs: TransactionInstruction[] = [];
1006
1012
 
1007
1013
  const [userAccountPublicKey, initializeUserAccountIx] =
1008
1014
  await this.getInitializeUserInstructions(
@@ -1020,6 +1026,27 @@ export class DriftClient {
1020
1026
  }
1021
1027
 
1022
1028
  initializeIxs.push(initializeUserAccountIx);
1029
+
1030
+ return [initializeIxs, userAccountPublicKey];
1031
+ }
1032
+
1033
+ /**
1034
+ * Initializes a user account and returns the transaction signature and the public key of the user account.
1035
+ * @param subAccountId
1036
+ * @param name
1037
+ * @param referrerInfo
1038
+ * @param txParams
1039
+ * @returns [transactionSignature, userAccountPublicKey]
1040
+ */
1041
+ public async initializeUserAccount(
1042
+ subAccountId = 0,
1043
+ name?: string,
1044
+ referrerInfo?: ReferrerInfo,
1045
+ txParams?: TxParams
1046
+ ): Promise<[TransactionSignature, PublicKey]> {
1047
+ const [initializeIxs, userAccountPublicKey] =
1048
+ await this.getInitializeUserAccountIxs(subAccountId, name, referrerInfo);
1049
+
1023
1050
  const tx = await this.buildTransaction(initializeIxs, txParams);
1024
1051
 
1025
1052
  const { txSig } = await this.sendTransaction(tx, [], this.opts);
@@ -1172,7 +1199,7 @@ export class DriftClient {
1172
1199
  });
1173
1200
  }
1174
1201
 
1175
- async getInitializeUserInstructions(
1202
+ private async getInitializeUserInstructions(
1176
1203
  subAccountId = 0,
1177
1204
  name?: string,
1178
1205
  referrerInfo?: ReferrerInfo
@@ -68,9 +68,10 @@ describe('Verify Constants', function () {
68
68
  await devnetDriftClient.subscribe();
69
69
  await mainnetDriftClient.subscribe();
70
70
 
71
- const lookupTables =
72
- await mainnetDriftClient.fetchAllLookupTableAccounts();
73
- lutAccounts = lookupTables.map((lut) => lut.state.addresses.map((x) => x.toBase58())).flat();
71
+ const lookupTables = await mainnetDriftClient.fetchAllLookupTableAccounts();
72
+ lutAccounts = lookupTables
73
+ .map((lut) => lut.state.addresses.map((x) => x.toBase58()))
74
+ .flat();
74
75
  });
75
76
 
76
77
  after(async () => {