Skip to content

Commit abe65f5

Browse files
Merge pull request #62 from drift-labs/nour/decode-delegate-messages
ready for decoding delegate messages
2 parents f5d778d + 7879ee1 commit abe65f5

File tree

3 files changed

+17
-15
lines changed

3 files changed

+17
-15
lines changed

ts/sdk/package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
},
88
"dependencies": {
99
"@coral-xyz/anchor": "0.26.0",
10-
"@drift-labs/sdk": "2.117.0-beta.3",
10+
"@drift-labs/sdk": "2.117.0-beta.4",
1111
"@solana/web3.js": "1.91.7",
1212
"tweetnacl-util": "^0.15.1"
1313
},

ts/sdk/src/jitter/baseJitter.ts

+12-10
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,8 @@ import {
2424
ZERO,
2525
isSignedMsgOrder,
2626
OrderTriggerCondition,
27+
SignedMsgOrderParamsDelegateMessage,
28+
SignedMsgOrderParamsMessage,
2729
} from '@drift-labs/sdk';
2830
import { decodeUTF8 } from 'tweetnacl-util';
2931

@@ -210,9 +212,8 @@ export abstract class BaseJitter {
210212
);
211213
await this.slotSubscriber?.subscribe();
212214
await this.swiftOrderSubscriber?.subscribe(
213-
async (orderMessageRaw, signedMsgOrderParamsMessage) => {
214-
const signedMsgOrderParams =
215-
signedMsgOrderParamsMessage.signedMsgOrderParams;
215+
async (orderMessageRaw, signedMessage, isDelegateSigner) => {
216+
const signedMsgOrderParams = signedMessage.signedMsgOrderParams;
216217

217218
if (
218219
!signedMsgOrderParams.auctionDuration ||
@@ -231,26 +232,27 @@ export abstract class BaseJitter {
231232
const signedMsgOrderParamsBufHex = Buffer.from(
232233
orderMessageRaw['order_message']
233234
);
234-
const takerSubaccountId = signedMsgOrderParamsMessage.subAccountId;
235235

236236
const takerAuthority = new PublicKey(
237237
orderMessageRaw['taker_authority']
238238
);
239239
const signingAuthority = new PublicKey(
240240
orderMessageRaw['signing_authority']
241241
);
242-
const takerUserPubkey = await getUserAccountPublicKey(
243-
this.driftClient.program.programId,
244-
takerAuthority,
245-
takerSubaccountId
246-
);
242+
const takerUserPubkey = isDelegateSigner
243+
? (signedMessage as SignedMsgOrderParamsDelegateMessage).takerPubkey
244+
: await getUserAccountPublicKey(
245+
this.driftClient.program.programId,
246+
takerAuthority,
247+
(signedMessage as SignedMsgOrderParamsMessage).subAccountId
248+
);
247249
const takerUserPubkeyString = takerUserPubkey.toBase58();
248250
const takerUserAccount =
249251
await this.swiftOrderSubscriber.userAccountGetter.mustGetUserAccount(
250252
takerUserPubkey.toString()
251253
);
252254
const orderSlot = Math.min(
253-
signedMsgOrderParamsMessage.slot.toNumber(),
255+
signedMessage.slot.toNumber(),
254256
this.slotSubscriber.getSlot()
255257
);
256258

ts/sdk/yarn.lock

+4-4
Original file line numberDiff line numberDiff line change
@@ -128,10 +128,10 @@
128128
bn.js "^5.1.2"
129129
buffer-layout "^1.2.0"
130130

131-
"@drift-labs/[email protected].3":
132-
version "2.117.0-beta.3"
133-
resolved "https://registry.yarnpkg.com/@drift-labs/sdk/-/sdk-2.117.0-beta.3.tgz#155a644d81ee80d1c165dd842933e377d18d24d1"
134-
integrity sha512-/IODbiJDTiXunAY7cLOqDY2168VHdy7dd+wzS3TbJS1stWdkTjy0iHxcauOQmEJT9/DLQ/9oyMe+yxGkokEHAw==
131+
"@drift-labs/[email protected].4":
132+
version "2.117.0-beta.4"
133+
resolved "https://registry.yarnpkg.com/@drift-labs/sdk/-/sdk-2.117.0-beta.4.tgz#0afe07ae67d34ff5de1cf7196aaf9db1a12bb81e"
134+
integrity sha512-jC3pUQN7a01ruXei342K49DKVD4LV1t6w3g1Lp6nCU4HtsWrDXik1Ys1Tvr9F4H1rAskYAUPe2KyCSBXiE1NEw==
135135
dependencies:
136136
"@coral-xyz/anchor" "0.29.0"
137137
"@coral-xyz/anchor-30" "npm:@coral-xyz/[email protected]"

0 commit comments

Comments
 (0)