@velocity-exchange/sdk 0.1.0 → 0.2.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.
- package/CHANGELOG.md +15 -0
- package/bun.lock +23 -1
- package/lib/browser/accounts/basicUserAccountSubscriber.d.ts +5 -3
- package/lib/browser/accounts/basicUserAccountSubscriber.js +4 -3
- package/lib/browser/accounts/basicUserStatsAccountSubscriber.d.ts +5 -3
- package/lib/browser/accounts/basicUserStatsAccountSubscriber.js +4 -3
- package/lib/browser/accounts/bulkAccountLoader.d.ts +5 -5
- package/lib/browser/accounts/bulkAccountLoader.js +12 -1
- package/lib/browser/accounts/grpcAccountSubscriber.d.ts +2 -1
- package/lib/browser/accounts/grpcAccountSubscriber.js +8 -2
- package/lib/browser/accounts/grpcMultiAccountSubscriber.d.ts +3 -2
- package/lib/browser/accounts/grpcMultiAccountSubscriber.js +13 -5
- package/lib/browser/accounts/grpcMultiUserAccountSubscriber.d.ts +2 -1
- package/lib/browser/accounts/grpcMultiUserAccountSubscriber.js +12 -8
- package/lib/browser/accounts/grpcProgramAccountSubscriber.d.ts +2 -1
- package/lib/browser/accounts/grpcProgramAccountSubscriber.js +8 -2
- package/lib/browser/accounts/grpcVelocityClientAccountSubscriber.js +18 -3
- package/lib/browser/accounts/grpcVelocityClientAccountSubscriberV2.d.ts +1 -1
- package/lib/browser/accounts/grpcVelocityClientAccountSubscriberV2.js +40 -17
- package/lib/browser/accounts/laserProgramAccountSubscriber.js +3 -0
- package/lib/browser/accounts/oneShotUserAccountSubscriber.js +4 -3
- package/lib/browser/accounts/oneShotUserStatsAccountSubscriber.js +7 -3
- package/lib/browser/accounts/pollingInsuranceFundStakeAccountSubscriber.d.ts +4 -2
- package/lib/browser/accounts/pollingInsuranceFundStakeAccountSubscriber.js +3 -3
- package/lib/browser/accounts/pollingOracleAccountSubscriber.d.ts +0 -2
- package/lib/browser/accounts/pollingOracleAccountSubscriber.js +16 -5
- package/lib/browser/accounts/pollingTokenAccountSubscriber.d.ts +0 -2
- package/lib/browser/accounts/pollingTokenAccountSubscriber.js +16 -5
- package/lib/browser/accounts/pollingUserAccountSubscriber.d.ts +8 -4
- package/lib/browser/accounts/pollingUserAccountSubscriber.js +17 -11
- package/lib/browser/accounts/pollingUserStatsAccountSubscriber.d.ts +4 -2
- package/lib/browser/accounts/pollingUserStatsAccountSubscriber.js +6 -6
- package/lib/browser/accounts/pollingVelocityClientAccountSubscriber.d.ts +7 -1
- package/lib/browser/accounts/pollingVelocityClientAccountSubscriber.js +64 -28
- package/lib/browser/accounts/types.d.ts +4 -4
- package/lib/browser/accounts/utils.d.ts +1 -0
- package/lib/browser/accounts/utils.js +8 -1
- package/lib/browser/accounts/webSocketAccountSubscriber.d.ts +4 -2
- package/lib/browser/accounts/webSocketAccountSubscriber.js +17 -5
- package/lib/browser/accounts/webSocketAccountSubscriberV2.d.ts +4 -2
- package/lib/browser/accounts/webSocketAccountSubscriberV2.js +17 -6
- package/lib/browser/accounts/webSocketInsuranceFundStakeAccountSubscriber.d.ts +4 -2
- package/lib/browser/accounts/webSocketInsuranceFundStakeAccountSubscriber.js +9 -0
- package/lib/browser/accounts/webSocketProgramAccountSubscriber.d.ts +3 -1
- package/lib/browser/accounts/webSocketProgramAccountSubscriber.js +14 -3
- package/lib/browser/accounts/webSocketProgramAccountSubscriberV2.d.ts +3 -1
- package/lib/browser/accounts/webSocketProgramAccountSubscriberV2.js +15 -3
- package/lib/browser/accounts/webSocketProgramAccountsSubscriberV2.d.ts +3 -1
- package/lib/browser/accounts/webSocketProgramAccountsSubscriberV2.js +14 -4
- package/lib/browser/accounts/webSocketUserAccountSubscriber.d.ts +4 -2
- package/lib/browser/accounts/webSocketUserAccountSubscriber.js +9 -0
- package/lib/browser/accounts/webSocketUserStatsAccountSubsriber.d.ts +4 -2
- package/lib/browser/accounts/webSocketUserStatsAccountSubsriber.js +9 -0
- package/lib/browser/accounts/webSocketVelocityClientAccountSubscriber.d.ts +4 -4
- package/lib/browser/accounts/webSocketVelocityClientAccountSubscriber.js +48 -20
- package/lib/browser/accounts/webSocketVelocityClientAccountSubscriberV2.d.ts +7 -3
- package/lib/browser/accounts/webSocketVelocityClientAccountSubscriberV2.js +45 -14
- package/lib/browser/accounts/websocketProgramUserAccountSubscriber.d.ts +1 -1
- package/lib/browser/accounts/websocketProgramUserAccountSubscriber.js +0 -3
- package/lib/browser/addresses/marketAddresses.js +3 -2
- package/lib/browser/addresses/pda.d.ts +0 -2
- package/lib/browser/addresses/pda.js +1 -14
- package/lib/browser/adminClient.d.ts +24 -28
- package/lib/browser/adminClient.js +156 -157
- package/lib/browser/auctionSubscriber/auctionSubscriber.d.ts +1 -1
- package/lib/browser/auctionSubscriber/auctionSubscriber.js +6 -4
- package/lib/browser/auctionSubscriber/auctionSubscriberGrpc.d.ts +1 -1
- package/lib/browser/auctionSubscriber/auctionSubscriberGrpc.js +9 -4
- package/lib/browser/bankrun/bankrunConnection.d.ts +6 -4
- package/lib/browser/bankrun/bankrunConnection.js +69 -31
- package/lib/browser/blockhashSubscriber/BlockhashSubscriber.d.ts +1 -1
- package/lib/browser/blockhashSubscriber/BlockhashSubscriber.js +3 -2
- package/lib/browser/clock/clockSubscriber.d.ts +6 -6
- package/lib/browser/clock/clockSubscriber.js +4 -3
- package/lib/browser/config.d.ts +1 -1
- package/lib/browser/config.js +8 -4
- package/lib/browser/constants/index.d.ts +1 -2
- package/lib/browser/constants/index.js +1 -2
- package/lib/browser/constants/numericConstants.d.ts +1 -3
- package/lib/browser/constants/numericConstants.js +3 -5
- package/lib/browser/constituentMap/constituentMap.js +5 -1
- package/lib/browser/constituentMap/pollingConstituentAccountSubscriber.js +3 -2
- package/lib/browser/constituentMap/webSocketConstituentAccountSubscriber.d.ts +2 -3
- package/lib/browser/constituentMap/webSocketConstituentAccountSubscriber.js +10 -3
- package/lib/browser/core/instructions/perpOrders.d.ts +14 -0
- package/lib/browser/core/instructions/perpOrders.js +14 -0
- package/lib/browser/core/remainingAccounts.d.ts +2 -2
- package/lib/browser/core/remainingAccounts.js +2 -2
- package/lib/browser/decode/user.js +9 -1
- package/lib/browser/dlob/DLOB.d.ts +6 -1
- package/lib/browser/dlob/DLOB.js +201 -138
- package/lib/browser/dlob/DLOBNode.d.ts +5 -2
- package/lib/browser/dlob/DLOBNode.js +7 -0
- package/lib/browser/dlob/DLOBSubscriber.js +37 -32
- package/lib/browser/dlob/NodeList.js +8 -7
- package/lib/browser/dlob/orderBookLevels.js +19 -12
- package/lib/browser/events/eventList.js +4 -1
- package/lib/browser/events/eventSubscriber.d.ts +5 -2
- package/lib/browser/events/eventSubscriber.js +75 -26
- package/lib/browser/events/eventsServerLogProvider.d.ts +1 -1
- package/lib/browser/events/eventsServerLogProvider.js +15 -8
- package/lib/browser/events/fetchLogs.d.ts +1 -1
- package/lib/browser/events/fetchLogs.js +4 -2
- package/lib/browser/events/pollingLogProvider.d.ts +1 -1
- package/lib/browser/events/pollingLogProvider.js +1 -0
- package/lib/browser/events/txEventCache.js +6 -2
- package/lib/browser/events/types.d.ts +2 -4
- package/lib/browser/events/types.js +0 -2
- package/lib/browser/events/webSocketLogProvider.d.ts +1 -1
- package/lib/browser/events/webSocketLogProvider.js +5 -2
- package/lib/browser/factory/bigNum.js +1 -1
- package/lib/browser/idl/velocity.d.ts +1243 -1586
- package/lib/browser/idl/velocity.json +1234 -1577
- package/lib/browser/index.d.ts +0 -2
- package/lib/browser/index.js +0 -2
- package/lib/browser/jupiter/jupiterClient.d.ts +1 -1
- package/lib/browser/jupiter/jupiterClient.js +18 -8
- package/lib/browser/marginCalculation.js +1 -0
- package/lib/browser/math/amm.d.ts +31 -13
- package/lib/browser/math/amm.js +77 -22
- package/lib/browser/math/bankruptcy.js +1 -1
- package/lib/browser/math/funding.js +6 -6
- package/lib/browser/math/insurance.d.ts +1 -1
- package/lib/browser/math/insurance.js +4 -5
- package/lib/browser/math/margin.d.ts +1 -9
- package/lib/browser/math/margin.js +3 -62
- package/lib/browser/math/market.d.ts +4 -12
- package/lib/browser/math/market.js +6 -40
- package/lib/browser/math/oracles.d.ts +0 -3
- package/lib/browser/math/oracles.js +1 -14
- package/lib/browser/math/orders.d.ts +0 -5
- package/lib/browser/math/orders.js +2 -74
- package/lib/browser/math/position.d.ts +0 -4
- package/lib/browser/math/position.js +5 -10
- package/lib/browser/math/repeg.d.ts +0 -1
- package/lib/browser/math/repeg.js +1 -23
- package/lib/browser/math/spotBalance.d.ts +4 -4
- package/lib/browser/math/spotBalance.js +6 -6
- package/lib/browser/math/spotMarket.d.ts +0 -6
- package/lib/browser/math/spotMarket.js +1 -16
- package/lib/browser/math/spotPosition.d.ts +4 -4
- package/lib/browser/math/state.d.ts +0 -2
- package/lib/browser/math/state.js +1 -9
- package/lib/browser/math/superStake.d.ts +3 -53
- package/lib/browser/math/superStake.js +16 -13
- package/lib/browser/math/trade.js +6 -6
- package/lib/browser/memcmp.d.ts +0 -1
- package/lib/browser/memcmp.js +1 -10
- package/lib/browser/oracles/prelaunchOracleClient.js +3 -2
- package/lib/browser/oracles/pythClient.js +9 -3
- package/lib/browser/oracles/pythLazerClient.js +3 -2
- package/lib/browser/oracles/utils.d.ts +4 -0
- package/lib/browser/oracles/utils.js +9 -1
- package/lib/browser/orderSubscriber/OrderSubscriber.d.ts +1 -1
- package/lib/browser/orderSubscriber/OrderSubscriber.js +8 -2
- package/lib/browser/priorityFee/heliusPriorityFeeMethod.d.ts +1 -1
- package/lib/browser/priorityFee/priorityFeeSubscriber.d.ts +1 -1
- package/lib/browser/priorityFee/priorityFeeSubscriber.js +32 -8
- package/lib/browser/priorityFee/solanaPriorityFeeMethod.d.ts +1 -1
- package/lib/browser/pyth/types.d.ts +0 -1
- package/lib/browser/slot/SlotSubscriber.d.ts +1 -1
- package/lib/browser/slot/SlotSubscriber.js +2 -1
- package/lib/browser/slot/SlothashSubscriber.d.ts +3 -2
- package/lib/browser/slot/SlothashSubscriber.js +11 -4
- package/lib/browser/swift/grpcSignedMsgUserAccountSubscriber.d.ts +0 -3
- package/lib/browser/swift/grpcSignedMsgUserAccountSubscriber.js +5 -5
- package/lib/browser/swift/signedMsgUserAccountSubscriber.d.ts +3 -2
- package/lib/browser/swift/signedMsgUserAccountSubscriber.js +13 -5
- package/lib/browser/swift/swiftOrderSubscriber.d.ts +1 -1
- package/lib/browser/swift/swiftOrderSubscriber.js +10 -5
- package/lib/browser/testClient.js +3 -2
- package/lib/browser/tokenFaucet.js +16 -2
- package/lib/browser/tx/baseTxSender.d.ts +4 -4
- package/lib/browser/tx/baseTxSender.js +5 -4
- package/lib/browser/tx/fastSingleTxSender.d.ts +3 -3
- package/lib/browser/tx/fastSingleTxSender.js +9 -5
- package/lib/browser/tx/reportTransactionError.d.ts +2 -2
- package/lib/browser/tx/reportTransactionError.js +5 -1
- package/lib/browser/tx/retryTxSender.d.ts +1 -1
- package/lib/browser/tx/retryTxSender.js +4 -2
- package/lib/browser/tx/txHandler.d.ts +7 -1
- package/lib/browser/tx/txHandler.js +54 -40
- package/lib/browser/tx/txParamProcessor.d.ts +4 -1
- package/lib/browser/tx/txParamProcessor.js +6 -0
- package/lib/browser/tx/types.d.ts +1 -1
- package/lib/browser/tx/whileValidTxSender.d.ts +1 -6
- package/lib/browser/tx/whileValidTxSender.js +35 -13
- package/lib/browser/types.d.ts +27 -70
- package/lib/browser/types.js +2 -2
- package/lib/browser/user.d.ts +21 -7
- package/lib/browser/user.js +156 -132
- package/lib/browser/userMap/WebsocketSubscription.d.ts +1 -1
- package/lib/browser/userMap/grpcSubscription.d.ts +1 -1
- package/lib/browser/userMap/referrerMap.js +10 -3
- package/lib/browser/userMap/revenueShareEscrowMap.js +4 -0
- package/lib/browser/userMap/userMap.d.ts +1 -1
- package/lib/browser/userMap/userMap.js +36 -23
- package/lib/browser/userMap/userStatsMap.d.ts +1 -1
- package/lib/browser/userMap/userStatsMap.js +18 -13
- package/lib/browser/userStats.d.ts +7 -2
- package/lib/browser/userStats.js +18 -4
- package/lib/browser/util/TransactionConfirmationManager.js +4 -2
- package/lib/browser/util/chainClock.d.ts +1 -1
- package/lib/browser/util/computeUnits.d.ts +1 -1
- package/lib/browser/util/computeUnits.js +6 -1
- package/lib/browser/velocityClient.d.ts +92 -34
- package/lib/browser/velocityClient.js +414 -280
- package/lib/node/accounts/basicUserAccountSubscriber.d.ts +5 -3
- package/lib/node/accounts/basicUserAccountSubscriber.d.ts.map +1 -1
- package/lib/node/accounts/basicUserAccountSubscriber.js +4 -3
- package/lib/node/accounts/basicUserStatsAccountSubscriber.d.ts +5 -3
- package/lib/node/accounts/basicUserStatsAccountSubscriber.d.ts.map +1 -1
- package/lib/node/accounts/basicUserStatsAccountSubscriber.js +4 -3
- package/lib/node/accounts/bulkAccountLoader.d.ts +5 -5
- package/lib/node/accounts/bulkAccountLoader.d.ts.map +1 -1
- package/lib/node/accounts/bulkAccountLoader.js +12 -1
- package/lib/node/accounts/grpcAccountSubscriber.d.ts +2 -1
- package/lib/node/accounts/grpcAccountSubscriber.d.ts.map +1 -1
- package/lib/node/accounts/grpcAccountSubscriber.js +8 -2
- package/lib/node/accounts/grpcMultiAccountSubscriber.d.ts +3 -2
- package/lib/node/accounts/grpcMultiAccountSubscriber.d.ts.map +1 -1
- package/lib/node/accounts/grpcMultiAccountSubscriber.js +13 -5
- package/lib/node/accounts/grpcMultiUserAccountSubscriber.d.ts +2 -1
- package/lib/node/accounts/grpcMultiUserAccountSubscriber.d.ts.map +1 -1
- package/lib/node/accounts/grpcMultiUserAccountSubscriber.js +12 -8
- package/lib/node/accounts/grpcProgramAccountSubscriber.d.ts +2 -1
- package/lib/node/accounts/grpcProgramAccountSubscriber.d.ts.map +1 -1
- package/lib/node/accounts/grpcProgramAccountSubscriber.js +8 -2
- package/lib/node/accounts/grpcVelocityClientAccountSubscriber.d.ts.map +1 -1
- package/lib/node/accounts/grpcVelocityClientAccountSubscriber.js +18 -3
- package/lib/node/accounts/grpcVelocityClientAccountSubscriberV2.d.ts +1 -1
- package/lib/node/accounts/grpcVelocityClientAccountSubscriberV2.d.ts.map +1 -1
- package/lib/node/accounts/grpcVelocityClientAccountSubscriberV2.js +40 -17
- package/lib/node/accounts/laserProgramAccountSubscriber.d.ts.map +1 -1
- package/lib/node/accounts/laserProgramAccountSubscriber.js +3 -0
- package/lib/node/accounts/oneShotUserAccountSubscriber.d.ts.map +1 -1
- package/lib/node/accounts/oneShotUserAccountSubscriber.js +4 -3
- package/lib/node/accounts/oneShotUserStatsAccountSubscriber.d.ts.map +1 -1
- package/lib/node/accounts/oneShotUserStatsAccountSubscriber.js +7 -3
- package/lib/node/accounts/pollingInsuranceFundStakeAccountSubscriber.d.ts +4 -2
- package/lib/node/accounts/pollingInsuranceFundStakeAccountSubscriber.d.ts.map +1 -1
- package/lib/node/accounts/pollingInsuranceFundStakeAccountSubscriber.js +3 -3
- package/lib/node/accounts/pollingOracleAccountSubscriber.d.ts +0 -2
- package/lib/node/accounts/pollingOracleAccountSubscriber.d.ts.map +1 -1
- package/lib/node/accounts/pollingOracleAccountSubscriber.js +16 -5
- package/lib/node/accounts/pollingTokenAccountSubscriber.d.ts +0 -2
- package/lib/node/accounts/pollingTokenAccountSubscriber.d.ts.map +1 -1
- package/lib/node/accounts/pollingTokenAccountSubscriber.js +16 -5
- package/lib/node/accounts/pollingUserAccountSubscriber.d.ts +8 -4
- package/lib/node/accounts/pollingUserAccountSubscriber.d.ts.map +1 -1
- package/lib/node/accounts/pollingUserAccountSubscriber.js +17 -11
- package/lib/node/accounts/pollingUserStatsAccountSubscriber.d.ts +4 -2
- package/lib/node/accounts/pollingUserStatsAccountSubscriber.d.ts.map +1 -1
- package/lib/node/accounts/pollingUserStatsAccountSubscriber.js +6 -6
- package/lib/node/accounts/pollingVelocityClientAccountSubscriber.d.ts +7 -1
- package/lib/node/accounts/pollingVelocityClientAccountSubscriber.d.ts.map +1 -1
- package/lib/node/accounts/pollingVelocityClientAccountSubscriber.js +64 -28
- package/lib/node/accounts/types.d.ts +4 -4
- package/lib/node/accounts/types.d.ts.map +1 -1
- package/lib/node/accounts/utils.d.ts +1 -0
- package/lib/node/accounts/utils.d.ts.map +1 -1
- package/lib/node/accounts/utils.js +8 -1
- package/lib/node/accounts/webSocketAccountSubscriber.d.ts +4 -2
- package/lib/node/accounts/webSocketAccountSubscriber.d.ts.map +1 -1
- package/lib/node/accounts/webSocketAccountSubscriber.js +17 -5
- package/lib/node/accounts/webSocketAccountSubscriberV2.d.ts +4 -2
- package/lib/node/accounts/webSocketAccountSubscriberV2.d.ts.map +1 -1
- package/lib/node/accounts/webSocketAccountSubscriberV2.js +17 -6
- package/lib/node/accounts/webSocketInsuranceFundStakeAccountSubscriber.d.ts +4 -2
- package/lib/node/accounts/webSocketInsuranceFundStakeAccountSubscriber.d.ts.map +1 -1
- package/lib/node/accounts/webSocketInsuranceFundStakeAccountSubscriber.js +9 -0
- package/lib/node/accounts/webSocketProgramAccountSubscriber.d.ts +3 -1
- package/lib/node/accounts/webSocketProgramAccountSubscriber.d.ts.map +1 -1
- package/lib/node/accounts/webSocketProgramAccountSubscriber.js +14 -3
- package/lib/node/accounts/webSocketProgramAccountSubscriberV2.d.ts +3 -1
- package/lib/node/accounts/webSocketProgramAccountSubscriberV2.d.ts.map +1 -1
- package/lib/node/accounts/webSocketProgramAccountSubscriberV2.js +15 -3
- package/lib/node/accounts/webSocketProgramAccountsSubscriberV2.d.ts +3 -1
- package/lib/node/accounts/webSocketProgramAccountsSubscriberV2.d.ts.map +1 -1
- package/lib/node/accounts/webSocketProgramAccountsSubscriberV2.js +14 -4
- package/lib/node/accounts/webSocketUserAccountSubscriber.d.ts +4 -2
- package/lib/node/accounts/webSocketUserAccountSubscriber.d.ts.map +1 -1
- package/lib/node/accounts/webSocketUserAccountSubscriber.js +9 -0
- package/lib/node/accounts/webSocketUserStatsAccountSubsriber.d.ts +4 -2
- package/lib/node/accounts/webSocketUserStatsAccountSubsriber.d.ts.map +1 -1
- package/lib/node/accounts/webSocketUserStatsAccountSubsriber.js +9 -0
- package/lib/node/accounts/webSocketVelocityClientAccountSubscriber.d.ts +4 -4
- package/lib/node/accounts/webSocketVelocityClientAccountSubscriber.d.ts.map +1 -1
- package/lib/node/accounts/webSocketVelocityClientAccountSubscriber.js +48 -20
- package/lib/node/accounts/webSocketVelocityClientAccountSubscriberV2.d.ts +7 -3
- package/lib/node/accounts/webSocketVelocityClientAccountSubscriberV2.d.ts.map +1 -1
- package/lib/node/accounts/webSocketVelocityClientAccountSubscriberV2.js +45 -14
- package/lib/node/accounts/websocketProgramUserAccountSubscriber.d.ts +1 -1
- package/lib/node/accounts/websocketProgramUserAccountSubscriber.d.ts.map +1 -1
- package/lib/node/accounts/websocketProgramUserAccountSubscriber.js +0 -3
- package/lib/node/addresses/marketAddresses.d.ts.map +1 -1
- package/lib/node/addresses/marketAddresses.js +3 -2
- package/lib/node/addresses/pda.d.ts +0 -2
- package/lib/node/addresses/pda.d.ts.map +1 -1
- package/lib/node/addresses/pda.js +1 -14
- package/lib/node/adminClient.d.ts +24 -28
- package/lib/node/adminClient.d.ts.map +1 -1
- package/lib/node/adminClient.js +156 -157
- package/lib/node/auctionSubscriber/auctionSubscriber.d.ts +1 -1
- package/lib/node/auctionSubscriber/auctionSubscriber.d.ts.map +1 -1
- package/lib/node/auctionSubscriber/auctionSubscriber.js +6 -4
- package/lib/node/auctionSubscriber/auctionSubscriberGrpc.d.ts +1 -1
- package/lib/node/auctionSubscriber/auctionSubscriberGrpc.d.ts.map +1 -1
- package/lib/node/auctionSubscriber/auctionSubscriberGrpc.js +9 -4
- package/lib/node/bankrun/bankrunConnection.d.ts +6 -4
- package/lib/node/bankrun/bankrunConnection.d.ts.map +1 -1
- package/lib/node/bankrun/bankrunConnection.js +69 -31
- package/lib/node/blockhashSubscriber/BlockhashSubscriber.d.ts +1 -1
- package/lib/node/blockhashSubscriber/BlockhashSubscriber.d.ts.map +1 -1
- package/lib/node/blockhashSubscriber/BlockhashSubscriber.js +3 -2
- package/lib/node/clock/clockSubscriber.d.ts +6 -6
- package/lib/node/clock/clockSubscriber.d.ts.map +1 -1
- package/lib/node/clock/clockSubscriber.js +4 -3
- package/lib/node/config.d.ts +1 -1
- package/lib/node/config.d.ts.map +1 -1
- package/lib/node/config.js +8 -4
- package/lib/node/constants/index.d.ts +1 -2
- package/lib/node/constants/index.d.ts.map +1 -1
- package/lib/node/constants/index.js +1 -2
- package/lib/node/constants/numericConstants.d.ts +1 -3
- package/lib/node/constants/numericConstants.d.ts.map +1 -1
- package/lib/node/constants/numericConstants.js +3 -5
- package/lib/node/constituentMap/constituentMap.d.ts.map +1 -1
- package/lib/node/constituentMap/constituentMap.js +5 -1
- package/lib/node/constituentMap/pollingConstituentAccountSubscriber.d.ts.map +1 -1
- package/lib/node/constituentMap/pollingConstituentAccountSubscriber.js +3 -2
- package/lib/node/constituentMap/webSocketConstituentAccountSubscriber.d.ts +2 -3
- package/lib/node/constituentMap/webSocketConstituentAccountSubscriber.d.ts.map +1 -1
- package/lib/node/constituentMap/webSocketConstituentAccountSubscriber.js +10 -3
- package/lib/node/core/instructions/perpOrders.d.ts +14 -0
- package/lib/node/core/instructions/perpOrders.d.ts.map +1 -1
- package/lib/node/core/instructions/perpOrders.js +14 -0
- package/lib/node/core/remainingAccounts.d.ts +2 -2
- package/lib/node/core/remainingAccounts.d.ts.map +1 -1
- package/lib/node/core/remainingAccounts.js +2 -2
- package/lib/node/decode/user.d.ts.map +1 -1
- package/lib/node/decode/user.js +9 -1
- package/lib/node/dlob/DLOB.d.ts +6 -1
- package/lib/node/dlob/DLOB.d.ts.map +1 -1
- package/lib/node/dlob/DLOB.js +201 -138
- package/lib/node/dlob/DLOBNode.d.ts +5 -2
- package/lib/node/dlob/DLOBNode.d.ts.map +1 -1
- package/lib/node/dlob/DLOBNode.js +7 -0
- package/lib/node/dlob/DLOBSubscriber.d.ts.map +1 -1
- package/lib/node/dlob/DLOBSubscriber.js +37 -32
- package/lib/node/dlob/NodeList.d.ts.map +1 -1
- package/lib/node/dlob/NodeList.js +8 -7
- package/lib/node/dlob/orderBookLevels.d.ts.map +1 -1
- package/lib/node/dlob/orderBookLevels.js +19 -12
- package/lib/node/events/eventList.d.ts +3 -3
- package/lib/node/events/eventList.d.ts.map +1 -1
- package/lib/node/events/eventList.js +4 -1
- package/lib/node/events/eventSubscriber.d.ts +5 -2
- package/lib/node/events/eventSubscriber.d.ts.map +1 -1
- package/lib/node/events/eventSubscriber.js +75 -26
- package/lib/node/events/eventsServerLogProvider.d.ts +2 -2
- package/lib/node/events/eventsServerLogProvider.d.ts.map +1 -1
- package/lib/node/events/eventsServerLogProvider.js +15 -8
- package/lib/node/events/fetchLogs.d.ts +1 -1
- package/lib/node/events/fetchLogs.d.ts.map +1 -1
- package/lib/node/events/fetchLogs.js +4 -2
- package/lib/node/events/pollingLogProvider.d.ts +2 -2
- package/lib/node/events/pollingLogProvider.d.ts.map +1 -1
- package/lib/node/events/pollingLogProvider.js +1 -0
- package/lib/node/events/txEventCache.d.ts +3 -3
- package/lib/node/events/txEventCache.d.ts.map +1 -1
- package/lib/node/events/txEventCache.js +6 -2
- package/lib/node/events/types.d.ts +2 -4
- package/lib/node/events/types.d.ts.map +1 -1
- package/lib/node/events/types.js +0 -2
- package/lib/node/events/webSocketLogProvider.d.ts +2 -2
- package/lib/node/events/webSocketLogProvider.d.ts.map +1 -1
- package/lib/node/events/webSocketLogProvider.js +5 -2
- package/lib/node/factory/bigNum.js +1 -1
- package/lib/node/idl/velocity.d.ts +1243 -1586
- package/lib/node/idl/velocity.d.ts.map +1 -1
- package/lib/node/idl/velocity.json +1234 -1577
- package/lib/node/index.d.ts +0 -2
- package/lib/node/index.d.ts.map +1 -1
- package/lib/node/index.js +0 -2
- package/lib/node/jupiter/jupiterClient.d.ts +1 -1
- package/lib/node/jupiter/jupiterClient.d.ts.map +1 -1
- package/lib/node/jupiter/jupiterClient.js +18 -8
- package/lib/node/marginCalculation.d.ts.map +1 -1
- package/lib/node/marginCalculation.js +1 -0
- package/lib/node/math/amm.d.ts +31 -13
- package/lib/node/math/amm.d.ts.map +1 -1
- package/lib/node/math/amm.js +77 -22
- package/lib/node/math/bankruptcy.js +1 -1
- package/lib/node/math/funding.d.ts.map +1 -1
- package/lib/node/math/funding.js +6 -6
- package/lib/node/math/insurance.d.ts +1 -1
- package/lib/node/math/insurance.d.ts.map +1 -1
- package/lib/node/math/insurance.js +4 -5
- package/lib/node/math/margin.d.ts +1 -9
- package/lib/node/math/margin.d.ts.map +1 -1
- package/lib/node/math/margin.js +3 -62
- package/lib/node/math/market.d.ts +4 -12
- package/lib/node/math/market.d.ts.map +1 -1
- package/lib/node/math/market.js +6 -40
- package/lib/node/math/oracles.d.ts +0 -3
- package/lib/node/math/oracles.d.ts.map +1 -1
- package/lib/node/math/oracles.js +1 -14
- package/lib/node/math/orders.d.ts +0 -5
- package/lib/node/math/orders.d.ts.map +1 -1
- package/lib/node/math/orders.js +2 -74
- package/lib/node/math/position.d.ts +1 -5
- package/lib/node/math/position.d.ts.map +1 -1
- package/lib/node/math/position.js +5 -10
- package/lib/node/math/repeg.d.ts +0 -1
- package/lib/node/math/repeg.d.ts.map +1 -1
- package/lib/node/math/repeg.js +1 -23
- package/lib/node/math/spotBalance.d.ts +4 -4
- package/lib/node/math/spotBalance.d.ts.map +1 -1
- package/lib/node/math/spotBalance.js +6 -6
- package/lib/node/math/spotMarket.d.ts +0 -6
- package/lib/node/math/spotMarket.d.ts.map +1 -1
- package/lib/node/math/spotMarket.js +1 -16
- package/lib/node/math/spotPosition.d.ts +4 -4
- package/lib/node/math/spotPosition.d.ts.map +1 -1
- package/lib/node/math/state.d.ts +0 -2
- package/lib/node/math/state.d.ts.map +1 -1
- package/lib/node/math/state.js +1 -9
- package/lib/node/math/superStake.d.ts +3 -53
- package/lib/node/math/superStake.d.ts.map +1 -1
- package/lib/node/math/superStake.js +16 -13
- package/lib/node/math/trade.d.ts +2 -2
- package/lib/node/math/trade.d.ts.map +1 -1
- package/lib/node/math/trade.js +6 -6
- package/lib/node/memcmp.d.ts +0 -1
- package/lib/node/memcmp.d.ts.map +1 -1
- package/lib/node/memcmp.js +1 -10
- package/lib/node/oracles/oracleClientCache.d.ts +1 -1
- package/lib/node/oracles/prelaunchOracleClient.d.ts.map +1 -1
- package/lib/node/oracles/prelaunchOracleClient.js +3 -2
- package/lib/node/oracles/pythClient.d.ts.map +1 -1
- package/lib/node/oracles/pythClient.js +9 -3
- package/lib/node/oracles/pythLazerClient.d.ts.map +1 -1
- package/lib/node/oracles/pythLazerClient.js +3 -2
- package/lib/node/oracles/utils.d.ts +4 -0
- package/lib/node/oracles/utils.d.ts.map +1 -1
- package/lib/node/oracles/utils.js +9 -1
- package/lib/node/orderSubscriber/OrderSubscriber.d.ts +1 -1
- package/lib/node/orderSubscriber/OrderSubscriber.d.ts.map +1 -1
- package/lib/node/orderSubscriber/OrderSubscriber.js +8 -2
- package/lib/node/priorityFee/heliusPriorityFeeMethod.d.ts +1 -1
- package/lib/node/priorityFee/heliusPriorityFeeMethod.d.ts.map +1 -1
- package/lib/node/priorityFee/priorityFeeSubscriber.d.ts +1 -1
- package/lib/node/priorityFee/priorityFeeSubscriber.d.ts.map +1 -1
- package/lib/node/priorityFee/priorityFeeSubscriber.js +32 -8
- package/lib/node/priorityFee/solanaPriorityFeeMethod.d.ts +1 -1
- package/lib/node/priorityFee/solanaPriorityFeeMethod.d.ts.map +1 -1
- package/lib/node/pyth/types.d.ts +0 -1
- package/lib/node/pyth/types.d.ts.map +1 -1
- package/lib/node/slot/SlotSubscriber.d.ts +1 -1
- package/lib/node/slot/SlotSubscriber.d.ts.map +1 -1
- package/lib/node/slot/SlotSubscriber.js +2 -1
- package/lib/node/slot/SlothashSubscriber.d.ts +3 -2
- package/lib/node/slot/SlothashSubscriber.d.ts.map +1 -1
- package/lib/node/slot/SlothashSubscriber.js +11 -4
- package/lib/node/swift/grpcSignedMsgUserAccountSubscriber.d.ts +0 -3
- package/lib/node/swift/grpcSignedMsgUserAccountSubscriber.d.ts.map +1 -1
- package/lib/node/swift/grpcSignedMsgUserAccountSubscriber.js +5 -5
- package/lib/node/swift/signedMsgUserAccountSubscriber.d.ts +3 -2
- package/lib/node/swift/signedMsgUserAccountSubscriber.d.ts.map +1 -1
- package/lib/node/swift/signedMsgUserAccountSubscriber.js +13 -5
- package/lib/node/swift/swiftOrderSubscriber.d.ts +1 -1
- package/lib/node/swift/swiftOrderSubscriber.d.ts.map +1 -1
- package/lib/node/swift/swiftOrderSubscriber.js +10 -5
- package/lib/node/testClient.js +3 -2
- package/lib/node/tokenFaucet.d.ts.map +1 -1
- package/lib/node/tokenFaucet.js +16 -2
- package/lib/node/tx/baseTxSender.d.ts +4 -4
- package/lib/node/tx/baseTxSender.d.ts.map +1 -1
- package/lib/node/tx/baseTxSender.js +5 -4
- package/lib/node/tx/fastSingleTxSender.d.ts +3 -3
- package/lib/node/tx/fastSingleTxSender.d.ts.map +1 -1
- package/lib/node/tx/fastSingleTxSender.js +9 -5
- package/lib/node/tx/reportTransactionError.d.ts +2 -2
- package/lib/node/tx/reportTransactionError.d.ts.map +1 -1
- package/lib/node/tx/reportTransactionError.js +5 -1
- package/lib/node/tx/retryTxSender.d.ts +1 -1
- package/lib/node/tx/retryTxSender.d.ts.map +1 -1
- package/lib/node/tx/retryTxSender.js +4 -2
- package/lib/node/tx/txHandler.d.ts +9 -3
- package/lib/node/tx/txHandler.d.ts.map +1 -1
- package/lib/node/tx/txHandler.js +54 -40
- package/lib/node/tx/txParamProcessor.d.ts +4 -1
- package/lib/node/tx/txParamProcessor.d.ts.map +1 -1
- package/lib/node/tx/txParamProcessor.js +6 -0
- package/lib/node/tx/types.d.ts +1 -1
- package/lib/node/tx/types.d.ts.map +1 -1
- package/lib/node/tx/whileValidTxSender.d.ts +1 -6
- package/lib/node/tx/whileValidTxSender.d.ts.map +1 -1
- package/lib/node/tx/whileValidTxSender.js +35 -13
- package/lib/node/types.d.ts +25 -68
- package/lib/node/types.d.ts.map +1 -1
- package/lib/node/types.js +2 -2
- package/lib/node/user.d.ts +21 -7
- package/lib/node/user.d.ts.map +1 -1
- package/lib/node/user.js +156 -132
- package/lib/node/userMap/WebsocketSubscription.d.ts +1 -1
- package/lib/node/userMap/WebsocketSubscription.d.ts.map +1 -1
- package/lib/node/userMap/grpcSubscription.d.ts +1 -1
- package/lib/node/userMap/grpcSubscription.d.ts.map +1 -1
- package/lib/node/userMap/referrerMap.d.ts.map +1 -1
- package/lib/node/userMap/referrerMap.js +10 -3
- package/lib/node/userMap/revenueShareEscrowMap.d.ts.map +1 -1
- package/lib/node/userMap/revenueShareEscrowMap.js +4 -0
- package/lib/node/userMap/userMap.d.ts +1 -1
- package/lib/node/userMap/userMap.d.ts.map +1 -1
- package/lib/node/userMap/userMap.js +36 -23
- package/lib/node/userMap/userStatsMap.d.ts +1 -1
- package/lib/node/userMap/userStatsMap.d.ts.map +1 -1
- package/lib/node/userMap/userStatsMap.js +18 -13
- package/lib/node/userStats.d.ts +7 -2
- package/lib/node/userStats.d.ts.map +1 -1
- package/lib/node/userStats.js +18 -4
- package/lib/node/util/TransactionConfirmationManager.d.ts.map +1 -1
- package/lib/node/util/TransactionConfirmationManager.js +4 -2
- package/lib/node/util/chainClock.d.ts +1 -1
- package/lib/node/util/chainClock.d.ts.map +1 -1
- package/lib/node/util/computeUnits.d.ts +1 -1
- package/lib/node/util/computeUnits.d.ts.map +1 -1
- package/lib/node/util/computeUnits.js +6 -1
- package/lib/node/velocityClient.d.ts +93 -35
- package/lib/node/velocityClient.d.ts.map +1 -1
- package/lib/node/velocityClient.js +414 -280
- package/package.json +5 -3
- package/src/accounts/basicUserAccountSubscriber.ts +7 -5
- package/src/accounts/basicUserStatsAccountSubscriber.ts +9 -5
- package/src/accounts/bulkAccountLoader.ts +20 -7
- package/src/accounts/grpcAccountSubscriber.ts +11 -3
- package/src/accounts/grpcMultiAccountSubscriber.ts +24 -9
- package/src/accounts/grpcMultiUserAccountSubscriber.ts +16 -12
- package/src/accounts/grpcProgramAccountSubscriber.ts +11 -3
- package/src/accounts/grpcVelocityClientAccountSubscriber.ts +17 -7
- package/src/accounts/grpcVelocityClientAccountSubscriberV2.ts +66 -39
- package/src/accounts/laserProgramAccountSubscriber.ts +3 -0
- package/src/accounts/oneShotUserAccountSubscriber.ts +5 -3
- package/src/accounts/oneShotUserStatsAccountSubscriber.ts +8 -3
- package/src/accounts/pollingInsuranceFundStakeAccountSubscriber.ts +11 -5
- package/src/accounts/pollingOracleAccountSubscriber.ts +17 -10
- package/src/accounts/pollingTokenAccountSubscriber.ts +17 -10
- package/src/accounts/pollingUserAccountSubscriber.ts +26 -20
- package/src/accounts/pollingUserStatsAccountSubscriber.ts +12 -10
- package/src/accounts/pollingVelocityClientAccountSubscriber.ts +76 -30
- package/src/accounts/types.ts +6 -4
- package/src/accounts/utils.ts +10 -0
- package/src/accounts/webSocketAccountSubscriber.ts +23 -10
- package/src/accounts/webSocketAccountSubscriberV2.ts +23 -8
- package/src/accounts/webSocketInsuranceFundStakeAccountSubscriber.ts +17 -2
- package/src/accounts/webSocketProgramAccountSubscriber.ts +29 -4
- package/src/accounts/webSocketProgramAccountSubscriberV2.ts +30 -4
- package/src/accounts/webSocketProgramAccountsSubscriberV2.ts +29 -4
- package/src/accounts/webSocketUserAccountSubscriber.ts +11 -2
- package/src/accounts/webSocketUserStatsAccountSubsriber.ts +15 -2
- package/src/accounts/webSocketVelocityClientAccountSubscriber.ts +76 -48
- package/src/accounts/webSocketVelocityClientAccountSubscriberV2.ts +74 -35
- package/src/accounts/websocketProgramUserAccountSubscriber.ts +1 -6
- package/src/addresses/marketAddresses.ts +3 -2
- package/src/addresses/pda.ts +0 -25
- package/src/adminClient.ts +273 -303
- package/src/auctionSubscriber/auctionSubscriber.ts +7 -5
- package/src/auctionSubscriber/auctionSubscriberGrpc.ts +12 -5
- package/src/bankrun/bankrunConnection.ts +83 -39
- package/src/blockhashSubscriber/BlockhashSubscriber.ts +5 -4
- package/src/clock/clockSubscriber.ts +10 -9
- package/src/config.ts +8 -3
- package/src/constants/index.ts +1 -2
- package/src/constants/numericConstants.ts +3 -3
- package/src/constituentMap/constituentMap.ts +8 -1
- package/src/constituentMap/pollingConstituentAccountSubscriber.ts +4 -2
- package/src/constituentMap/webSocketConstituentAccountSubscriber.ts +13 -4
- package/src/core/instructions/perpOrders.ts +14 -0
- package/src/core/remainingAccounts.ts +4 -4
- package/src/decode/user.ts +8 -1
- package/src/dlob/DLOB.ts +296 -172
- package/src/dlob/DLOBNode.ts +23 -3
- package/src/dlob/DLOBSubscriber.ts +51 -34
- package/src/dlob/NodeList.ts +8 -7
- package/src/dlob/orderBookLevels.ts +45 -25
- package/src/events/eventList.ts +4 -1
- package/src/events/eventSubscriber.ts +107 -49
- package/src/events/eventsServerLogProvider.ts +22 -13
- package/src/events/fetchLogs.ts +3 -3
- package/src/events/pollingLogProvider.ts +2 -2
- package/src/events/txEventCache.ts +8 -2
- package/src/events/types.ts +0 -8
- package/src/events/webSocketLogProvider.ts +5 -3
- package/src/factory/bigNum.ts +2 -2
- package/src/idl/velocity.json +1234 -1577
- package/src/idl/velocity.ts +1234 -1577
- package/src/index.ts +0 -2
- package/src/jupiter/jupiterClient.ts +30 -10
- package/src/marginCalculation.ts +1 -0
- package/src/math/amm.ts +188 -33
- package/src/math/bankruptcy.ts +1 -1
- package/src/math/funding.ts +7 -6
- package/src/math/insurance.ts +6 -8
- package/src/math/margin.ts +5 -112
- package/src/math/market.ts +6 -96
- package/src/math/oracles.ts +0 -17
- package/src/math/orders.ts +1 -110
- package/src/math/position.ts +4 -16
- package/src/math/repeg.ts +0 -29
- package/src/math/spotBalance.ts +14 -10
- package/src/math/spotMarket.ts +2 -28
- package/src/math/spotPosition.ts +4 -4
- package/src/math/state.ts +0 -8
- package/src/math/superStake.ts +19 -65
- package/src/math/trade.ts +2 -6
- package/src/memcmp.ts +0 -9
- package/src/oracles/prelaunchOracleClient.ts +7 -2
- package/src/oracles/pythClient.ts +12 -3
- package/src/oracles/pythLazerClient.ts +7 -2
- package/src/oracles/utils.ts +15 -0
- package/src/orderSubscriber/OrderSubscriber.ts +10 -4
- package/src/priorityFee/heliusPriorityFeeMethod.ts +1 -1
- package/src/priorityFee/priorityFeeSubscriber.ts +45 -9
- package/src/priorityFee/solanaPriorityFeeMethod.ts +1 -1
- package/src/pyth/types.ts +0 -2
- package/src/slot/SlotSubscriber.ts +3 -3
- package/src/slot/SlothashSubscriber.ts +17 -6
- package/src/swift/grpcSignedMsgUserAccountSubscriber.ts +5 -6
- package/src/swift/signedMsgUserAccountSubscriber.ts +16 -8
- package/src/swift/swiftOrderSubscriber.ts +10 -9
- package/src/testClient.ts +2 -2
- package/src/tokenFaucet.ts +22 -3
- package/src/tx/baseTxSender.ts +10 -10
- package/src/tx/fastSingleTxSender.ts +12 -8
- package/src/tx/reportTransactionError.ts +12 -7
- package/src/tx/retryTxSender.ts +6 -4
- package/src/tx/txHandler.ts +88 -43
- package/src/tx/txParamProcessor.ts +18 -3
- package/src/tx/types.ts +1 -1
- package/src/tx/whileValidTxSender.ts +51 -22
- package/src/types.ts +39 -75
- package/src/user.ts +200 -152
- package/src/userMap/WebsocketSubscription.ts +1 -1
- package/src/userMap/grpcSubscription.ts +1 -1
- package/src/userMap/referrerMap.ts +13 -9
- package/src/userMap/revenueShareEscrowMap.ts +6 -1
- package/src/userMap/userMap.ts +43 -25
- package/src/userMap/userStatsMap.ts +32 -19
- package/src/userStats.ts +21 -8
- package/src/util/TransactionConfirmationManager.ts +10 -2
- package/src/util/chainClock.ts +1 -1
- package/src/util/computeUnits.ts +7 -3
- package/src/velocityClient.ts +536 -383
- package/tests/amm/test.ts +138 -0
- package/tests/dlob/helpers.ts +6 -1
- package/tsconfig.json +1 -0
- package/lib/browser/constants/insuranceFund.d.ts +0 -5
- package/lib/browser/constants/insuranceFund.js +0 -9
- package/lib/browser/tx/forwardOnlyTxSender.d.ts +0 -37
- package/lib/browser/tx/forwardOnlyTxSender.js +0 -92
- package/lib/browser/util/tps.d.ts +0 -2
- package/lib/browser/util/tps.js +0 -16
- package/lib/node/constants/insuranceFund.d.ts +0 -6
- package/lib/node/constants/insuranceFund.d.ts.map +0 -1
- package/lib/node/constants/insuranceFund.js +0 -9
- package/lib/node/tx/forwardOnlyTxSender.d.ts +0 -38
- package/lib/node/tx/forwardOnlyTxSender.d.ts.map +0 -1
- package/lib/node/tx/forwardOnlyTxSender.js +0 -92
- package/lib/node/util/tps.d.ts +0 -3
- package/lib/node/util/tps.d.ts.map +0 -1
- package/lib/node/util/tps.js +0 -16
- package/src/constants/insuranceFund.ts +0 -8
- package/src/tx/forwardOnlyTxSender.ts +0 -145
- package/src/util/tps.ts +0 -27
|
@@ -86,7 +86,11 @@ class AdminClient extends velocityClient_1.VelocityClient {
|
|
|
86
86
|
const spotMarket = await (0, pda_1.getSpotMarketPublicKey)(this.program.programId, spotMarketIndex);
|
|
87
87
|
const spotMarketVault = await (0, pda_1.getSpotMarketVaultPublicKey)(this.program.programId, spotMarketIndex);
|
|
88
88
|
const insuranceFundVault = await (0, pda_1.getInsuranceFundVaultPublicKey)(this.program.programId, spotMarketIndex);
|
|
89
|
-
const
|
|
89
|
+
const mintAccountInfo = await this.connection.getAccountInfo(mint);
|
|
90
|
+
if (!mintAccountInfo) {
|
|
91
|
+
throw new Error(`Mint account ${mint.toString()} not found`);
|
|
92
|
+
}
|
|
93
|
+
const tokenProgram = mintAccountInfo.owner;
|
|
90
94
|
const nameBuffer = (0, userName_1.encodeName)(name);
|
|
91
95
|
const initializeIx = await this.program.instruction.initializeSpotMarket(optimalUtilization, optimalRate, maxRate, oracleSource, initialAssetWeight, maintenanceAssetWeight, initialLiabilityWeight, maintenanceLiabilityWeight, imfFactor, liquidatorFee, ifLiquidationFee, activeStatus, assetTier, scaleInitialAssetWeightStart, withdrawGuardThreshold, orderTickSize, orderStepSize, ifTotalFactor, nameBuffer, {
|
|
92
96
|
accounts: {
|
|
@@ -196,13 +200,14 @@ class AdminClient extends velocityClient_1.VelocityClient {
|
|
|
196
200
|
return txSig;
|
|
197
201
|
}
|
|
198
202
|
async getAddMarketToAmmCacheIx(perpMarketIndex) {
|
|
203
|
+
const perpMarketAccount = this.getPerpMarketAccountOrThrow(perpMarketIndex);
|
|
199
204
|
return await this.program.instruction.addMarketToAmmCache({
|
|
200
205
|
accounts: {
|
|
201
206
|
state: await this.getStatePublicKey(),
|
|
202
207
|
admin: this.useHotWalletAdmin
|
|
203
208
|
? this.wallet.publicKey
|
|
204
209
|
: this.getStateAccount().coldAdmin,
|
|
205
|
-
perpMarket:
|
|
210
|
+
perpMarket: perpMarketAccount.pubkey,
|
|
206
211
|
ammCache: (0, pda_1.getAmmCachePublicKey)(this.program.programId),
|
|
207
212
|
rent: web3_js_1.SYSVAR_RENT_PUBKEY,
|
|
208
213
|
systemProgram: anchor.web3.SystemProgram.programId,
|
|
@@ -337,6 +342,7 @@ class AdminClient extends velocityClient_1.VelocityClient {
|
|
|
337
342
|
return txSig;
|
|
338
343
|
}
|
|
339
344
|
async getUpdateKIx(perpMarketIndex, sqrtK) {
|
|
345
|
+
const perpMarketAccount = this.getPerpMarketAccountOrThrow(perpMarketIndex);
|
|
340
346
|
return await this.program.instruction.updateK(sqrtK, {
|
|
341
347
|
accounts: {
|
|
342
348
|
state: await this.getStatePublicKey(),
|
|
@@ -344,7 +350,7 @@ class AdminClient extends velocityClient_1.VelocityClient {
|
|
|
344
350
|
? this.getStateAccount().coldAdmin
|
|
345
351
|
: this.wallet.publicKey,
|
|
346
352
|
perpMarket: await (0, pda_1.getPerpMarketPublicKey)(this.program.programId, perpMarketIndex),
|
|
347
|
-
oracle:
|
|
353
|
+
oracle: perpMarketAccount.oracle,
|
|
348
354
|
},
|
|
349
355
|
});
|
|
350
356
|
}
|
|
@@ -373,6 +379,7 @@ class AdminClient extends velocityClient_1.VelocityClient {
|
|
|
373
379
|
return txSig;
|
|
374
380
|
}
|
|
375
381
|
async getRecenterPerpMarketAmmCrankIx(perpMarketIndex, depth) {
|
|
382
|
+
const perpMarketAccount = this.getPerpMarketAccountOrThrow(perpMarketIndex);
|
|
376
383
|
return await this.program.instruction.recenterPerpMarketAmmCrank(depth !== null && depth !== void 0 ? depth : null, {
|
|
377
384
|
accounts: {
|
|
378
385
|
admin: this.useHotWalletAdmin
|
|
@@ -381,7 +388,7 @@ class AdminClient extends velocityClient_1.VelocityClient {
|
|
|
381
388
|
state: await this.getStatePublicKey(),
|
|
382
389
|
perpMarket: await (0, pda_1.getPerpMarketPublicKey)(this.program.programId, perpMarketIndex),
|
|
383
390
|
spotMarket: await (0, pda_1.getSpotMarketPublicKey)(this.program.programId, numericConstants_1.QUOTE_SPOT_MARKET_INDEX),
|
|
384
|
-
oracle:
|
|
391
|
+
oracle: perpMarketAccount.oracle,
|
|
385
392
|
},
|
|
386
393
|
});
|
|
387
394
|
}
|
|
@@ -444,7 +451,7 @@ class AdminClient extends velocityClient_1.VelocityClient {
|
|
|
444
451
|
return txSig;
|
|
445
452
|
}
|
|
446
453
|
async getMoveAmmToPriceIx(perpMarketIndex, targetPrice) {
|
|
447
|
-
const perpMarket = this.
|
|
454
|
+
const perpMarket = this.getPerpMarketAccountOrThrow(perpMarketIndex);
|
|
448
455
|
const [direction, tradeSize, _] = (0, trade_1.calculateTargetPriceTrade)(perpMarket, targetPrice, new anchor_1.BN(1000), 'quote', undefined //todo
|
|
449
456
|
);
|
|
450
457
|
const [newQuoteAssetAmount, newBaseAssetAmount] = (0, amm_1.calculateAmmReservesAfterSwap)(perpMarket.amm, 'quote', tradeSize, (0, amm_1.getSwapDirection)('quote', direction));
|
|
@@ -467,7 +474,7 @@ class AdminClient extends velocityClient_1.VelocityClient {
|
|
|
467
474
|
}
|
|
468
475
|
async getRepegAmmCurveIx(newPeg, perpMarketIndex) {
|
|
469
476
|
const perpMarketPublicKey = await (0, pda_1.getPerpMarketPublicKey)(this.program.programId, perpMarketIndex);
|
|
470
|
-
const perpMarketAccount = this.
|
|
477
|
+
const perpMarketAccount = this.getPerpMarketAccountOrThrow(perpMarketIndex);
|
|
471
478
|
return await this.program.instruction.repegAmmCurve(newPeg, {
|
|
472
479
|
accounts: {
|
|
473
480
|
state: await this.getStatePublicKey(),
|
|
@@ -486,7 +493,7 @@ class AdminClient extends velocityClient_1.VelocityClient {
|
|
|
486
493
|
return txSig;
|
|
487
494
|
}
|
|
488
495
|
async getUpdatePerpMarketAmmOracleTwapIx(perpMarketIndex) {
|
|
489
|
-
const perpMarketAccount = this.
|
|
496
|
+
const perpMarketAccount = this.getPerpMarketAccountOrThrow(perpMarketIndex);
|
|
490
497
|
const perpMarketPublicKey = await (0, pda_1.getPerpMarketPublicKey)(this.program.programId, perpMarketIndex);
|
|
491
498
|
return await this.program.instruction.updatePerpMarketAmmOracleTwap({
|
|
492
499
|
accounts: {
|
|
@@ -506,7 +513,7 @@ class AdminClient extends velocityClient_1.VelocityClient {
|
|
|
506
513
|
return txSig;
|
|
507
514
|
}
|
|
508
515
|
async getResetPerpMarketAmmOracleTwapIx(perpMarketIndex) {
|
|
509
|
-
const perpMarketAccount = this.
|
|
516
|
+
const perpMarketAccount = this.getPerpMarketAccountOrThrow(perpMarketIndex);
|
|
510
517
|
const perpMarketPublicKey = await (0, pda_1.getPerpMarketPublicKey)(this.program.programId, perpMarketIndex);
|
|
511
518
|
return await this.program.instruction.resetPerpMarketAmmOracleTwap({
|
|
512
519
|
accounts: {
|
|
@@ -576,7 +583,7 @@ class AdminClient extends velocityClient_1.VelocityClient {
|
|
|
576
583
|
return txSig;
|
|
577
584
|
}
|
|
578
585
|
async getDepositIntoSpotMarketVaultIx(spotMarketIndex, amount, sourceVault) {
|
|
579
|
-
const spotMarket = this.
|
|
586
|
+
const spotMarket = this.getSpotMarketAccountOrThrow(spotMarketIndex);
|
|
580
587
|
const remainingAccounts = [];
|
|
581
588
|
this.addTokenMintToRemainingAccounts(spotMarket, remainingAccounts);
|
|
582
589
|
if (this.isTransferHook(spotMarket)) {
|
|
@@ -653,17 +660,17 @@ class AdminClient extends velocityClient_1.VelocityClient {
|
|
|
653
660
|
const { txSig } = await this.sendTransaction(tx, [], this.opts);
|
|
654
661
|
return txSig;
|
|
655
662
|
}
|
|
656
|
-
async updatePerpMarketAmmSummaryStats(perpMarketIndex, updateAmmSummaryStats, netUnsettledFundingPnl
|
|
657
|
-
const updatePerpMarketMarginRatioIx = await this.getUpdatePerpMarketAmmSummaryStatsIx(perpMarketIndex, updateAmmSummaryStats, netUnsettledFundingPnl
|
|
663
|
+
async updatePerpMarketAmmSummaryStats(perpMarketIndex, updateAmmSummaryStats, netUnsettledFundingPnl) {
|
|
664
|
+
const updatePerpMarketMarginRatioIx = await this.getUpdatePerpMarketAmmSummaryStatsIx(perpMarketIndex, updateAmmSummaryStats, netUnsettledFundingPnl);
|
|
658
665
|
const tx = await this.buildTransaction(updatePerpMarketMarginRatioIx);
|
|
659
666
|
const { txSig } = await this.sendTransaction(tx, [], this.opts);
|
|
660
667
|
return txSig;
|
|
661
668
|
}
|
|
662
|
-
async getUpdatePerpMarketAmmSummaryStatsIx(perpMarketIndex, updateAmmSummaryStats, netUnsettledFundingPnl
|
|
669
|
+
async getUpdatePerpMarketAmmSummaryStatsIx(perpMarketIndex, updateAmmSummaryStats, netUnsettledFundingPnl) {
|
|
670
|
+
const perpMarketAccount = this.getPerpMarketAccountOrThrow(perpMarketIndex);
|
|
663
671
|
return await this.program.instruction.updatePerpMarketAmmSummaryStats({
|
|
664
672
|
updateAmmSummaryStats: updateAmmSummaryStats !== null && updateAmmSummaryStats !== void 0 ? updateAmmSummaryStats : null,
|
|
665
673
|
netUnsettledFundingPnl: netUnsettledFundingPnl !== null && netUnsettledFundingPnl !== void 0 ? netUnsettledFundingPnl : null,
|
|
666
|
-
excludeTotalLiqFee: excludeTotalLiqFee !== null && excludeTotalLiqFee !== void 0 ? excludeTotalLiqFee : null,
|
|
667
674
|
}, {
|
|
668
675
|
accounts: {
|
|
669
676
|
admin: this.useHotWalletAdmin
|
|
@@ -672,7 +679,7 @@ class AdminClient extends velocityClient_1.VelocityClient {
|
|
|
672
679
|
state: await this.getStatePublicKey(),
|
|
673
680
|
perpMarket: await (0, pda_1.getPerpMarketPublicKey)(this.program.programId, perpMarketIndex),
|
|
674
681
|
spotMarket: await (0, pda_1.getSpotMarketPublicKey)(this.program.programId, numericConstants_1.QUOTE_SPOT_MARKET_INDEX),
|
|
675
|
-
oracle:
|
|
682
|
+
oracle: perpMarketAccount.oracle,
|
|
676
683
|
},
|
|
677
684
|
});
|
|
678
685
|
}
|
|
@@ -970,31 +977,49 @@ class AdminClient extends velocityClient_1.VelocityClient {
|
|
|
970
977
|
},
|
|
971
978
|
});
|
|
972
979
|
}
|
|
973
|
-
async updateWithdrawGuardThreshold(spotMarketIndex, withdrawGuardThreshold) {
|
|
974
|
-
const updateWithdrawGuardThresholdIx = await this.getUpdateWithdrawGuardThresholdIx(spotMarketIndex, withdrawGuardThreshold);
|
|
980
|
+
async updateWithdrawGuardThreshold(spotMarketIndex, withdrawGuardThreshold, oracle) {
|
|
981
|
+
const updateWithdrawGuardThresholdIx = await this.getUpdateWithdrawGuardThresholdIx(spotMarketIndex, withdrawGuardThreshold, oracle);
|
|
975
982
|
const tx = await this.buildTransaction(updateWithdrawGuardThresholdIx);
|
|
976
983
|
const { txSig } = await this.sendTransaction(tx, [], this.opts);
|
|
977
984
|
return txSig;
|
|
978
985
|
}
|
|
979
|
-
async getUpdateWithdrawGuardThresholdIx(spotMarketIndex, withdrawGuardThreshold) {
|
|
986
|
+
async getUpdateWithdrawGuardThresholdIx(spotMarketIndex, withdrawGuardThreshold, oracle) {
|
|
987
|
+
const spotMarketPublicKey = await (0, pda_1.getSpotMarketPublicKey)(this.program.programId, spotMarketIndex);
|
|
988
|
+
if (!oracle) {
|
|
989
|
+
const cachedSpotMarket = this.isSubscribed
|
|
990
|
+
? this.getSpotMarketAccount(spotMarketIndex)
|
|
991
|
+
: undefined;
|
|
992
|
+
if (cachedSpotMarket) {
|
|
993
|
+
oracle = cachedSpotMarket.oracle;
|
|
994
|
+
}
|
|
995
|
+
else {
|
|
996
|
+
const accountInfo = await this.connection.getAccountInfo(spotMarketPublicKey);
|
|
997
|
+
if (!accountInfo) {
|
|
998
|
+
throw new Error(`Spot market account not found: ${spotMarketPublicKey.toString()}`);
|
|
999
|
+
}
|
|
1000
|
+
const spotMarket = this.program.account.spotMarket.coder.accounts.decodeUnchecked('spotMarket', accountInfo.data);
|
|
1001
|
+
oracle = spotMarket.oracle;
|
|
1002
|
+
}
|
|
1003
|
+
}
|
|
980
1004
|
return await this.program.instruction.updateWithdrawGuardThreshold(withdrawGuardThreshold, {
|
|
981
1005
|
accounts: {
|
|
982
1006
|
admin: this.isSubscribed
|
|
983
1007
|
? this.getStateAccount().coldAdmin
|
|
984
1008
|
: this.wallet.publicKey,
|
|
985
1009
|
state: await this.getStatePublicKey(),
|
|
986
|
-
spotMarket:
|
|
1010
|
+
spotMarket: spotMarketPublicKey,
|
|
1011
|
+
oracle,
|
|
987
1012
|
},
|
|
988
1013
|
});
|
|
989
1014
|
}
|
|
990
|
-
async updateSpotMarketIfFactor(spotMarketIndex,
|
|
991
|
-
const updateSpotMarketIfFactorIx = await this.getUpdateSpotMarketIfFactorIx(spotMarketIndex,
|
|
1015
|
+
async updateSpotMarketIfFactor(spotMarketIndex, ifFeeFactor, protocolFeeFactor) {
|
|
1016
|
+
const updateSpotMarketIfFactorIx = await this.getUpdateSpotMarketIfFactorIx(spotMarketIndex, ifFeeFactor, protocolFeeFactor);
|
|
992
1017
|
const tx = await this.buildTransaction(updateSpotMarketIfFactorIx);
|
|
993
1018
|
const { txSig } = await this.sendTransaction(tx, [], this.opts);
|
|
994
1019
|
return txSig;
|
|
995
1020
|
}
|
|
996
|
-
async getUpdateSpotMarketIfFactorIx(spotMarketIndex,
|
|
997
|
-
return await this.program.instruction.updateSpotMarketIfFactor(spotMarketIndex,
|
|
1021
|
+
async getUpdateSpotMarketIfFactorIx(spotMarketIndex, ifFeeFactor, protocolFeeFactor) {
|
|
1022
|
+
return await this.program.instruction.updateSpotMarketIfFactor(spotMarketIndex, ifFeeFactor, protocolFeeFactor, {
|
|
998
1023
|
accounts: {
|
|
999
1024
|
admin: this.isSubscribed
|
|
1000
1025
|
? this.getStateAccount().coldAdmin
|
|
@@ -1096,6 +1121,7 @@ class AdminClient extends velocityClient_1.VelocityClient {
|
|
|
1096
1121
|
return txSig;
|
|
1097
1122
|
}
|
|
1098
1123
|
async getUpdatePerpMarketOracleIx(perpMarketIndex, oracle, oracleSource, skipInvaraintCheck = false) {
|
|
1124
|
+
const perpMarketAccount = this.getPerpMarketAccountOrThrow(perpMarketIndex);
|
|
1099
1125
|
return await this.program.instruction.updatePerpMarketOracle(oracle, oracleSource, skipInvaraintCheck, {
|
|
1100
1126
|
accounts: {
|
|
1101
1127
|
admin: this.isSubscribed
|
|
@@ -1104,7 +1130,7 @@ class AdminClient extends velocityClient_1.VelocityClient {
|
|
|
1104
1130
|
state: await this.getStatePublicKey(),
|
|
1105
1131
|
perpMarket: await (0, pda_1.getPerpMarketPublicKey)(this.program.programId, perpMarketIndex),
|
|
1106
1132
|
oracle: oracle,
|
|
1107
|
-
oldOracle:
|
|
1133
|
+
oldOracle: perpMarketAccount.oracle,
|
|
1108
1134
|
ammCache: (0, pda_1.getAmmCachePublicKey)(this.program.programId),
|
|
1109
1135
|
},
|
|
1110
1136
|
});
|
|
@@ -1209,6 +1235,7 @@ class AdminClient extends velocityClient_1.VelocityClient {
|
|
|
1209
1235
|
return txSig;
|
|
1210
1236
|
}
|
|
1211
1237
|
async getUpdateSpotMarketOracleIx(spotMarketIndex, oracle, oracleSource, skipInvaraintCheck = false) {
|
|
1238
|
+
const spotMarketAccount = this.getSpotMarketAccountOrThrow(spotMarketIndex);
|
|
1212
1239
|
return await this.program.instruction.updateSpotMarketOracle(oracle, oracleSource, skipInvaraintCheck, {
|
|
1213
1240
|
accounts: {
|
|
1214
1241
|
admin: this.isSubscribed
|
|
@@ -1217,7 +1244,7 @@ class AdminClient extends velocityClient_1.VelocityClient {
|
|
|
1217
1244
|
state: await this.getStatePublicKey(),
|
|
1218
1245
|
spotMarket: await (0, pda_1.getSpotMarketPublicKey)(this.program.programId, spotMarketIndex),
|
|
1219
1246
|
oracle: oracle,
|
|
1220
|
-
oldOracle:
|
|
1247
|
+
oldOracle: spotMarketAccount.oracle,
|
|
1221
1248
|
},
|
|
1222
1249
|
});
|
|
1223
1250
|
}
|
|
@@ -1513,13 +1540,14 @@ class AdminClient extends velocityClient_1.VelocityClient {
|
|
|
1513
1540
|
return txSig;
|
|
1514
1541
|
}
|
|
1515
1542
|
async getUpdateMaxSlippageRatioIx(perpMarketIndex, maxSlippageRatio) {
|
|
1543
|
+
const perpMarketAccount = this.getPerpMarketAccountOrThrow(perpMarketIndex);
|
|
1516
1544
|
return await this.program.instruction.updateMaxSlippageRatio(maxSlippageRatio, {
|
|
1517
1545
|
accounts: {
|
|
1518
1546
|
admin: this.isSubscribed
|
|
1519
1547
|
? this.getStateAccount().coldAdmin
|
|
1520
1548
|
: this.wallet.publicKey,
|
|
1521
1549
|
state: await this.getStatePublicKey(),
|
|
1522
|
-
perpMarket:
|
|
1550
|
+
perpMarket: perpMarketAccount.pubkey,
|
|
1523
1551
|
},
|
|
1524
1552
|
});
|
|
1525
1553
|
}
|
|
@@ -1608,142 +1636,154 @@ class AdminClient extends velocityClient_1.VelocityClient {
|
|
|
1608
1636
|
},
|
|
1609
1637
|
});
|
|
1610
1638
|
}
|
|
1611
|
-
async
|
|
1612
|
-
const
|
|
1613
|
-
const tx = await this.buildTransaction(
|
|
1639
|
+
async updatePerpMarketFeePoolBufferTarget(perpMarketIndex, feePoolBufferTarget) {
|
|
1640
|
+
const updatePerpMarketFeePoolBufferTargetIx = await this.getUpdatePerpMarketFeePoolBufferTargetIx(perpMarketIndex, feePoolBufferTarget);
|
|
1641
|
+
const tx = await this.buildTransaction(updatePerpMarketFeePoolBufferTargetIx);
|
|
1614
1642
|
const { txSig } = await this.sendTransaction(tx, [], this.opts);
|
|
1615
1643
|
return txSig;
|
|
1616
1644
|
}
|
|
1617
|
-
async
|
|
1618
|
-
return await this.program.instruction.
|
|
1645
|
+
async getUpdatePerpMarketFeePoolBufferTargetIx(perpMarketIndex, feePoolBufferTarget) {
|
|
1646
|
+
return await this.program.instruction.updatePerpMarketFeePoolBufferTarget(feePoolBufferTarget, {
|
|
1619
1647
|
accounts: {
|
|
1620
1648
|
admin: this.isSubscribed
|
|
1621
1649
|
? this.getStateAccount().coldAdmin
|
|
1622
1650
|
: this.wallet.publicKey,
|
|
1623
1651
|
state: await this.getStatePublicKey(),
|
|
1624
|
-
|
|
1652
|
+
perpMarket: await (0, pda_1.getPerpMarketPublicKey)(this.program.programId, perpMarketIndex),
|
|
1625
1653
|
},
|
|
1626
1654
|
});
|
|
1627
1655
|
}
|
|
1628
|
-
async
|
|
1629
|
-
const
|
|
1630
|
-
const tx = await this.buildTransaction(
|
|
1656
|
+
async updateSpotMarketFeeAdjustment(perpMarketIndex, feeAdjustment) {
|
|
1657
|
+
const updateSpotMarketFeeAdjustmentIx = await this.getUpdateSpotMarketFeeAdjustmentIx(perpMarketIndex, feeAdjustment);
|
|
1658
|
+
const tx = await this.buildTransaction(updateSpotMarketFeeAdjustmentIx);
|
|
1631
1659
|
const { txSig } = await this.sendTransaction(tx, [], this.opts);
|
|
1632
1660
|
return txSig;
|
|
1633
1661
|
}
|
|
1634
|
-
async
|
|
1635
|
-
return await this.program.instruction.
|
|
1662
|
+
async getUpdateSpotMarketFeeAdjustmentIx(spotMarketIndex, feeAdjustment) {
|
|
1663
|
+
return await this.program.instruction.updateSpotMarketFeeAdjustment(feeAdjustment, {
|
|
1636
1664
|
accounts: {
|
|
1637
1665
|
admin: this.isSubscribed
|
|
1638
1666
|
? this.getStateAccount().coldAdmin
|
|
1639
1667
|
: this.wallet.publicKey,
|
|
1640
1668
|
state: await this.getStatePublicKey(),
|
|
1641
|
-
|
|
1669
|
+
spotMarket: await (0, pda_1.getSpotMarketPublicKey)(this.program.programId, spotMarketIndex),
|
|
1642
1670
|
},
|
|
1643
1671
|
});
|
|
1644
1672
|
}
|
|
1645
|
-
async
|
|
1646
|
-
const
|
|
1647
|
-
const tx = await this.buildTransaction(
|
|
1673
|
+
async updatePerpMarketLiquidationFee(perpMarketIndex, liquidatorFee, ifLiquidationFee, protocolLiquidationFee = 0) {
|
|
1674
|
+
const updatePerpMarketLiquidationFeeIx = await this.getUpdatePerpMarketLiquidationFeeIx(perpMarketIndex, liquidatorFee, ifLiquidationFee, protocolLiquidationFee);
|
|
1675
|
+
const tx = await this.buildTransaction(updatePerpMarketLiquidationFeeIx);
|
|
1648
1676
|
const { txSig } = await this.sendTransaction(tx, [], this.opts);
|
|
1649
1677
|
return txSig;
|
|
1650
1678
|
}
|
|
1651
|
-
async
|
|
1652
|
-
return await this.program.instruction.
|
|
1679
|
+
async getUpdatePerpMarketLiquidationFeeIx(perpMarketIndex, liquidatorFee, ifLiquidationFee, protocolLiquidationFee = 0) {
|
|
1680
|
+
return await this.program.instruction.updatePerpMarketLiquidationFee(liquidatorFee, ifLiquidationFee, protocolLiquidationFee, {
|
|
1653
1681
|
accounts: {
|
|
1654
1682
|
admin: this.isSubscribed
|
|
1655
1683
|
? this.getStateAccount().coldAdmin
|
|
1656
1684
|
: this.wallet.publicKey,
|
|
1657
1685
|
state: await this.getStatePublicKey(),
|
|
1658
|
-
|
|
1686
|
+
perpMarket: await (0, pda_1.getPerpMarketPublicKey)(this.program.programId, perpMarketIndex),
|
|
1659
1687
|
},
|
|
1660
1688
|
});
|
|
1661
1689
|
}
|
|
1662
|
-
async
|
|
1663
|
-
const
|
|
1664
|
-
const tx = await this.buildTransaction(
|
|
1690
|
+
async updateSpotMarketLiquidationFee(spotMarketIndex, liquidatorFee, ifLiquidationFee, protocolLiquidationFee = 0) {
|
|
1691
|
+
const updateSpotMarketLiquidationFeeIx = await this.getUpdateSpotMarketLiquidationFeeIx(spotMarketIndex, liquidatorFee, ifLiquidationFee, protocolLiquidationFee);
|
|
1692
|
+
const tx = await this.buildTransaction(updateSpotMarketLiquidationFeeIx);
|
|
1665
1693
|
const { txSig } = await this.sendTransaction(tx, [], this.opts);
|
|
1666
1694
|
return txSig;
|
|
1667
1695
|
}
|
|
1668
|
-
async
|
|
1669
|
-
return await this.program.instruction.
|
|
1696
|
+
async getUpdateSpotMarketLiquidationFeeIx(spotMarketIndex, liquidatorFee, ifLiquidationFee, protocolLiquidationFee = 0) {
|
|
1697
|
+
return await this.program.instruction.updateSpotMarketLiquidationFee(liquidatorFee, ifLiquidationFee, protocolLiquidationFee, {
|
|
1670
1698
|
accounts: {
|
|
1671
1699
|
admin: this.isSubscribed
|
|
1672
1700
|
? this.getStateAccount().coldAdmin
|
|
1673
1701
|
: this.wallet.publicKey,
|
|
1674
1702
|
state: await this.getStatePublicKey(),
|
|
1675
|
-
|
|
1676
|
-
systemProgram: anchor.web3.SystemProgram.programId,
|
|
1677
|
-
protocolIfSharesTransferConfig: (0, pda_1.getProtocolIfSharesTransferConfigPublicKey)(this.program.programId),
|
|
1703
|
+
spotMarket: await (0, pda_1.getSpotMarketPublicKey)(this.program.programId, spotMarketIndex),
|
|
1678
1704
|
},
|
|
1679
1705
|
});
|
|
1680
1706
|
}
|
|
1681
|
-
async
|
|
1682
|
-
const
|
|
1683
|
-
const tx = await this.buildTransaction(
|
|
1707
|
+
async updateProtocolFeeRecipient(protocolFeeRecipient, marketType) {
|
|
1708
|
+
const ix = await this.getUpdateProtocolFeeRecipientIx(protocolFeeRecipient, marketType);
|
|
1709
|
+
const tx = await this.buildTransaction(ix);
|
|
1684
1710
|
const { txSig } = await this.sendTransaction(tx, [], this.opts);
|
|
1685
1711
|
return txSig;
|
|
1686
1712
|
}
|
|
1687
|
-
async
|
|
1688
|
-
return await this.program.instruction.
|
|
1713
|
+
async getUpdateProtocolFeeRecipientIx(protocolFeeRecipient, marketType) {
|
|
1714
|
+
return await this.program.instruction.updateProtocolFeeRecipient(protocolFeeRecipient, marketType, {
|
|
1689
1715
|
accounts: {
|
|
1690
1716
|
admin: this.isSubscribed
|
|
1691
1717
|
? this.getStateAccount().coldAdmin
|
|
1692
1718
|
: this.wallet.publicKey,
|
|
1693
1719
|
state: await this.getStatePublicKey(),
|
|
1694
|
-
protocolIfSharesTransferConfig: (0, pda_1.getProtocolIfSharesTransferConfigPublicKey)(this.program.programId),
|
|
1695
1720
|
},
|
|
1696
1721
|
});
|
|
1697
1722
|
}
|
|
1698
|
-
async
|
|
1699
|
-
const
|
|
1700
|
-
const tx = await this.buildTransaction(
|
|
1723
|
+
async withdrawProtocolFeesSpot(marketIndex, amount, txParams) {
|
|
1724
|
+
const ix = await this.getWithdrawProtocolFeesSpotIx(marketIndex, amount);
|
|
1725
|
+
const tx = await this.buildTransaction(ix, txParams);
|
|
1701
1726
|
const { txSig } = await this.sendTransaction(tx, [], this.opts);
|
|
1702
1727
|
return txSig;
|
|
1703
1728
|
}
|
|
1704
|
-
async
|
|
1705
|
-
const
|
|
1706
|
-
|
|
1707
|
-
|
|
1708
|
-
|
|
1709
|
-
|
|
1729
|
+
async getWithdrawProtocolFeesSpotIx(marketIndex, amount) {
|
|
1730
|
+
const spotMarket = this.getSpotMarketAccountOrThrow(marketIndex);
|
|
1731
|
+
const tokenProgramId = this.getTokenProgramForSpotMarket(spotMarket);
|
|
1732
|
+
const recipient = this.getStateAccount().protocolFeeRecipientSpot;
|
|
1733
|
+
const recipientTokenAccount = (0, spl_token_1.getAssociatedTokenAddressSync)(spotMarket.mint, recipient, true, tokenProgramId);
|
|
1734
|
+
const remainingAccounts = [];
|
|
1735
|
+
if (this.isTransferHook(spotMarket)) {
|
|
1736
|
+
await this.addExtraAccountMetasToRemainingAccounts(spotMarket.mint, remainingAccounts);
|
|
1737
|
+
}
|
|
1738
|
+
return await this.program.instruction.withdrawProtocolFeesSpot(marketIndex, amount, {
|
|
1710
1739
|
accounts: {
|
|
1711
|
-
authority: this.wallet.publicKey,
|
|
1712
1740
|
state: await this.getStatePublicKey(),
|
|
1713
|
-
|
|
1714
|
-
|
|
1715
|
-
|
|
1716
|
-
|
|
1717
|
-
|
|
1741
|
+
payer: this.wallet.publicKey,
|
|
1742
|
+
authority: this.wallet.publicKey,
|
|
1743
|
+
spotMarket: spotMarket.pubkey,
|
|
1744
|
+
spotMarketVault: spotMarket.vault,
|
|
1745
|
+
mint: spotMarket.mint,
|
|
1746
|
+
recipient,
|
|
1747
|
+
recipientTokenAccount,
|
|
1748
|
+
tokenProgram: tokenProgramId,
|
|
1749
|
+
velocitySigner: this.getSignerPublicKey(),
|
|
1750
|
+
systemProgram: web3_js_1.SystemProgram.programId,
|
|
1751
|
+
associatedTokenProgram: spl_token_1.ASSOCIATED_TOKEN_PROGRAM_ID,
|
|
1718
1752
|
},
|
|
1719
1753
|
remainingAccounts,
|
|
1720
1754
|
});
|
|
1721
1755
|
}
|
|
1722
|
-
async
|
|
1723
|
-
const ix = await this.
|
|
1756
|
+
async withdrawProtocolFeesPerp(marketIndex, amount, txParams) {
|
|
1757
|
+
const ix = await this.getWithdrawProtocolFeesPerpIx(marketIndex, amount);
|
|
1724
1758
|
const tx = await this.buildTransaction(ix, txParams);
|
|
1725
1759
|
const { txSig } = await this.sendTransaction(tx, [], this.opts);
|
|
1726
1760
|
return txSig;
|
|
1727
1761
|
}
|
|
1728
|
-
async
|
|
1729
|
-
const
|
|
1730
|
-
const
|
|
1762
|
+
async getWithdrawProtocolFeesPerpIx(marketIndex, amount) {
|
|
1763
|
+
const perpMarket = this.getPerpMarketAccountOrThrow(marketIndex);
|
|
1764
|
+
const quoteSpotMarket = this.getSpotMarketAccountOrThrow(perpMarket.quoteSpotMarketIndex);
|
|
1765
|
+
const tokenProgramId = this.getTokenProgramForSpotMarket(quoteSpotMarket);
|
|
1766
|
+
const recipient = this.getStateAccount().protocolFeeRecipientPerp;
|
|
1767
|
+
const recipientTokenAccount = (0, spl_token_1.getAssociatedTokenAddressSync)(quoteSpotMarket.mint, recipient, true, tokenProgramId);
|
|
1731
1768
|
const remainingAccounts = [];
|
|
1732
|
-
this.
|
|
1733
|
-
|
|
1734
|
-
await this.addExtraAccountMetasToRemainingAccounts(spotMarket.mint, remainingAccounts);
|
|
1769
|
+
if (this.isTransferHook(quoteSpotMarket)) {
|
|
1770
|
+
await this.addExtraAccountMetasToRemainingAccounts(quoteSpotMarket.mint, remainingAccounts);
|
|
1735
1771
|
}
|
|
1736
|
-
return await this.program.instruction.
|
|
1772
|
+
return await this.program.instruction.withdrawProtocolFeesPerp(marketIndex, amount, {
|
|
1737
1773
|
accounts: {
|
|
1738
1774
|
state: await this.getStatePublicKey(),
|
|
1739
|
-
|
|
1740
|
-
|
|
1741
|
-
|
|
1742
|
-
|
|
1743
|
-
|
|
1775
|
+
payer: this.wallet.publicKey,
|
|
1776
|
+
authority: this.wallet.publicKey,
|
|
1777
|
+
perpMarket: perpMarket.pubkey,
|
|
1778
|
+
quoteSpotMarket: quoteSpotMarket.pubkey,
|
|
1779
|
+
spotMarketVault: quoteSpotMarket.vault,
|
|
1780
|
+
mint: quoteSpotMarket.mint,
|
|
1781
|
+
recipient,
|
|
1744
1782
|
recipientTokenAccount,
|
|
1745
1783
|
tokenProgram: tokenProgramId,
|
|
1746
1784
|
velocitySigner: this.getSignerPublicKey(),
|
|
1785
|
+
systemProgram: web3_js_1.SystemProgram.programId,
|
|
1786
|
+
associatedTokenProgram: spl_token_1.ASSOCIATED_TOKEN_PROGRAM_ID,
|
|
1747
1787
|
},
|
|
1748
1788
|
remainingAccounts,
|
|
1749
1789
|
});
|
|
@@ -1874,22 +1914,21 @@ class AdminClient extends velocityClient_1.VelocityClient {
|
|
|
1874
1914
|
},
|
|
1875
1915
|
});
|
|
1876
1916
|
}
|
|
1877
|
-
async
|
|
1878
|
-
const
|
|
1879
|
-
const tx = await this.buildTransaction(
|
|
1917
|
+
async updatePerpMarketFundingBiasSensitivity(perpMarketIndex, fundingBiasSensitivity) {
|
|
1918
|
+
const updatePerpMarketFundingBiasSensitivityIx = await this.getUpdatePerpMarketFundingBiasSensitivityIx(perpMarketIndex, fundingBiasSensitivity);
|
|
1919
|
+
const tx = await this.buildTransaction(updatePerpMarketFundingBiasSensitivityIx);
|
|
1880
1920
|
const { txSig } = await this.sendTransaction(tx, [], this.opts);
|
|
1881
1921
|
return txSig;
|
|
1882
1922
|
}
|
|
1883
|
-
async
|
|
1884
|
-
|
|
1923
|
+
async getUpdatePerpMarketFundingBiasSensitivityIx(perpMarketIndex, fundingBiasSensitivity) {
|
|
1924
|
+
const perpMarketPublicKey = await (0, pda_1.getPerpMarketPublicKey)(this.program.programId, perpMarketIndex);
|
|
1925
|
+
return await this.program.instruction.updatePerpMarketFundingBiasSensitivity(fundingBiasSensitivity, {
|
|
1885
1926
|
accounts: {
|
|
1886
|
-
admin: this.
|
|
1887
|
-
? this.
|
|
1888
|
-
: this.
|
|
1927
|
+
admin: this.useHotWalletAdmin
|
|
1928
|
+
? this.wallet.publicKey
|
|
1929
|
+
: this.getStateAccount().coldAdmin,
|
|
1889
1930
|
state: await this.getStatePublicKey(),
|
|
1890
|
-
|
|
1891
|
-
rent: web3_js_1.SYSVAR_RENT_PUBKEY,
|
|
1892
|
-
systemProgram: anchor.web3.SystemProgram.programId,
|
|
1931
|
+
perpMarket: perpMarketPublicKey,
|
|
1893
1932
|
},
|
|
1894
1933
|
});
|
|
1895
1934
|
}
|
|
@@ -1920,7 +1959,7 @@ class AdminClient extends velocityClient_1.VelocityClient {
|
|
|
1920
1959
|
}
|
|
1921
1960
|
async getAdminDepositIx(marketIndex, amount, depositUserAccount, adminTokenAccount) {
|
|
1922
1961
|
const state = await this.getStatePublicKey();
|
|
1923
|
-
const spotMarket = this.
|
|
1962
|
+
const spotMarket = this.getSpotMarketAccountOrThrow(marketIndex);
|
|
1924
1963
|
const remainingAccounts = this.getRemainingAccounts({
|
|
1925
1964
|
userAccounts: [],
|
|
1926
1965
|
writableSpotMarketIndexes: [marketIndex],
|
|
@@ -2022,51 +2061,6 @@ class AdminClient extends velocityClient_1.VelocityClient {
|
|
|
2022
2061
|
},
|
|
2023
2062
|
});
|
|
2024
2063
|
}
|
|
2025
|
-
async updateDelegateUserGovTokenInsuranceStake(authority, delegate) {
|
|
2026
|
-
const updateDelegateUserGovTokenInsuranceStakeIx = await this.getUpdateDelegateUserGovTokenInsuranceStakeIx(authority, delegate);
|
|
2027
|
-
const tx = await this.buildTransaction(updateDelegateUserGovTokenInsuranceStakeIx);
|
|
2028
|
-
const { txSig } = await this.sendTransaction(tx, [], this.opts);
|
|
2029
|
-
return txSig;
|
|
2030
|
-
}
|
|
2031
|
-
async getUpdateDelegateUserGovTokenInsuranceStakeIx(authority, delegate) {
|
|
2032
|
-
const marketIndex = numericConstants_1.GOV_SPOT_MARKET_INDEX;
|
|
2033
|
-
const spotMarket = this.getSpotMarketAccount(marketIndex);
|
|
2034
|
-
const ifStakeAccountPublicKey = (0, pda_1.getInsuranceFundStakeAccountPublicKey)(this.program.programId, delegate, marketIndex);
|
|
2035
|
-
const userStatsPublicKey = (0, pda_1.getUserStatsAccountPublicKey)(this.program.programId, authority);
|
|
2036
|
-
const ix = this.program.instruction.getUpdateDelegateUserGovTokenInsuranceStakeIx({
|
|
2037
|
-
accounts: {
|
|
2038
|
-
state: await this.getStatePublicKey(),
|
|
2039
|
-
spotMarket: spotMarket.pubkey,
|
|
2040
|
-
insuranceFundStake: ifStakeAccountPublicKey,
|
|
2041
|
-
userStats: userStatsPublicKey,
|
|
2042
|
-
signer: this.wallet.publicKey,
|
|
2043
|
-
insuranceFundVault: spotMarket.insuranceFund.vault,
|
|
2044
|
-
},
|
|
2045
|
-
});
|
|
2046
|
-
return ix;
|
|
2047
|
-
}
|
|
2048
|
-
async depositIntoInsuranceFundStake(marketIndex, amount, userStatsPublicKey, insuranceFundStakePublicKey, userTokenAccountPublicKey, txParams) {
|
|
2049
|
-
const tx = await this.buildTransaction(await this.getDepositIntoInsuranceFundStakeIx(marketIndex, amount, userStatsPublicKey, insuranceFundStakePublicKey, userTokenAccountPublicKey), txParams);
|
|
2050
|
-
const { txSig } = await this.sendTransaction(tx, [], this.opts);
|
|
2051
|
-
return txSig;
|
|
2052
|
-
}
|
|
2053
|
-
async getDepositIntoInsuranceFundStakeIx(marketIndex, amount, userStatsPublicKey, insuranceFundStakePublicKey, userTokenAccountPublicKey) {
|
|
2054
|
-
const spotMarket = this.getSpotMarketAccount(marketIndex);
|
|
2055
|
-
return await this.program.instruction.depositIntoInsuranceFundStake(marketIndex, amount, {
|
|
2056
|
-
accounts: {
|
|
2057
|
-
signer: this.wallet.publicKey,
|
|
2058
|
-
state: await this.getStatePublicKey(),
|
|
2059
|
-
spotMarket: spotMarket.pubkey,
|
|
2060
|
-
insuranceFundStake: insuranceFundStakePublicKey,
|
|
2061
|
-
userStats: userStatsPublicKey,
|
|
2062
|
-
spotMarketVault: spotMarket.vault,
|
|
2063
|
-
insuranceFundVault: spotMarket.insuranceFund.vault,
|
|
2064
|
-
userTokenAccount: userTokenAccountPublicKey,
|
|
2065
|
-
tokenProgram: this.getTokenProgramForSpotMarket(spotMarket),
|
|
2066
|
-
velocitySigner: this.getSignerPublicKey(),
|
|
2067
|
-
},
|
|
2068
|
-
});
|
|
2069
|
-
}
|
|
2070
2064
|
async updateFeatureBitFlagsSettleLpPool(enable) {
|
|
2071
2065
|
const updateFeatureBitFlagsSettleLpPoolIx = await this.getUpdateFeatureBitFlagsSettleLpPoolIx(enable);
|
|
2072
2066
|
const tx = await this.buildTransaction(updateFeatureBitFlagsSettleLpPoolIx);
|
|
@@ -2183,7 +2177,7 @@ class AdminClient extends velocityClient_1.VelocityClient {
|
|
|
2183
2177
|
const spotMarketIndex = initializeConstituentParams.spotMarketIndex;
|
|
2184
2178
|
const constituentTargetBase = (0, pda_1.getConstituentTargetBasePublicKey)(this.program.programId, lpPool);
|
|
2185
2179
|
const constituent = (0, pda_1.getConstituentPublicKey)(this.program.programId, lpPool, spotMarketIndex);
|
|
2186
|
-
const spotMarketAccount = this.
|
|
2180
|
+
const spotMarketAccount = this.getSpotMarketAccountOrThrow(spotMarketIndex);
|
|
2187
2181
|
return [
|
|
2188
2182
|
this.program.instruction.initializeConstituent(spotMarketIndex, initializeConstituentParams.decimals, initializeConstituentParams.maxWeightDeviation, initializeConstituentParams.swapFeeMin, initializeConstituentParams.swapFeeMax, initializeConstituentParams.maxBorrowTokenAmount, initializeConstituentParams.oracleStalenessThreshold, initializeConstituentParams.costToTrade, initializeConstituentParams.constituentDerivativeIndex != null
|
|
2189
2183
|
? initializeConstituentParams.constituentDerivativeIndex
|
|
@@ -2423,8 +2417,8 @@ class AdminClient extends velocityClient_1.VelocityClient {
|
|
|
2423
2417
|
userAccountPublicKey,
|
|
2424
2418
|
});
|
|
2425
2419
|
}
|
|
2426
|
-
const outSpotMarket = this.
|
|
2427
|
-
const inSpotMarket = this.
|
|
2420
|
+
const outSpotMarket = this.getSpotMarketAccountOrThrow(outMarketIndex);
|
|
2421
|
+
const inSpotMarket = this.getSpotMarketAccountOrThrow(inMarketIndex);
|
|
2428
2422
|
const outTokenProgram = this.getTokenProgramForSpotMarket(outSpotMarket);
|
|
2429
2423
|
const inTokenProgram = this.getTokenProgramForSpotMarket(inSpotMarket);
|
|
2430
2424
|
const lpPool = (0, pda_1.getLpPoolPublicKey)(this.program.programId, lpPoolId);
|
|
@@ -2472,8 +2466,8 @@ class AdminClient extends velocityClient_1.VelocityClient {
|
|
|
2472
2466
|
return { beginSwapIx, endSwapIx };
|
|
2473
2467
|
}
|
|
2474
2468
|
async getLpJupiterSwapIxV6({ jupiterClient, outMarketIndex, inMarketIndex, amount, slippageBps, swapMode, onlyDirectRoutes, quote, lpPoolId, }) {
|
|
2475
|
-
const outMarket = this.
|
|
2476
|
-
const inMarket = this.
|
|
2469
|
+
const outMarket = this.getSpotMarketAccountOrThrow(outMarketIndex);
|
|
2470
|
+
const inMarket = this.getSpotMarketAccountOrThrow(inMarketIndex);
|
|
2477
2471
|
if (!quote) {
|
|
2478
2472
|
const fetchedQuote = await jupiterClient.getQuote({
|
|
2479
2473
|
inputMint: inMarket.mint,
|
|
@@ -2534,8 +2528,8 @@ class AdminClient extends velocityClient_1.VelocityClient {
|
|
|
2534
2528
|
return { ixs, lookupTables };
|
|
2535
2529
|
}
|
|
2536
2530
|
async getDevnetLpSwapIxs(amountIn, amountOut, externalUserAuthority, externalUserInTokenAccount, externalUserOutTokenAccount, inSpotMarketIndex, outSpotMarketIndex) {
|
|
2537
|
-
const inSpotMarketAccount = this.
|
|
2538
|
-
const outSpotMarketAccount = this.
|
|
2531
|
+
const inSpotMarketAccount = this.getSpotMarketAccountOrThrow(inSpotMarketIndex);
|
|
2532
|
+
const outSpotMarketAccount = this.getSpotMarketAccountOrThrow(outSpotMarketIndex);
|
|
2539
2533
|
const outTokenAccount = await this.getAssociatedTokenAccount(outSpotMarketAccount.marketIndex, false, (0, pda_1.getTokenProgramForSpotMarket)(outSpotMarketAccount));
|
|
2540
2534
|
const inTokenAccount = await this.getAssociatedTokenAccount(inSpotMarketAccount.marketIndex, false, (0, pda_1.getTokenProgramForSpotMarket)(inSpotMarketAccount));
|
|
2541
2535
|
const externalCreateInTokenAccountIx = this.createAssociatedTokenAccountIdempotentInstruction(externalUserInTokenAccount, this.wallet.publicKey, externalUserAuthority, this.getSpotMarketAccount(inSpotMarketIndex).mint);
|
|
@@ -2551,6 +2545,8 @@ class AdminClient extends velocityClient_1.VelocityClient {
|
|
|
2551
2545
|
return ixs;
|
|
2552
2546
|
}
|
|
2553
2547
|
async getAllDevnetLpSwapIxs(lpPoolId, inMarketIndex, outMarketIndex, inAmount, minOutAmount, externalUserAuthority) {
|
|
2548
|
+
const inMarket = this.getSpotMarketAccountOrThrow(inMarketIndex);
|
|
2549
|
+
const outMarket = this.getSpotMarketAccountOrThrow(outMarketIndex);
|
|
2554
2550
|
const { beginSwapIx, endSwapIx } = await this.getSwapIx({
|
|
2555
2551
|
lpPoolId,
|
|
2556
2552
|
inMarketIndex,
|
|
@@ -2559,7 +2555,7 @@ class AdminClient extends velocityClient_1.VelocityClient {
|
|
|
2559
2555
|
inTokenAccount: await this.getAssociatedTokenAccount(inMarketIndex, false),
|
|
2560
2556
|
outTokenAccount: await this.getAssociatedTokenAccount(outMarketIndex, false),
|
|
2561
2557
|
}, true);
|
|
2562
|
-
const devnetLpSwapIxs = await this.getDevnetLpSwapIxs(inAmount, minOutAmount, externalUserAuthority, await this.getAssociatedTokenAccount(inMarketIndex, false, (0, pda_1.getTokenProgramForSpotMarket)(
|
|
2558
|
+
const devnetLpSwapIxs = await this.getDevnetLpSwapIxs(inAmount, minOutAmount, externalUserAuthority, await this.getAssociatedTokenAccount(inMarketIndex, false, (0, pda_1.getTokenProgramForSpotMarket)(inMarket), externalUserAuthority), await this.getAssociatedTokenAccount(outMarketIndex, false, (0, pda_1.getTokenProgramForSpotMarket)(outMarket), externalUserAuthority), inMarketIndex, outMarketIndex);
|
|
2563
2559
|
return [
|
|
2564
2560
|
beginSwapIx,
|
|
2565
2561
|
...devnetLpSwapIxs,
|
|
@@ -2574,8 +2570,8 @@ class AdminClient extends velocityClient_1.VelocityClient {
|
|
|
2574
2570
|
}
|
|
2575
2571
|
async getDepositWithdrawToProgramVaultIxs(lpPoolId, depositMarketIndex, borrowMarketIndex, amountToDeposit, amountToBorrow) {
|
|
2576
2572
|
const lpPool = (0, pda_1.getLpPoolPublicKey)(this.program.programId, lpPoolId);
|
|
2577
|
-
const depositSpotMarket = this.
|
|
2578
|
-
const withdrawSpotMarket = this.
|
|
2573
|
+
const depositSpotMarket = this.getSpotMarketAccountOrThrow(depositMarketIndex);
|
|
2574
|
+
const withdrawSpotMarket = this.getSpotMarketAccountOrThrow(borrowMarketIndex);
|
|
2579
2575
|
const depositTokenProgram = this.getTokenProgramForSpotMarket(depositSpotMarket);
|
|
2580
2576
|
const withdrawTokenProgram = this.getTokenProgramForSpotMarket(withdrawSpotMarket);
|
|
2581
2577
|
const depositConstituent = (0, pda_1.getConstituentPublicKey)(this.program.programId, lpPool, depositMarketIndex);
|
|
@@ -2638,13 +2634,14 @@ class AdminClient extends velocityClient_1.VelocityClient {
|
|
|
2638
2634
|
return txSig;
|
|
2639
2635
|
}
|
|
2640
2636
|
async getUpdatePerpMarketLpPoolFeeTransferScalarIx(marketIndex, lpFeeTransferScalar, lpExchangeFeeExcluscionScalar) {
|
|
2637
|
+
const perpMarketAccount = this.getPerpMarketAccountOrThrow(marketIndex);
|
|
2641
2638
|
return this.program.instruction.updatePerpMarketLpPoolFeeTransferScalar(lpFeeTransferScalar !== null && lpFeeTransferScalar !== void 0 ? lpFeeTransferScalar : null, lpExchangeFeeExcluscionScalar !== null && lpExchangeFeeExcluscionScalar !== void 0 ? lpExchangeFeeExcluscionScalar : null, {
|
|
2642
2639
|
accounts: {
|
|
2643
2640
|
admin: this.useHotWalletAdmin
|
|
2644
2641
|
? this.wallet.publicKey
|
|
2645
2642
|
: this.getStateAccount().coldAdmin,
|
|
2646
2643
|
state: await this.getStatePublicKey(),
|
|
2647
|
-
perpMarket:
|
|
2644
|
+
perpMarket: perpMarketAccount.pubkey,
|
|
2648
2645
|
},
|
|
2649
2646
|
});
|
|
2650
2647
|
}
|
|
@@ -2655,13 +2652,14 @@ class AdminClient extends velocityClient_1.VelocityClient {
|
|
|
2655
2652
|
return txSig;
|
|
2656
2653
|
}
|
|
2657
2654
|
async getUpdatePerpMarketLpPoolPausedOperationsIx(marketIndex, pausedOperations) {
|
|
2655
|
+
const perpMarketAccount = this.getPerpMarketAccountOrThrow(marketIndex);
|
|
2658
2656
|
return this.program.instruction.updatePerpMarketLpPoolPausedOperations(pausedOperations, {
|
|
2659
2657
|
accounts: {
|
|
2660
2658
|
admin: this.useHotWalletAdmin
|
|
2661
2659
|
? this.wallet.publicKey
|
|
2662
2660
|
: this.getStateAccount().coldAdmin,
|
|
2663
2661
|
state: await this.getStatePublicKey(),
|
|
2664
|
-
perpMarket:
|
|
2662
|
+
perpMarket: perpMarketAccount.pubkey,
|
|
2665
2663
|
},
|
|
2666
2664
|
});
|
|
2667
2665
|
}
|
|
@@ -2688,13 +2686,14 @@ class AdminClient extends velocityClient_1.VelocityClient {
|
|
|
2688
2686
|
return txSig;
|
|
2689
2687
|
}
|
|
2690
2688
|
async getUpdatePerpMarketConfigIx(marketIndex, marketConfig) {
|
|
2689
|
+
const perpMarketAccount = this.getPerpMarketAccountOrThrow(marketIndex);
|
|
2691
2690
|
return this.program.instruction.updatePerpMarketConfig(marketConfig, {
|
|
2692
2691
|
accounts: {
|
|
2693
2692
|
admin: this.useHotWalletAdmin
|
|
2694
2693
|
? this.wallet.publicKey
|
|
2695
2694
|
: this.getStateAccount().coldAdmin,
|
|
2696
2695
|
state: await this.getStatePublicKey(),
|
|
2697
|
-
perpMarket:
|
|
2696
|
+
perpMarket: perpMarketAccount.pubkey,
|
|
2698
2697
|
},
|
|
2699
2698
|
});
|
|
2700
2699
|
}
|
|
@@ -2784,13 +2783,13 @@ var HotRole;
|
|
|
2784
2783
|
HotRole["LpCache"] = "lpCache";
|
|
2785
2784
|
HotRole["LpSwap"] = "lpSwap";
|
|
2786
2785
|
HotRole["LpSettle"] = "lpSettle";
|
|
2787
|
-
HotRole["IfRebalance"] = "ifRebalance";
|
|
2788
2786
|
HotRole["FeatureFlag"] = "featureFlag";
|
|
2789
2787
|
HotRole["Fuel"] = "fuel";
|
|
2790
2788
|
HotRole["UserFlag"] = "userFlag";
|
|
2791
2789
|
HotRole["VaultDeposit"] = "vaultDeposit";
|
|
2792
2790
|
HotRole["MmOracleCrank"] = "mmOracleCrank";
|
|
2793
2791
|
HotRole["AmmSpreadAdjust"] = "ammSpreadAdjust";
|
|
2792
|
+
HotRole["FeeWithdraw"] = "feeWithdraw";
|
|
2794
2793
|
})(HotRole || (exports.HotRole = HotRole = {}));
|
|
2795
2794
|
/** Anchor encodes Rust enums as `{ <variant>: {} }`. */
|
|
2796
2795
|
function encodeHotRole(role) {
|