@drift-labs/sdk-browser 2.110.0-beta.9 → 2.111.0-beta.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 (82) hide show
  1. package/VERSION +1 -1
  2. package/lib/browser/addresses/pda.d.ts +1 -2
  3. package/lib/browser/addresses/pda.js +4 -11
  4. package/lib/browser/adminClient.d.ts +4 -4
  5. package/lib/browser/adminClient.js +10 -8
  6. package/lib/browser/constants/perpMarkets.js +78 -40
  7. package/lib/browser/constants/spotMarkets.js +28 -22
  8. package/lib/browser/decode/user.js +7 -1
  9. package/lib/browser/dlob/DLOB.d.ts +4 -4
  10. package/lib/browser/dlob/DLOB.js +11 -11
  11. package/lib/browser/dlob/DLOBNode.d.ts +8 -8
  12. package/lib/browser/dlob/DLOBNode.js +10 -10
  13. package/lib/browser/driftClient.d.ts +20 -23
  14. package/lib/browser/driftClient.js +114 -130
  15. package/lib/browser/events/types.d.ts +5 -3
  16. package/lib/browser/events/types.js +3 -1
  17. package/lib/browser/fastlane/fastlaneOrderSubscriber.d.ts +28 -0
  18. package/lib/{node/swift/swiftOrderSubscriber.js → browser/fastlane/fastlaneOrderSubscriber.js} +16 -16
  19. package/lib/browser/idl/drift.json +189 -317
  20. package/lib/browser/index.d.ts +1 -1
  21. package/lib/browser/index.js +1 -1
  22. package/lib/browser/math/spotBalance.js +7 -1
  23. package/lib/browser/types.d.ts +47 -28
  24. package/lib/browser/util/digest.d.ts +1 -1
  25. package/lib/browser/util/digest.js +3 -3
  26. package/lib/browser/util/ed25519Utils.d.ts +10 -0
  27. package/lib/browser/util/ed25519Utils.js +80 -0
  28. package/lib/browser/util/pythOracleUtils.d.ts +0 -16
  29. package/lib/browser/util/pythOracleUtils.js +1 -103
  30. package/lib/node/addresses/pda.d.ts +1 -2
  31. package/lib/node/addresses/pda.js +4 -11
  32. package/lib/node/adminClient.d.ts +4 -4
  33. package/lib/node/adminClient.js +10 -8
  34. package/lib/node/constants/perpMarkets.js +78 -40
  35. package/lib/node/constants/spotMarkets.js +28 -22
  36. package/lib/node/decode/user.js +7 -1
  37. package/lib/node/dlob/DLOB.d.ts +4 -4
  38. package/lib/node/dlob/DLOB.js +11 -11
  39. package/lib/node/dlob/DLOBNode.d.ts +8 -8
  40. package/lib/node/dlob/DLOBNode.js +10 -10
  41. package/lib/node/driftClient.d.ts +20 -23
  42. package/lib/node/driftClient.js +114 -130
  43. package/lib/node/events/types.d.ts +5 -3
  44. package/lib/node/events/types.js +3 -1
  45. package/lib/node/fastlane/fastlaneOrderSubscriber.d.ts +28 -0
  46. package/lib/{browser/swift/swiftOrderSubscriber.js → node/fastlane/fastlaneOrderSubscriber.js} +16 -16
  47. package/lib/node/idl/drift.json +189 -317
  48. package/lib/node/index.d.ts +1 -1
  49. package/lib/node/index.js +1 -1
  50. package/lib/node/math/spotBalance.js +7 -1
  51. package/lib/node/types.d.ts +47 -28
  52. package/lib/node/util/digest.d.ts +1 -1
  53. package/lib/node/util/digest.js +3 -3
  54. package/lib/node/util/ed25519Utils.d.ts +10 -0
  55. package/lib/node/util/ed25519Utils.js +80 -0
  56. package/lib/node/util/pythOracleUtils.d.ts +0 -16
  57. package/lib/node/util/pythOracleUtils.js +1 -103
  58. package/package.json +1 -1
  59. package/src/addresses/pda.ts +2 -15
  60. package/src/adminClient.ts +16 -6
  61. package/src/constants/perpMarkets.ts +78 -40
  62. package/src/constants/spotMarkets.ts +28 -22
  63. package/src/decode/user.ts +8 -1
  64. package/src/dlob/DLOB.ts +14 -14
  65. package/src/dlob/DLOBNode.ts +14 -14
  66. package/src/driftClient.ts +220 -212
  67. package/src/events/types.ts +13 -5
  68. package/src/{swift/swiftOrderSubscriber.ts → fastlane/fastlaneOrderSubscriber.ts} +23 -21
  69. package/src/idl/drift.json +189 -317
  70. package/src/index.ts +1 -1
  71. package/src/math/spotBalance.ts +25 -10
  72. package/src/types.ts +53 -31
  73. package/src/util/digest.ts +1 -1
  74. package/src/util/ed25519Utils.ts +85 -0
  75. package/src/util/pythOracleUtils.ts +0 -131
  76. package/lib/browser/swift/swiftOrderSubscriber.d.ts +0 -28
  77. package/lib/browser/swift/types.d.ts +0 -17
  78. package/lib/browser/swift/types.js +0 -2
  79. package/lib/node/swift/swiftOrderSubscriber.d.ts +0 -28
  80. package/lib/node/swift/types.d.ts +0 -17
  81. package/lib/node/swift/types.js +0 -2
  82. package/src/swift/types.ts +0 -16
package/VERSION CHANGED
@@ -1 +1 @@
1
- 2.110.0-beta.9
1
+ 2.111.0-beta.0
@@ -9,8 +9,7 @@ export declare function getUserAccountPublicKey(programId: PublicKey, authority:
9
9
  export declare function getUserAccountPublicKeySync(programId: PublicKey, authority: PublicKey, subAccountId?: number): PublicKey;
10
10
  export declare function getUserStatsAccountPublicKey(programId: PublicKey, authority: PublicKey): PublicKey;
11
11
  export declare function getFuelOverflowAccountPublicKey(programId: PublicKey, authority: PublicKey): PublicKey;
12
- export declare function getRFQUserAccountPublicKey(programId: PublicKey, userAccountPublicKey: PublicKey): PublicKey;
13
- export declare function getSwiftUserAccountPublicKey(programId: PublicKey, authority: PublicKey): PublicKey;
12
+ export declare function getSignedMsgUserAccountPublicKey(programId: PublicKey, authority: PublicKey): PublicKey;
14
13
  export declare function getPerpMarketPublicKey(programId: PublicKey, marketIndex: number): Promise<PublicKey>;
15
14
  export declare function getPerpMarketPublicKeySync(programId: PublicKey, marketIndex: number): PublicKey;
16
15
  export declare function getSpotMarketPublicKey(programId: PublicKey, marketIndex: number): Promise<PublicKey>;
@@ -23,7 +23,7 @@ var __importStar = (this && this.__importStar) || function (mod) {
23
23
  return result;
24
24
  };
25
25
  Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.getProtectedMakerModeConfigPublicKey = exports.getHighLeverageModeConfigPublicKey = exports.getTokenProgramForSpotMarket = exports.getPythLazerOraclePublicKey = exports.getPythPullOraclePublicKey = exports.getPrelaunchOraclePublicKey = exports.getProtocolIfSharesTransferConfigPublicKey = exports.getReferrerNamePublicKeySync = exports.getOpenbookV2FulfillmentConfigPublicKey = exports.getPhoenixFulfillmentConfigPublicKey = exports.getSerumFulfillmentConfigPublicKey = exports.getSerumSignerPublicKey = exports.getSerumOpenOrdersPublicKey = exports.getDriftSignerPublicKey = exports.getInsuranceFundStakeAccountPublicKey = exports.getInsuranceFundVaultPublicKey = exports.getSpotMarketVaultPublicKey = exports.getSpotMarketPublicKeySync = exports.getSpotMarketPublicKey = exports.getPerpMarketPublicKeySync = exports.getPerpMarketPublicKey = exports.getSwiftUserAccountPublicKey = exports.getRFQUserAccountPublicKey = exports.getFuelOverflowAccountPublicKey = exports.getUserStatsAccountPublicKey = exports.getUserAccountPublicKeySync = exports.getUserAccountPublicKey = exports.getUserAccountPublicKeyAndNonce = exports.getDriftStateAccountPublicKey = exports.getDriftStateAccountPublicKeyAndNonce = void 0;
26
+ exports.getProtectedMakerModeConfigPublicKey = exports.getHighLeverageModeConfigPublicKey = exports.getTokenProgramForSpotMarket = exports.getPythLazerOraclePublicKey = exports.getPythPullOraclePublicKey = exports.getPrelaunchOraclePublicKey = exports.getProtocolIfSharesTransferConfigPublicKey = exports.getReferrerNamePublicKeySync = exports.getOpenbookV2FulfillmentConfigPublicKey = exports.getPhoenixFulfillmentConfigPublicKey = exports.getSerumFulfillmentConfigPublicKey = exports.getSerumSignerPublicKey = exports.getSerumOpenOrdersPublicKey = exports.getDriftSignerPublicKey = exports.getInsuranceFundStakeAccountPublicKey = exports.getInsuranceFundVaultPublicKey = exports.getSpotMarketVaultPublicKey = exports.getSpotMarketPublicKeySync = exports.getSpotMarketPublicKey = exports.getPerpMarketPublicKeySync = exports.getPerpMarketPublicKey = exports.getSignedMsgUserAccountPublicKey = exports.getFuelOverflowAccountPublicKey = exports.getUserStatsAccountPublicKey = exports.getUserAccountPublicKeySync = exports.getUserAccountPublicKey = exports.getUserAccountPublicKeyAndNonce = exports.getDriftStateAccountPublicKey = exports.getDriftStateAccountPublicKeyAndNonce = void 0;
27
27
  const web3_js_1 = require("@solana/web3.js");
28
28
  const anchor = __importStar(require("@coral-xyz/anchor"));
29
29
  const spl_token_1 = require("@solana/spl-token");
@@ -69,20 +69,13 @@ function getFuelOverflowAccountPublicKey(programId, authority) {
69
69
  ], programId)[0];
70
70
  }
71
71
  exports.getFuelOverflowAccountPublicKey = getFuelOverflowAccountPublicKey;
72
- function getRFQUserAccountPublicKey(programId, userAccountPublicKey) {
72
+ function getSignedMsgUserAccountPublicKey(programId, authority) {
73
73
  return web3_js_1.PublicKey.findProgramAddressSync([
74
- Buffer.from(anchor.utils.bytes.utf8.encode('RFQ')),
75
- userAccountPublicKey.toBuffer(),
76
- ], programId)[0];
77
- }
78
- exports.getRFQUserAccountPublicKey = getRFQUserAccountPublicKey;
79
- function getSwiftUserAccountPublicKey(programId, authority) {
80
- return web3_js_1.PublicKey.findProgramAddressSync([
81
- Buffer.from(anchor.utils.bytes.utf8.encode('SWIFT')),
74
+ Buffer.from(anchor.utils.bytes.utf8.encode('SIGNED_MSG')),
82
75
  authority.toBuffer(),
83
76
  ], programId)[0];
84
77
  }
85
- exports.getSwiftUserAccountPublicKey = getSwiftUserAccountPublicKey;
78
+ exports.getSignedMsgUserAccountPublicKey = getSignedMsgUserAccountPublicKey;
86
79
  async function getPerpMarketPublicKey(programId, marketIndex) {
87
80
  return (await web3_js_1.PublicKey.findProgramAddress([
88
81
  Buffer.from(anchor.utils.bytes.utf8.encode('perp_market')),
@@ -107,8 +107,8 @@ export declare class AdminClient extends DriftClient {
107
107
  getUpdateInsuranceFundUnstakingPeriodIx(spotMarketIndex: number, insuranceWithdrawEscrowPeriod: BN): Promise<TransactionInstruction>;
108
108
  updateLpCooldownTime(cooldownTime: BN): Promise<TransactionSignature>;
109
109
  getUpdateLpCooldownTimeIx(cooldownTime: BN): Promise<TransactionInstruction>;
110
- updatePerpMarketOracle(perpMarketIndex: number, oracle: PublicKey, oracleSource: OracleSource): Promise<TransactionSignature>;
111
- getUpdatePerpMarketOracleIx(perpMarketIndex: number, oracle: PublicKey, oracleSource: OracleSource): Promise<TransactionInstruction>;
110
+ updatePerpMarketOracle(perpMarketIndex: number, oracle: PublicKey, oracleSource: OracleSource, skipInvaraintCheck?: boolean): Promise<TransactionSignature>;
111
+ getUpdatePerpMarketOracleIx(perpMarketIndex: number, oracle: PublicKey, oracleSource: OracleSource, skipInvaraintCheck?: boolean): Promise<TransactionInstruction>;
112
112
  updatePerpMarketStepSizeAndTickSize(perpMarketIndex: number, stepSize: BN, tickSize: BN): Promise<TransactionSignature>;
113
113
  getUpdatePerpMarketStepSizeAndTickSizeIx(perpMarketIndex: number, stepSize: BN, tickSize: BN): Promise<TransactionInstruction>;
114
114
  updatePerpMarketMinOrderSize(perpMarketIndex: number, orderSize: BN): Promise<TransactionSignature>;
@@ -119,8 +119,8 @@ export declare class AdminClient extends DriftClient {
119
119
  getUpdateSpotMarketMinOrderSizeIx(spotMarketIndex: number, orderSize: BN): Promise<TransactionInstruction>;
120
120
  updatePerpMarketExpiry(perpMarketIndex: number, expiryTs: BN): Promise<TransactionSignature>;
121
121
  getUpdatePerpMarketExpiryIx(perpMarketIndex: number, expiryTs: BN): Promise<TransactionInstruction>;
122
- updateSpotMarketOracle(spotMarketIndex: number, oracle: PublicKey, oracleSource: OracleSource): Promise<TransactionSignature>;
123
- getUpdateSpotMarketOracleIx(spotMarketIndex: number, oracle: PublicKey, oracleSource: OracleSource): Promise<TransactionInstruction>;
122
+ updateSpotMarketOracle(spotMarketIndex: number, oracle: PublicKey, oracleSource: OracleSource, skipInvaraintCheck?: boolean): Promise<TransactionSignature>;
123
+ getUpdateSpotMarketOracleIx(spotMarketIndex: number, oracle: PublicKey, oracleSource: OracleSource, skipInvaraintCheck?: boolean): Promise<TransactionInstruction>;
124
124
  updateSpotMarketOrdersEnabled(spotMarketIndex: number, ordersEnabled: boolean): Promise<TransactionSignature>;
125
125
  getUpdateSpotMarketOrdersEnabledIx(spotMarketIndex: number, ordersEnabled: boolean): Promise<TransactionInstruction>;
126
126
  updateSpotMarketIfPausedOperations(spotMarketIndex: number, pausedOperations: number): Promise<TransactionSignature>;
@@ -1002,14 +1002,14 @@ class AdminClient extends driftClient_1.DriftClient {
1002
1002
  },
1003
1003
  });
1004
1004
  }
1005
- async updatePerpMarketOracle(perpMarketIndex, oracle, oracleSource) {
1006
- const updatePerpMarketOracleIx = await this.getUpdatePerpMarketOracleIx(perpMarketIndex, oracle, oracleSource);
1005
+ async updatePerpMarketOracle(perpMarketIndex, oracle, oracleSource, skipInvaraintCheck = false) {
1006
+ const updatePerpMarketOracleIx = await this.getUpdatePerpMarketOracleIx(perpMarketIndex, oracle, oracleSource, skipInvaraintCheck);
1007
1007
  const tx = await this.buildTransaction(updatePerpMarketOracleIx);
1008
1008
  const { txSig } = await this.sendTransaction(tx, [], this.opts);
1009
1009
  return txSig;
1010
1010
  }
1011
- async getUpdatePerpMarketOracleIx(perpMarketIndex, oracle, oracleSource) {
1012
- return await this.program.instruction.updatePerpMarketOracle(oracle, oracleSource, {
1011
+ async getUpdatePerpMarketOracleIx(perpMarketIndex, oracle, oracleSource, skipInvaraintCheck = false) {
1012
+ return await this.program.instruction.updatePerpMarketOracle(oracle, oracleSource, skipInvaraintCheck, {
1013
1013
  accounts: {
1014
1014
  admin: this.isSubscribed
1015
1015
  ? this.getStateAccount().admin
@@ -1017,6 +1017,7 @@ class AdminClient extends driftClient_1.DriftClient {
1017
1017
  state: await this.getStatePublicKey(),
1018
1018
  perpMarket: await (0, pda_1.getPerpMarketPublicKey)(this.program.programId, perpMarketIndex),
1019
1019
  oracle: oracle,
1020
+ oldOracle: this.getPerpMarketAccount(perpMarketIndex).amm.oracle,
1020
1021
  },
1021
1022
  });
1022
1023
  }
@@ -1113,14 +1114,14 @@ class AdminClient extends driftClient_1.DriftClient {
1113
1114
  },
1114
1115
  });
1115
1116
  }
1116
- async updateSpotMarketOracle(spotMarketIndex, oracle, oracleSource) {
1117
- const updateSpotMarketOracleIx = await this.getUpdateSpotMarketOracleIx(spotMarketIndex, oracle, oracleSource);
1117
+ async updateSpotMarketOracle(spotMarketIndex, oracle, oracleSource, skipInvaraintCheck = false) {
1118
+ const updateSpotMarketOracleIx = await this.getUpdateSpotMarketOracleIx(spotMarketIndex, oracle, oracleSource, skipInvaraintCheck);
1118
1119
  const tx = await this.buildTransaction(updateSpotMarketOracleIx);
1119
1120
  const { txSig } = await this.sendTransaction(tx, [], this.opts);
1120
1121
  return txSig;
1121
1122
  }
1122
- async getUpdateSpotMarketOracleIx(spotMarketIndex, oracle, oracleSource) {
1123
- return await this.program.instruction.updateSpotMarketOracle(oracle, oracleSource, {
1123
+ async getUpdateSpotMarketOracleIx(spotMarketIndex, oracle, oracleSource, skipInvaraintCheck = false) {
1124
+ return await this.program.instruction.updateSpotMarketOracle(oracle, oracleSource, skipInvaraintCheck, {
1124
1125
  accounts: {
1125
1126
  admin: this.isSubscribed
1126
1127
  ? this.getStateAccount().admin
@@ -1128,6 +1129,7 @@ class AdminClient extends driftClient_1.DriftClient {
1128
1129
  state: await this.getStatePublicKey(),
1129
1130
  spotMarket: await (0, pda_1.getSpotMarketPublicKey)(this.program.programId, spotMarketIndex),
1130
1131
  oracle: oracle,
1132
+ oldOracle: this.getSpotMarketAccount(spotMarketIndex).oracle,
1131
1133
  },
1132
1134
  });
1133
1135
  }
@@ -434,9 +434,9 @@ exports.MainnetPerpMarkets = [
434
434
  symbol: 'DOGE-PERP',
435
435
  baseAssetSymbol: 'DOGE',
436
436
  marketIndex: 7,
437
- oracle: new web3_js_1.PublicKey('23y63pHVwKfYSCDFdiGRaGbTYWoyr8UzhUE7zukyf6gK'),
437
+ oracle: new web3_js_1.PublicKey('GqjDJZu9bNCebq5PTUbjRrgw1LK84GEexVjrfYJ76YXc'),
438
438
  launchTs: 1680808053000,
439
- oracleSource: __1.OracleSource.PYTH_PULL,
439
+ oracleSource: __1.OracleSource.PYTH_LAZER,
440
440
  pythFeedId: '0xdcef50dd0a4cd2dcc17e45df1676dcb336a11a61c69df7a0299b0150c672d25c',
441
441
  pythLazerId: 13,
442
442
  },
@@ -458,9 +458,9 @@ exports.MainnetPerpMarkets = [
458
458
  symbol: 'SUI-PERP',
459
459
  baseAssetSymbol: 'SUI',
460
460
  marketIndex: 9,
461
- oracle: new web3_js_1.PublicKey('HBordkz5YxjzNURmKUY4vfEYFG9fZyZNeNF1VDLMoemT'),
461
+ oracle: new web3_js_1.PublicKey('HmeJeBKgceqvSBd5XBXZUYECLabnbS1SefLkeJKH8ERK'),
462
462
  launchTs: 1683125906000,
463
- oracleSource: __1.OracleSource.PYTH_PULL,
463
+ oracleSource: __1.OracleSource.PYTH_LAZER,
464
464
  pythFeedId: '0x23d7315113f5b1d3ba7a83604c44b94d79f4fd69af77f804fc7f920a6dc65744',
465
465
  pythLazerId: 11,
466
466
  },
@@ -470,9 +470,9 @@ exports.MainnetPerpMarkets = [
470
470
  symbol: '1MPEPE-PERP',
471
471
  baseAssetSymbol: '1MPEPE',
472
472
  marketIndex: 10,
473
- oracle: new web3_js_1.PublicKey('CLxofhtzvLiErpn25wvUzpZXEqBhuZ6WMEckEraxyuGt'),
473
+ oracle: new web3_js_1.PublicKey('Eo8x9Y1289GvsuYVwRS2R8HfiWRXxYofL1KYvHK2ZM2o'),
474
474
  launchTs: 1683781239000,
475
- oracleSource: __1.OracleSource.PYTH_1M_PULL,
475
+ oracleSource: __1.OracleSource.PYTH_LAZER_1M,
476
476
  pythFeedId: '0xd69731a2e74ac1ce884fc3890f7ee324b6deb66147055249568869ed700882e4',
477
477
  pythLazerId: 4,
478
478
  },
@@ -506,9 +506,9 @@ exports.MainnetPerpMarkets = [
506
506
  symbol: 'XRP-PERP',
507
507
  baseAssetSymbol: 'XRP',
508
508
  marketIndex: 13,
509
- oracle: new web3_js_1.PublicKey('9757epAjXWCWQH98kyK9vzgehd1XDVEf7joNHUaKk3iV'),
509
+ oracle: new web3_js_1.PublicKey('92VexDMsSzYvVq7eiEoodEzZxCLqYnfGKpVTqpkX12FY'),
510
510
  launchTs: 1689270550000,
511
- oracleSource: __1.OracleSource.PYTH_PULL,
511
+ oracleSource: __1.OracleSource.PYTH_LAZER,
512
512
  pythFeedId: '0xec5d399846a9209f3fe5881d70aae9268c94339ff9817e8d18ff19fa05eea1c8',
513
513
  pythLazerId: 14,
514
514
  },
@@ -518,10 +518,11 @@ exports.MainnetPerpMarkets = [
518
518
  symbol: 'HNT-PERP',
519
519
  baseAssetSymbol: 'HNT',
520
520
  marketIndex: 14,
521
- oracle: new web3_js_1.PublicKey('9b1rcK9RUPK2vAqwNYCYEG34gUVpS2WGs2YCZZy2X5Tb'),
521
+ oracle: new web3_js_1.PublicKey('AEPgc6qUTCT8AwdckPcGbJXtcM9bj8mGYAyHE4BscJtm'),
522
522
  launchTs: 1692294955000,
523
- oracleSource: __1.OracleSource.PYTH_PULL,
523
+ oracleSource: __1.OracleSource.PYTH_LAZER,
524
524
  pythFeedId: '0x649fdd7ec08e8e2a20f425729854e90293dcbe2376abc47197a14da6ff339756',
525
+ pythLazerId: 168,
525
526
  },
526
527
  {
527
528
  fullName: 'INJ',
@@ -576,9 +577,9 @@ exports.MainnetPerpMarkets = [
576
577
  symbol: 'TIA-PERP',
577
578
  baseAssetSymbol: 'TIA',
578
579
  marketIndex: 19,
579
- oracle: new web3_js_1.PublicKey('C6LHPUrgjrgo5eNUitC8raNEdEttfoRhmqdJ3BHVBJhi'),
580
+ oracle: new web3_js_1.PublicKey('2rDfWydvqvMQjDuf7vQsgfpa6dLMZehrWrpoXitn6gPx'),
580
581
  launchTs: 1701880540000,
581
- oracleSource: __1.OracleSource.PYTH_PULL,
582
+ oracleSource: __1.OracleSource.PYTH_LAZER,
582
583
  pythFeedId: '0x09f7c1d7dfbb7df2b8fe3d3d87ee94a2259d212da4f30c1f0540d066dfa44723',
583
584
  pythLazerId: 48,
584
585
  },
@@ -588,9 +589,9 @@ exports.MainnetPerpMarkets = [
588
589
  symbol: 'JTO-PERP',
589
590
  baseAssetSymbol: 'JTO',
590
591
  marketIndex: 20,
591
- oracle: new web3_js_1.PublicKey('Ffq6ACJ17NAgaxC6ocfMzVXL3K61qxB2xHg6WUawWPfP'),
592
+ oracle: new web3_js_1.PublicKey('CGCz4mB8NsDddCq6BZToRUDUuktzsAfpKYh6ATgyyCGF'),
592
593
  launchTs: 1701967240000,
593
- oracleSource: __1.OracleSource.PYTH_PULL,
594
+ oracleSource: __1.OracleSource.PYTH_LAZER,
594
595
  pythFeedId: '0xb43660a5f790c69354b0729a5ef9d50d68f1df92107540210b9cccba1f947cc2',
595
596
  pythLazerId: 91,
596
597
  },
@@ -624,9 +625,9 @@ exports.MainnetPerpMarkets = [
624
625
  symbol: 'WIF-PERP',
625
626
  baseAssetSymbol: 'WIF',
626
627
  marketIndex: 23,
627
- oracle: new web3_js_1.PublicKey('6x6KfE7nY2xoLCRSMPT1u83wQ5fpGXoKNBqFjrCwzsCQ'),
628
+ oracle: new web3_js_1.PublicKey('4QXWStoyEErTZFVsvKrvxuNa6QT8zpeA8jddZunSGvYE'),
628
629
  launchTs: 1706219971000,
629
- oracleSource: __1.OracleSource.PYTH_PULL,
630
+ oracleSource: __1.OracleSource.PYTH_LAZER,
630
631
  pythFeedId: '0x4ca4beeca86f0d164160323817a4e42b10010a724c2217c6ee41b54cd4cc61fc',
631
632
  pythLazerId: 10,
632
633
  },
@@ -636,9 +637,9 @@ exports.MainnetPerpMarkets = [
636
637
  symbol: 'JUP-PERP',
637
638
  baseAssetSymbol: 'JUP',
638
639
  marketIndex: 24,
639
- oracle: new web3_js_1.PublicKey('AwqRpfJ36jnSZQykyL1jYY35mhMteeEAjh7o8LveRQin'),
640
+ oracle: new web3_js_1.PublicKey('DXqKSHyhTBKEW4qgnL7ycbf3Jca5hCvUgWHFYWsh4KJa'),
640
641
  launchTs: 1706713201000,
641
- oracleSource: __1.OracleSource.PYTH_PULL,
642
+ oracleSource: __1.OracleSource.PYTH_LAZER,
642
643
  pythFeedId: '0x0a0408d619e9380abad35060f9192039ed5042fa6f82301d0e48bb52be830996',
643
644
  pythLazerId: 92,
644
645
  },
@@ -695,9 +696,9 @@ exports.MainnetPerpMarkets = [
695
696
  symbol: 'TNSR-PERP',
696
697
  baseAssetSymbol: 'TNSR',
697
698
  marketIndex: 29,
698
- oracle: new web3_js_1.PublicKey('13jpjpVyU5hGpjsZ4HzCcmBo85wze4N8Au7U6cC3GMip'),
699
+ oracle: new web3_js_1.PublicKey('EX6r1GdfsgcUsY6cQ6YsToV4RGsb4HKpjrkokK2DrmsS'),
699
700
  launchTs: 1712593532000,
700
- oracleSource: __1.OracleSource.PYTH_PULL,
701
+ oracleSource: __1.OracleSource.PYTH_LAZER,
701
702
  pythFeedId: '0x05ecd4597cd48fe13d6cc3596c62af4f9675aee06e2e0b94c06d8bee2b659e05',
702
703
  pythLazerId: 99,
703
704
  },
@@ -728,9 +729,9 @@ exports.MainnetPerpMarkets = [
728
729
  symbol: 'IO-PERP',
729
730
  baseAssetSymbol: 'IO',
730
731
  marketIndex: 32,
731
- oracle: new web3_js_1.PublicKey('HxM66CFwGwrvfTFFkvvA8N3CnKX6m2obzameYWDaSSdA'),
732
+ oracle: new web3_js_1.PublicKey('8x84eFZVGD9C8vmQqnB9P8UDPMdDWduFaULspKUYGthP'),
732
733
  launchTs: 1718021389000,
733
- oracleSource: __1.OracleSource.PYTH_PULL,
734
+ oracleSource: __1.OracleSource.PYTH_LAZER,
734
735
  pythFeedId: '0x82595d1509b770fa52681e260af4dda9752b87316d7c048535d8ead3fa856eb1',
735
736
  pythLazerId: 90,
736
737
  },
@@ -751,10 +752,11 @@ exports.MainnetPerpMarkets = [
751
752
  symbol: 'POPCAT-PERP',
752
753
  baseAssetSymbol: 'POPCAT',
753
754
  marketIndex: 34,
754
- oracle: new web3_js_1.PublicKey('H3pn43tkNvsG5z3qzmERguSvKoyHZvvY6VPmNrJqiW5X'),
755
+ oracle: new web3_js_1.PublicKey('C5fiAmQyjdfDR4EGepZqnEL3fJwMBav5yoAk6XyKMF6u'),
755
756
  launchTs: 1720013054000,
756
- oracleSource: __1.OracleSource.PYTH_PULL,
757
+ oracleSource: __1.OracleSource.PYTH_LAZER,
757
758
  pythFeedId: '0xb9312a7ee50e189ef045aa3c7842e099b061bd9bdc99ac645956c3b660dc8cce',
759
+ pythLazerId: 130,
758
760
  },
759
761
  {
760
762
  fullName: 'Wen',
@@ -928,10 +930,11 @@ exports.MainnetPerpMarkets = [
928
930
  symbol: '1KMEW-PERP',
929
931
  baseAssetSymbol: '1KMEW',
930
932
  marketIndex: 51,
931
- oracle: new web3_js_1.PublicKey('DKGwCUcwngwmgifGxnme7zVR695LCBGk2pnuksRnbhfD'),
933
+ oracle: new web3_js_1.PublicKey('138RQdT1frDTnEp989V7gUWoQ5yg382ns4ihjvgJLcz7'),
932
934
  launchTs: 1729702915000,
933
- oracleSource: __1.OracleSource.PYTH_1K_PULL,
935
+ oracleSource: __1.OracleSource.PYTH_LAZER_1K,
934
936
  pythFeedId: '0x514aed52ca5294177f20187ae883cec4a018619772ddce41efcc36a6448f5d5d',
937
+ pythLazerId: 137,
935
938
  },
936
939
  {
937
940
  fullName: 'MICHI',
@@ -972,9 +975,9 @@ exports.MainnetPerpMarkets = [
972
975
  symbol: 'PNUT-PERP',
973
976
  baseAssetSymbol: 'PNUT',
974
977
  marketIndex: 55,
975
- oracle: new web3_js_1.PublicKey('5AcetMtdRHxkse2ny44NcRdsysnXu9deW7Yy5Y63qAHE'),
978
+ oracle: new web3_js_1.PublicKey('Fbd2hz8Uz26gLm2Jrj7WSrhxusrh9VuSEWVpLBPJgMYX'),
976
979
  launchTs: 1731443152000,
977
- oracleSource: __1.OracleSource.PYTH_PULL,
980
+ oracleSource: __1.OracleSource.PYTH_LAZER,
978
981
  pythFeedId: '0x116da895807f81f6b5c5f01b109376e7f6834dc8b51365ab7cdfa66634340e54',
979
982
  pythLazerId: 77,
980
983
  },
@@ -984,9 +987,9 @@ exports.MainnetPerpMarkets = [
984
987
  symbol: 'RAY-PERP',
985
988
  baseAssetSymbol: 'RAY',
986
989
  marketIndex: 56,
987
- oracle: new web3_js_1.PublicKey('DPvPBacXhEyA1VXF4E3EYH3h83Bynh5uP3JLeN25TWzm'),
990
+ oracle: new web3_js_1.PublicKey('6VXU2P9BJkuPkfA7FJVonBtAo1c2pGnHoV9rxsdZKZyb'),
988
991
  launchTs: 1732721897000,
989
- oracleSource: __1.OracleSource.PYTH_PULL,
992
+ oracleSource: __1.OracleSource.PYTH_LAZER,
990
993
  pythFeedId: '0x91568baa8beb53db23eb3fb7f22c6e8bd303d103919e19733f2bb642d3e7987a',
991
994
  pythLazerId: 54,
992
995
  },
@@ -1016,10 +1019,11 @@ exports.MainnetPerpMarkets = [
1016
1019
  symbol: 'HYPE-PERP',
1017
1020
  baseAssetSymbol: 'HYPE',
1018
1021
  marketIndex: 59,
1019
- oracle: new web3_js_1.PublicKey('Hn9JHQHKSvtnZ2xTWCgRGVNmav2TPffH7T72T6WoJ1cw'),
1022
+ oracle: new web3_js_1.PublicKey('3ivZ5AnnUhocgmjiWjT8kDV87S6PpEL3CEHcd3vn2itM'),
1020
1023
  launchTs: 1733374800000,
1021
- oracleSource: __1.OracleSource.PYTH_PULL,
1024
+ oracleSource: __1.OracleSource.PYTH_LAZER,
1022
1025
  pythFeedId: '0x4279e31cc369bbcc2faf022b382b080e32a8e689ff20fbc530d2a603eb6cd98b',
1026
+ pythLazerId: 110,
1023
1027
  },
1024
1028
  {
1025
1029
  fullName: 'LiteCoin',
@@ -1027,10 +1031,11 @@ exports.MainnetPerpMarkets = [
1027
1031
  symbol: 'LTC-PERP',
1028
1032
  baseAssetSymbol: 'LTC',
1029
1033
  marketIndex: 60,
1030
- oracle: new web3_js_1.PublicKey('AmjHowvVkVJApCPUiwV9CdHVFn29LiBYZQqtZQ3xMqdg'),
1034
+ oracle: new web3_js_1.PublicKey('CrW8rga5bEZP1KBnqoQmPUcnYjrCPYQFbrMja99QKxsK'),
1031
1035
  launchTs: 1733374800000,
1032
- oracleSource: __1.OracleSource.PYTH_PULL,
1036
+ oracleSource: __1.OracleSource.PYTH_LAZER,
1033
1037
  pythFeedId: '0x6e3f3fa8253588df9326580180233eb791e03b443a3ba7a1d892e73874e19a54',
1038
+ pythLazerId: 26,
1034
1039
  },
1035
1040
  {
1036
1041
  fullName: 'Magic Eden',
@@ -1062,10 +1067,11 @@ exports.MainnetPerpMarkets = [
1062
1067
  symbol: 'AI16Z-PERP',
1063
1068
  baseAssetSymbol: 'AI16Z',
1064
1069
  marketIndex: 63,
1065
- oracle: new web3_js_1.PublicKey('3gdGkrmBdYR7B1MRRdRVysqhZCvYvLGHonr9b7o9WVki'),
1070
+ oracle: new web3_js_1.PublicKey('3BGheQVvYtBNpBKSUXSTjpyKQc3dh8iiwT91Aiq7KYCU'),
1066
1071
  launchTs: 1736384970000,
1067
- oracleSource: __1.OracleSource.PYTH_PULL,
1072
+ oracleSource: __1.OracleSource.PYTH_LAZER,
1068
1073
  pythFeedId: '0x2551eca7784671173def2c41e6f3e51e11cd87494863f1d208fdd8c64a1f85ae',
1074
+ pythLazerId: 171,
1069
1075
  },
1070
1076
  {
1071
1077
  fullName: 'TRUMP',
@@ -1073,10 +1079,11 @@ exports.MainnetPerpMarkets = [
1073
1079
  symbol: 'TRUMP-PERP',
1074
1080
  baseAssetSymbol: 'TRUMP',
1075
1081
  marketIndex: 64,
1076
- oracle: new web3_js_1.PublicKey('AmSLxftd19EPDR9NnZDxvdStqtRW7k9zWto7FfGaz24K'),
1082
+ oracle: new web3_js_1.PublicKey('FPQjZYvHRGy51guJ77p7n9u9b8eo1ktKRc2D2g5Vysth'),
1077
1083
  launchTs: 1737219250000,
1078
- oracleSource: __1.OracleSource.PYTH_PULL,
1084
+ oracleSource: __1.OracleSource.PYTH_LAZER,
1079
1085
  pythFeedId: '0x879551021853eec7a7dc827578e8e69da7e4fa8148339aa0d3d5296405be4b1a',
1086
+ pythLazerId: 203,
1080
1087
  },
1081
1088
  {
1082
1089
  fullName: 'MELANIA',
@@ -1084,10 +1091,11 @@ exports.MainnetPerpMarkets = [
1084
1091
  symbol: 'MELANIA-PERP',
1085
1092
  baseAssetSymbol: 'MELANIA',
1086
1093
  marketIndex: 65,
1087
- oracle: new web3_js_1.PublicKey('28Zk42cxbg4MxiTewSwoedvW6MUgjoVHSTvTW7zQ7ESi'),
1094
+ oracle: new web3_js_1.PublicKey('3RgNWYYcZCKf5uZfriK8ASUbGQErhH6YbpdvZQ7ZKDCf'),
1088
1095
  launchTs: 1737360280000,
1089
- oracleSource: __1.OracleSource.PYTH_PULL,
1096
+ oracleSource: __1.OracleSource.PYTH_LAZER,
1090
1097
  pythFeedId: '0x8fef7d52c7f4e3a6258d663f9d27e64a1b6fd95ab5f7d545dbf9a515353d0064',
1098
+ pythLazerId: 145,
1091
1099
  },
1092
1100
  {
1093
1101
  fullName: 'BERA',
@@ -1100,6 +1108,36 @@ exports.MainnetPerpMarkets = [
1100
1108
  oracleSource: __1.OracleSource.PYTH_PULL,
1101
1109
  pythFeedId: '0x962088abcfdbdb6e30db2e340c8cf887d9efb311b1f2f17b155a63dbb6d40265',
1102
1110
  },
1111
+ {
1112
+ fullName: 'NBAFINALS25-OKC',
1113
+ category: ['Prediction', 'Sport'],
1114
+ symbol: 'NBAFINALS25-OKC-BET',
1115
+ baseAssetSymbol: 'NBAFINALS25-OKC',
1116
+ marketIndex: 67,
1117
+ oracle: new web3_js_1.PublicKey('HieNNSAy9tjtU2mLEcGtgCMViCeZ1881fX7tfezL7wdV'),
1118
+ launchTs: 1739463226000,
1119
+ oracleSource: __1.OracleSource.Prelaunch,
1120
+ },
1121
+ {
1122
+ fullName: 'NBAFINALS25-BOS',
1123
+ category: ['Prediction', 'Sport'],
1124
+ symbol: 'NBAFINALS25-BOS-BET',
1125
+ baseAssetSymbol: 'NBAFINALS25-BOS',
1126
+ marketIndex: 68,
1127
+ oracle: new web3_js_1.PublicKey('HorrnsG8RBMv7dhzbgPX4wqcWbUTV5NwV8r59UwTu4CJ'),
1128
+ launchTs: 1739463226000,
1129
+ oracleSource: __1.OracleSource.Prelaunch,
1130
+ },
1131
+ {
1132
+ fullName: 'KAITO',
1133
+ category: ['AI'],
1134
+ symbol: 'KAITO-PERP',
1135
+ baseAssetSymbol: 'KAITO',
1136
+ marketIndex: 69,
1137
+ oracle: new web3_js_1.PublicKey('92178mkEc5EFbHPaRNrsv9KPBpgbbDQCPzbSpxmDVy6a'),
1138
+ launchTs: 1739545901000,
1139
+ oracleSource: __1.OracleSource.Prelaunch,
1140
+ },
1103
1141
  ];
1104
1142
  exports.PerpMarkets = {
1105
1143
  devnet: exports.DevnetPerpMarkets,
@@ -163,8 +163,8 @@ exports.MainnetSpotMarkets = [
163
163
  symbol: 'USDT',
164
164
  marketIndex: 5,
165
165
  poolId: 0,
166
- oracle: new web3_js_1.PublicKey('BekJ3P5G3iFeC97sXHuKnUHofCFj9Sbo7uyF2fkKwvit'),
167
- oracleSource: __1.OracleSource.PYTH_STABLE_COIN_PULL,
166
+ oracle: new web3_js_1.PublicKey('JDKJSkxjasBGL3ce1pkrN6tqDzuVUZPWzzkGuyX8m9yN'),
167
+ oracleSource: __1.OracleSource.PYTH_LAZER_STABLE_COIN,
168
168
  mint: new web3_js_1.PublicKey('Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB'),
169
169
  precision: numericConstants_1.QUOTE_PRECISION,
170
170
  precisionExp: numericConstants_1.QUOTE_PRECISION_EXP,
@@ -215,8 +215,8 @@ exports.MainnetSpotMarkets = [
215
215
  symbol: 'JTO',
216
216
  marketIndex: 9,
217
217
  poolId: 0,
218
- oracle: new web3_js_1.PublicKey('Ffq6ACJ17NAgaxC6ocfMzVXL3K61qxB2xHg6WUawWPfP'),
219
- oracleSource: __1.OracleSource.PYTH_PULL,
218
+ oracle: new web3_js_1.PublicKey('CGCz4mB8NsDddCq6BZToRUDUuktzsAfpKYh6ATgyyCGF'),
219
+ oracleSource: __1.OracleSource.PYTH_LAZER,
220
220
  mint: new web3_js_1.PublicKey('jtojtomepa8beP8AuQc6eXt5FriJwfFMwQx2v2f9mCL'),
221
221
  precision: new __1.BN(10).pow(numericConstants_1.NINE),
222
222
  precisionExp: numericConstants_1.NINE,
@@ -229,8 +229,8 @@ exports.MainnetSpotMarkets = [
229
229
  symbol: 'WIF',
230
230
  marketIndex: 10,
231
231
  poolId: 0,
232
- oracle: new web3_js_1.PublicKey('6x6KfE7nY2xoLCRSMPT1u83wQ5fpGXoKNBqFjrCwzsCQ'),
233
- oracleSource: __1.OracleSource.PYTH_PULL,
232
+ oracle: new web3_js_1.PublicKey('4QXWStoyEErTZFVsvKrvxuNa6QT8zpeA8jddZunSGvYE'),
233
+ oracleSource: __1.OracleSource.PYTH_LAZER,
234
234
  mint: new web3_js_1.PublicKey('EKpQGSJtjMFqKZ9KQanSqYXRcF8fBopzLHYxdM65zcjm'),
235
235
  precision: new __1.BN(10).pow(numericConstants_1.SIX),
236
236
  precisionExp: numericConstants_1.SIX,
@@ -244,8 +244,8 @@ exports.MainnetSpotMarkets = [
244
244
  symbol: 'JUP',
245
245
  marketIndex: 11,
246
246
  poolId: 0,
247
- oracle: new web3_js_1.PublicKey('AwqRpfJ36jnSZQykyL1jYY35mhMteeEAjh7o8LveRQin'),
248
- oracleSource: __1.OracleSource.PYTH_PULL,
247
+ oracle: new web3_js_1.PublicKey('DXqKSHyhTBKEW4qgnL7ycbf3Jca5hCvUgWHFYWsh4KJa'),
248
+ oracleSource: __1.OracleSource.PYTH_LAZER,
249
249
  mint: new web3_js_1.PublicKey('JUPyiwrYJFskUPiHa7hkeR8VUtAeFoSYbKedZNsDvCN'),
250
250
  precision: new __1.BN(10).pow(numericConstants_1.SIX),
251
251
  precisionExp: numericConstants_1.SIX,
@@ -286,8 +286,8 @@ exports.MainnetSpotMarkets = [
286
286
  symbol: 'TNSR',
287
287
  marketIndex: 14,
288
288
  poolId: 0,
289
- oracle: new web3_js_1.PublicKey('13jpjpVyU5hGpjsZ4HzCcmBo85wze4N8Au7U6cC3GMip'),
290
- oracleSource: __1.OracleSource.PYTH_PULL,
289
+ oracle: new web3_js_1.PublicKey('EX6r1GdfsgcUsY6cQ6YsToV4RGsb4HKpjrkokK2DrmsS'),
290
+ oracleSource: __1.OracleSource.PYTH_LAZER,
291
291
  mint: new web3_js_1.PublicKey('TNSRxcUxoT9xBG3de7PiJyTDYu7kskLqcpddxnEJAS6'),
292
292
  precision: new __1.BN(10).pow(numericConstants_1.NINE),
293
293
  precisionExp: numericConstants_1.NINE,
@@ -361,14 +361,15 @@ exports.MainnetSpotMarkets = [
361
361
  symbol: 'POPCAT',
362
362
  marketIndex: 20,
363
363
  poolId: 0,
364
- oracle: new web3_js_1.PublicKey('H3pn43tkNvsG5z3qzmERguSvKoyHZvvY6VPmNrJqiW5X'),
365
- oracleSource: __1.OracleSource.PYTH_PULL,
364
+ oracle: new web3_js_1.PublicKey('C5fiAmQyjdfDR4EGepZqnEL3fJwMBav5yoAk6XyKMF6u'),
365
+ oracleSource: __1.OracleSource.PYTH_LAZER,
366
366
  mint: new web3_js_1.PublicKey('7GCihgDB8fe6KNjn2MYtkzZcRjQy3t9GHdC8uHYmW2hr'),
367
367
  precision: new __1.BN(10).pow(numericConstants_1.NINE),
368
368
  precisionExp: numericConstants_1.NINE,
369
369
  launchTs: 1720013054000,
370
370
  phoenixMarket: new web3_js_1.PublicKey('31XgvAQ1HgFQEk31KdszbPkVXKaQqB1bgYZPoDrFpSR2'),
371
371
  pythFeedId: '0xb9312a7ee50e189ef045aa3c7842e099b061bd9bdc99ac645956c3b660dc8cce',
372
+ pythLazerId: 130,
372
373
  },
373
374
  {
374
375
  symbol: 'CLOUD',
@@ -385,23 +386,25 @@ exports.MainnetSpotMarkets = [
385
386
  symbol: 'PYUSD',
386
387
  marketIndex: 22,
387
388
  poolId: 0,
388
- oracle: new web3_js_1.PublicKey('HpMoKp3TCd3QT4MWYUKk2zCBwmhr5Df45fB6wdxYqEeh'),
389
- oracleSource: __1.OracleSource.PYTH_PULL,
389
+ oracle: new web3_js_1.PublicKey('5QZMnsyndmphvZF4BNgoMHwVZaREXeE2rpBoCPMxgCCd'),
390
+ oracleSource: __1.OracleSource.PYTH_LAZER_STABLE_COIN,
390
391
  mint: new web3_js_1.PublicKey('2b1kV6DkPAnxd5ixfnxCpjxmKwqjjaYmCZfHsFu24GXo'),
391
392
  precision: new __1.BN(10).pow(numericConstants_1.SIX),
392
393
  precisionExp: numericConstants_1.SIX,
393
394
  pythFeedId: '0xc1da1b73d7f01e7ddd54b3766cf7fcd644395ad14f70aa706ec5384c59e76692',
395
+ pythLazerId: 156,
394
396
  },
395
397
  {
396
398
  symbol: 'USDe',
397
399
  marketIndex: 23,
398
400
  poolId: 0,
399
- oracle: new web3_js_1.PublicKey('BXej5boX2nWudwAfZQedo212B9XJxhjTeeF3GbCwXmYa'),
400
- oracleSource: __1.OracleSource.PYTH_PULL,
401
+ oracle: new web3_js_1.PublicKey('5uR6oza6teuMRpjsbMi9fDhCDid2hoYdRBiLW7WzcK54'),
402
+ oracleSource: __1.OracleSource.PYTH_LAZER_STABLE_COIN,
401
403
  mint: new web3_js_1.PublicKey('DEkqHyPN7GMRJ5cArtQFAWefqbZb33Hyf6s5iCwjEonT'),
402
404
  precision: new __1.BN(10).pow(numericConstants_1.NINE),
403
405
  precisionExp: numericConstants_1.NINE,
404
406
  pythFeedId: '0x6ec879b1e9963de5ee97e9c8710b742d6228252a5e2ca12d4ae81d7fe5ee8c5d',
407
+ pythLazerId: 204,
405
408
  },
406
409
  {
407
410
  symbol: 'sUSDe',
@@ -536,37 +539,40 @@ exports.MainnetSpotMarkets = [
536
539
  symbol: 'AI16Z',
537
540
  marketIndex: 35,
538
541
  poolId: 0,
539
- oracle: new web3_js_1.PublicKey('3gdGkrmBdYR7B1MRRdRVysqhZCvYvLGHonr9b7o9WVki'),
540
- oracleSource: __1.OracleSource.PYTH_PULL,
542
+ oracle: new web3_js_1.PublicKey('3BGheQVvYtBNpBKSUXSTjpyKQc3dh8iiwT91Aiq7KYCU'),
543
+ oracleSource: __1.OracleSource.PYTH_LAZER,
541
544
  mint: new web3_js_1.PublicKey('HeLp6NuQkmYB4pYWo2zYs22mESHXPQYzXbB8n4V98jwC'),
542
545
  precision: new __1.BN(10).pow(numericConstants_1.NINE),
543
546
  precisionExp: numericConstants_1.NINE,
544
547
  pythFeedId: '0x2551eca7784671173def2c41e6f3e51e11cd87494863f1d208fdd8c64a1f85ae',
545
548
  launchTs: 1736384970000,
549
+ pythLazerId: 171,
546
550
  },
547
551
  {
548
552
  symbol: 'TRUMP',
549
553
  marketIndex: 36,
550
554
  poolId: 0,
551
- oracle: new web3_js_1.PublicKey('AmSLxftd19EPDR9NnZDxvdStqtRW7k9zWto7FfGaz24K'),
552
- oracleSource: __1.OracleSource.PYTH_PULL,
555
+ oracle: new web3_js_1.PublicKey('FPQjZYvHRGy51guJ77p7n9u9b8eo1ktKRc2D2g5Vysth'),
556
+ oracleSource: __1.OracleSource.PYTH_LAZER,
553
557
  mint: new web3_js_1.PublicKey('6p6xgHyF7AeE6TZkSmFsko444wqoP15icUSqi2jfGiPN'),
554
558
  precision: new __1.BN(10).pow(numericConstants_1.SIX),
555
559
  precisionExp: numericConstants_1.SIX,
556
560
  pythFeedId: '0x879551021853eec7a7dc827578e8e69da7e4fa8148339aa0d3d5296405be4b1a',
557
561
  launchTs: 1737219250000,
562
+ pythLazerId: 203,
558
563
  },
559
564
  {
560
565
  symbol: 'MELANIA',
561
566
  marketIndex: 37,
562
567
  poolId: 0,
563
- oracle: new web3_js_1.PublicKey('28Zk42cxbg4MxiTewSwoedvW6MUgjoVHSTvTW7zQ7ESi'),
564
- oracleSource: __1.OracleSource.PYTH_PULL,
568
+ oracle: new web3_js_1.PublicKey('3RgNWYYcZCKf5uZfriK8ASUbGQErhH6YbpdvZQ7ZKDCf'),
569
+ oracleSource: __1.OracleSource.PYTH_LAZER,
565
570
  mint: new web3_js_1.PublicKey('FUAfBo2jgks6gB4Z4LfZkqSZgzNucisEHqnNebaRxM1P'),
566
571
  precision: new __1.BN(10).pow(numericConstants_1.SIX),
567
572
  precisionExp: numericConstants_1.SIX,
568
573
  pythFeedId: '0x8fef7d52c7f4e3a6258d663f9d27e64a1b6fd95ab5f7d545dbf9a515353d0064',
569
574
  launchTs: 1737360280000,
575
+ pythLazerId: 145,
570
576
  },
571
577
  {
572
578
  symbol: 'AUSD',
@@ -308,7 +308,11 @@ function decodeUser(buffer) {
308
308
  marginMode = __1.MarginMode.HIGH_LEVERAGE;
309
309
  }
310
310
  offset += 1;
311
- // @ts-ignore
311
+ const poolId = buffer.readUint8(offset);
312
+ offset += 1;
313
+ offset += 3; // padding
314
+ const lastFuelBonusUpdateTs = buffer.readUint32LE(offset);
315
+ offset += 4;
312
316
  return {
313
317
  authority,
314
318
  delegate,
@@ -337,6 +341,8 @@ function decodeUser(buffer) {
337
341
  openAuctions,
338
342
  hasOpenAuction,
339
343
  marginMode,
344
+ poolId,
345
+ lastFuelBonusUpdateTs,
340
346
  };
341
347
  }
342
348
  exports.decodeUser = decodeUser;
@@ -33,9 +33,9 @@ export type MarketNodeLists = {
33
33
  above: NodeList<'trigger'>;
34
34
  below: NodeList<'trigger'>;
35
35
  };
36
- swift: {
37
- ask: NodeList<'swift'>;
38
- bid: NodeList<'swift'>;
36
+ signedMsg: {
37
+ ask: NodeList<'signedMsg'>;
38
+ bid: NodeList<'signedMsg'>;
39
39
  };
40
40
  };
41
41
  type OrderBookCallback = () => void;
@@ -69,7 +69,7 @@ export declare class DLOB {
69
69
  */
70
70
  initFromUserMap(userMap: UserMap, slot: number): Promise<boolean>;
71
71
  insertOrder(order: Order, userAccount: string, slot: number, isUserProtectedMaker: boolean, onInsert?: OrderBookCallback): void;
72
- insertSwiftOrder(order: Order, userAccount: string, isUserProtectedMaker: boolean, onInsert?: OrderBookCallback): void;
72
+ insertSignedMsgOrder(order: Order, userAccount: string, isUserProtectedMaker: boolean, onInsert?: OrderBookCallback): void;
73
73
  addOrderList(marketType: MarketTypeStr, marketIndex: number): void;
74
74
  delete(order: Order, userAccount: PublicKey, slot: number, isUserProtectedMaker: boolean, onDelete?: OrderBookCallback): void;
75
75
  getListForOnChainOrder(order: Order, slot: number, isProtectedMaker: boolean): NodeList<any> | undefined;