@drift-labs/sdk 2.130.0-beta.9 → 2.130.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/VERSION +1 -1
- package/lib/browser/accounts/{userAccount/basicUserAccountSubscriber.d.ts → basicUserAccountSubscriber.d.ts} +2 -2
- package/lib/browser/accounts/{bulkAccountLoader/bulkAccountLoader.d.ts → bulkAccountLoader.d.ts} +2 -2
- package/lib/browser/accounts/{bulkAccountLoader/bulkAccountLoader.js → bulkAccountLoader.js} +2 -2
- package/lib/browser/accounts/bulkUserStatsSubscription.d.ts +1 -1
- package/lib/browser/accounts/bulkUserSubscription.d.ts +1 -1
- package/lib/browser/accounts/{bulkAccountLoader/customizedCadenceBulkAccountLoader.js → customizedCadenceBulkAccountLoader.js} +1 -1
- package/lib/browser/accounts/{baseSubscribers/grpcAccountSubscriber.d.ts → grpcAccountSubscriber.d.ts} +2 -1
- package/lib/{node/accounts/baseSubscribers → browser/accounts}/grpcAccountSubscriber.js +17 -13
- package/lib/browser/accounts/{driftClientAccount/grpcDriftClientAccountSubscriber.d.ts → grpcDriftClientAccountSubscriber.d.ts} +2 -2
- package/lib/{node/accounts/driftClientAccount → browser/accounts}/grpcDriftClientAccountSubscriber.js +4 -4
- package/lib/browser/accounts/{insuranceFundStakeAccount/grpcInsuranceFundStakeAccountSubscriber.d.ts → grpcInsuranceFundStakeAccountSubscriber.d.ts} +2 -2
- package/lib/{node/accounts/insuranceFundStakeAccount → browser/accounts}/grpcInsuranceFundStakeAccountSubscriber.js +1 -1
- package/lib/browser/accounts/{programAccount/grpcProgramAccountSubscriber.d.ts → grpcProgramAccountSubscriber.d.ts} +2 -1
- package/lib/browser/accounts/{programAccount/grpcProgramAccountSubscriber.js → grpcProgramAccountSubscriber.js} +17 -13
- package/lib/browser/accounts/{userAccount/grpcUserAccountSubscriber.d.ts → grpcUserAccountSubscriber.d.ts} +2 -2
- package/lib/browser/accounts/{userAccount/grpcUserAccountSubscriber.js → grpcUserAccountSubscriber.js} +1 -1
- package/lib/browser/accounts/{userStatsAccount/grpcUserStatsAccountSubscriber.d.ts → grpcUserStatsAccountSubscriber.d.ts} +2 -2
- package/lib/{node/accounts/userStatsAccount → browser/accounts}/grpcUserStatsAccountSubscriber.js +1 -1
- package/lib/browser/accounts/{userAccount/oneShotUserAccountSubscriber.d.ts → oneShotUserAccountSubscriber.d.ts} +2 -2
- package/lib/browser/accounts/{driftClientAccount/pollingDriftClientAccountSubscriber.d.ts → pollingDriftClientAccountSubscriber.d.ts} +5 -5
- package/lib/browser/accounts/{driftClientAccount/pollingDriftClientAccountSubscriber.js → pollingDriftClientAccountSubscriber.js} +8 -8
- package/lib/browser/accounts/{highLeverageModeConfigAccount/pollingHighLeverageModeConfigAccountSubscriber.d.ts → pollingHighLeverageModeConfigAccountSubscriber.d.ts} +3 -3
- package/lib/browser/accounts/{highLeverageModeConfigAccount/pollingHighLeverageModeConfigAccountSubscriber.js → pollingHighLeverageModeConfigAccountSubscriber.js} +1 -1
- package/lib/browser/accounts/{insuranceFundStakeAccount/pollingInsuranceFundStakeAccountSubscriber.d.ts → pollingInsuranceFundStakeAccountSubscriber.d.ts} +3 -3
- package/lib/{node/accounts/insuranceFundStakeAccount → browser/accounts}/pollingInsuranceFundStakeAccountSubscriber.js +1 -1
- package/lib/browser/accounts/{oracleAccount/pollingOracleAccountSubscriber.d.ts → pollingOracleAccountSubscriber.d.ts} +3 -3
- package/lib/{node/accounts/oracleAccount → browser/accounts}/pollingOracleAccountSubscriber.js +1 -1
- package/lib/browser/accounts/{tokenAccount/pollingTokenAccountSubscriber.d.ts → pollingTokenAccountSubscriber.d.ts} +2 -2
- package/lib/browser/accounts/{tokenAccount/pollingTokenAccountSubscriber.js → pollingTokenAccountSubscriber.js} +2 -2
- package/lib/browser/accounts/{userAccount/pollingUserAccountSubscriber.d.ts → pollingUserAccountSubscriber.d.ts} +4 -4
- package/lib/browser/accounts/{userAccount/pollingUserAccountSubscriber.js → pollingUserAccountSubscriber.js} +1 -1
- package/lib/browser/accounts/{userStatsAccount/pollingUserStatsAccountSubscriber.d.ts → pollingUserStatsAccountSubscriber.d.ts} +3 -3
- package/lib/browser/accounts/{userStatsAccount/pollingUserStatsAccountSubscriber.js → pollingUserStatsAccountSubscriber.js} +1 -1
- package/lib/browser/accounts/types.d.ts +11 -0
- package/lib/browser/accounts/{baseSubscribers/webSocketAccountSubscriber.d.ts → webSocketAccountSubscriber.d.ts} +1 -1
- package/lib/{node/accounts/baseSubscribers → browser/accounts}/webSocketAccountSubscriber.js +1 -1
- package/lib/browser/accounts/{driftClientAccount/webSocketDriftClientAccountSubscriber.d.ts → webSocketDriftClientAccountSubscriber.d.ts} +4 -4
- package/lib/browser/accounts/{driftClientAccount/webSocketDriftClientAccountSubscriber.js → webSocketDriftClientAccountSubscriber.js} +9 -9
- package/lib/browser/accounts/{highLeverageModeConfigAccount/webSocketHighLeverageModeConfigAccountSubscriber.d.ts → webSocketHighLeverageModeConfigAccountSubscriber.d.ts} +2 -2
- package/lib/browser/accounts/{highLeverageModeConfigAccount/webSocketHighLeverageModeConfigAccountSubscriber.js → webSocketHighLeverageModeConfigAccountSubscriber.js} +2 -2
- package/lib/browser/accounts/{insuranceFundStakeAccount/webSocketInsuranceFundStakeAccountSubscriber.d.ts → webSocketInsuranceFundStakeAccountSubscriber.d.ts} +2 -2
- package/lib/browser/accounts/{insuranceFundStakeAccount/webSocketInsuranceFundStakeAccountSubscriber.js → webSocketInsuranceFundStakeAccountSubscriber.js} +2 -2
- package/lib/browser/accounts/{programAccount/webSocketProgramAccountSubscriber.d.ts → webSocketProgramAccountSubscriber.d.ts} +1 -1
- package/lib/browser/accounts/{userAccount/webSocketUserAccountSubscriber.d.ts → webSocketUserAccountSubscriber.d.ts} +2 -2
- package/lib/{node/accounts/userAccount → browser/accounts}/webSocketUserAccountSubscriber.js +2 -2
- package/lib/browser/accounts/{userStatsAccount/webSocketUserStatsAccountSubsriber.d.ts → webSocketUserStatsAccountSubsriber.d.ts} +2 -2
- package/lib/browser/accounts/{userStatsAccount/webSocketUserStatsAccountSubsriber.js → webSocketUserStatsAccountSubsriber.js} +2 -2
- package/lib/browser/adminClient.d.ts +2 -2
- package/lib/browser/adminClient.js +14 -14
- package/lib/browser/auctionSubscriber/auctionSubscriber.js +1 -1
- package/lib/browser/auctionSubscriber/auctionSubscriberGrpc.js +1 -1
- package/lib/browser/{config/index.d.ts → config.d.ts} +5 -5
- package/lib/{node/config/index.js → browser/config.js} +3 -3
- package/lib/browser/constants/perpMarkets.d.ts +1 -1
- package/lib/browser/constants/spotMarkets.d.ts +1 -1
- package/lib/browser/dlob/DLOB.d.ts +3 -3
- package/lib/browser/dlob/DLOB.js +18 -13
- package/lib/browser/dlob/DLOBNode.d.ts +5 -3
- package/lib/browser/dlob/DLOBNode.js +14 -13
- package/lib/browser/dlob/DLOBSubscriber.js +1 -1
- package/lib/browser/dlob/NodeList.d.ts +4 -1
- package/lib/browser/dlob/NodeList.js +11 -8
- package/lib/browser/dlob/orderBookLevels.d.ts +6 -0
- package/lib/browser/dlob/orderBookLevels.js +5 -2
- package/lib/browser/driftClient.d.ts +1 -1
- package/lib/browser/driftClient.js +18 -5
- package/lib/browser/driftClientConfig.d.ts +2 -2
- package/lib/browser/idl/drift.json +82 -11
- package/lib/browser/index.d.ts +14 -21
- package/lib/browser/index.js +14 -21
- package/lib/browser/math/amm.d.ts +4 -0
- package/lib/browser/math/amm.js +25 -9
- package/lib/browser/math/margin.js +1 -1
- package/lib/browser/math/market.d.ts +10 -0
- package/lib/browser/math/market.js +76 -1
- package/lib/browser/math/orders.d.ts +1 -0
- package/lib/browser/math/orders.js +13 -1
- package/lib/browser/math/state.d.ts +1 -0
- package/lib/browser/math/state.js +6 -1
- package/lib/browser/openbook/openbookV2Subscriber.d.ts +1 -1
- package/lib/browser/oracles/types.d.ts +1 -0
- package/lib/browser/oracles/utils.js +1 -3
- package/lib/browser/orderSubscriber/OrderSubscriber.d.ts +1 -1
- package/lib/browser/orderSubscriber/OrderSubscriber.js +10 -3
- package/lib/browser/orderSubscriber/WebsocketSubscription.js +1 -1
- package/lib/browser/orderSubscriber/grpcSubscription.js +1 -1
- package/lib/browser/phoenix/phoenixSubscriber.d.ts +1 -1
- package/lib/browser/serum/serumSubscriber.d.ts +1 -1
- package/lib/browser/serum/types.d.ts +1 -1
- package/lib/browser/swift/grpcSignedMsgUserAccountSubscriber.d.ts +1 -1
- package/lib/browser/swift/grpcSignedMsgUserAccountSubscriber.js +1 -1
- package/lib/browser/swift/signedMsgUserAccountSubscriber.d.ts +1 -1
- package/lib/browser/swift/signedMsgUserAccountSubscriber.js +1 -1
- package/lib/browser/swift/swiftOrderSubscriber.d.ts +1 -1
- package/lib/browser/types.d.ts +7 -0
- package/lib/browser/types.js +6 -1
- package/lib/browser/user.js +3 -3
- package/lib/browser/userConfig.d.ts +1 -1
- package/lib/browser/userMap/PollingSubscription.d.ts +2 -2
- package/lib/browser/userMap/WebsocketSubscription.d.ts +2 -2
- package/lib/browser/userMap/WebsocketSubscription.js +1 -1
- package/lib/browser/userMap/grpcSubscription.d.ts +2 -2
- package/lib/browser/userMap/grpcSubscription.js +1 -1
- package/lib/browser/userMap/userMap.d.ts +18 -3
- package/lib/browser/userMap/userMap.js +1 -1
- package/lib/browser/userMap/userStatsMap.d.ts +1 -1
- package/lib/browser/userMap/userStatsMap.js +1 -1
- package/lib/browser/userStats.js +3 -3
- package/lib/browser/userStatsConfig.d.ts +1 -1
- package/lib/node/accounts/{userAccount/basicUserAccountSubscriber.d.ts → basicUserAccountSubscriber.d.ts} +2 -2
- package/lib/node/accounts/basicUserAccountSubscriber.d.ts.map +1 -0
- package/lib/node/accounts/{bulkAccountLoader/bulkAccountLoader.d.ts → bulkAccountLoader.d.ts} +2 -2
- package/lib/node/accounts/bulkAccountLoader.d.ts.map +1 -0
- package/lib/node/accounts/{bulkAccountLoader/bulkAccountLoader.js → bulkAccountLoader.js} +2 -2
- package/lib/node/accounts/bulkUserStatsSubscription.d.ts +1 -1
- package/lib/node/accounts/bulkUserStatsSubscription.d.ts.map +1 -1
- package/lib/node/accounts/bulkUserSubscription.d.ts +1 -1
- package/lib/node/accounts/bulkUserSubscription.d.ts.map +1 -1
- package/lib/node/accounts/customizedCadenceBulkAccountLoader.d.ts.map +1 -0
- package/lib/node/accounts/{bulkAccountLoader/customizedCadenceBulkAccountLoader.js → customizedCadenceBulkAccountLoader.js} +1 -1
- package/lib/node/accounts/{baseSubscribers/grpcAccountSubscriber.d.ts → grpcAccountSubscriber.d.ts} +2 -1
- package/lib/node/accounts/grpcAccountSubscriber.d.ts.map +1 -0
- package/lib/{browser/accounts/baseSubscribers → node/accounts}/grpcAccountSubscriber.js +17 -13
- package/lib/node/accounts/{driftClientAccount/grpcDriftClientAccountSubscriber.d.ts → grpcDriftClientAccountSubscriber.d.ts} +2 -2
- package/lib/node/accounts/grpcDriftClientAccountSubscriber.d.ts.map +1 -0
- package/lib/{browser/accounts/driftClientAccount → node/accounts}/grpcDriftClientAccountSubscriber.js +4 -4
- package/lib/node/accounts/{insuranceFundStakeAccount/grpcInsuranceFundStakeAccountSubscriber.d.ts → grpcInsuranceFundStakeAccountSubscriber.d.ts} +2 -2
- package/lib/node/accounts/grpcInsuranceFundStakeAccountSubscriber.d.ts.map +1 -0
- package/lib/{browser/accounts/insuranceFundStakeAccount → node/accounts}/grpcInsuranceFundStakeAccountSubscriber.js +1 -1
- package/lib/node/accounts/{programAccount/grpcProgramAccountSubscriber.d.ts → grpcProgramAccountSubscriber.d.ts} +2 -1
- package/lib/node/accounts/grpcProgramAccountSubscriber.d.ts.map +1 -0
- package/lib/node/accounts/{programAccount/grpcProgramAccountSubscriber.js → grpcProgramAccountSubscriber.js} +17 -13
- package/lib/node/accounts/{userAccount/grpcUserAccountSubscriber.d.ts → grpcUserAccountSubscriber.d.ts} +2 -2
- package/lib/node/accounts/grpcUserAccountSubscriber.d.ts.map +1 -0
- package/lib/node/accounts/{userAccount/grpcUserAccountSubscriber.js → grpcUserAccountSubscriber.js} +1 -1
- package/lib/node/accounts/{userStatsAccount/grpcUserStatsAccountSubscriber.d.ts → grpcUserStatsAccountSubscriber.d.ts} +2 -2
- package/lib/node/accounts/grpcUserStatsAccountSubscriber.d.ts.map +1 -0
- package/lib/{browser/accounts/userStatsAccount → node/accounts}/grpcUserStatsAccountSubscriber.js +1 -1
- package/lib/node/accounts/{userAccount/oneShotUserAccountSubscriber.d.ts → oneShotUserAccountSubscriber.d.ts} +2 -2
- package/lib/node/accounts/oneShotUserAccountSubscriber.d.ts.map +1 -0
- package/lib/node/accounts/{driftClientAccount/pollingDriftClientAccountSubscriber.d.ts → pollingDriftClientAccountSubscriber.d.ts} +5 -5
- package/lib/node/accounts/pollingDriftClientAccountSubscriber.d.ts.map +1 -0
- package/lib/node/accounts/{driftClientAccount/pollingDriftClientAccountSubscriber.js → pollingDriftClientAccountSubscriber.js} +8 -8
- package/lib/node/accounts/{highLeverageModeConfigAccount/pollingHighLeverageModeConfigAccountSubscriber.d.ts → pollingHighLeverageModeConfigAccountSubscriber.d.ts} +3 -3
- package/lib/node/accounts/pollingHighLeverageModeConfigAccountSubscriber.d.ts.map +1 -0
- package/lib/node/accounts/{highLeverageModeConfigAccount/pollingHighLeverageModeConfigAccountSubscriber.js → pollingHighLeverageModeConfigAccountSubscriber.js} +1 -1
- package/lib/node/accounts/{insuranceFundStakeAccount/pollingInsuranceFundStakeAccountSubscriber.d.ts → pollingInsuranceFundStakeAccountSubscriber.d.ts} +3 -3
- package/lib/node/accounts/pollingInsuranceFundStakeAccountSubscriber.d.ts.map +1 -0
- package/lib/{browser/accounts/insuranceFundStakeAccount → node/accounts}/pollingInsuranceFundStakeAccountSubscriber.js +1 -1
- package/lib/node/accounts/{oracleAccount/pollingOracleAccountSubscriber.d.ts → pollingOracleAccountSubscriber.d.ts} +3 -3
- package/lib/node/accounts/pollingOracleAccountSubscriber.d.ts.map +1 -0
- package/lib/{browser/accounts/oracleAccount → node/accounts}/pollingOracleAccountSubscriber.js +1 -1
- package/lib/node/accounts/{tokenAccount/pollingTokenAccountSubscriber.d.ts → pollingTokenAccountSubscriber.d.ts} +2 -2
- package/lib/node/accounts/pollingTokenAccountSubscriber.d.ts.map +1 -0
- package/lib/node/accounts/{tokenAccount/pollingTokenAccountSubscriber.js → pollingTokenAccountSubscriber.js} +2 -2
- package/lib/node/accounts/{userAccount/pollingUserAccountSubscriber.d.ts → pollingUserAccountSubscriber.d.ts} +4 -4
- package/lib/node/accounts/pollingUserAccountSubscriber.d.ts.map +1 -0
- package/lib/node/accounts/{userAccount/pollingUserAccountSubscriber.js → pollingUserAccountSubscriber.js} +1 -1
- package/lib/node/accounts/{userStatsAccount/pollingUserStatsAccountSubscriber.d.ts → pollingUserStatsAccountSubscriber.d.ts} +3 -3
- package/lib/node/accounts/pollingUserStatsAccountSubscriber.d.ts.map +1 -0
- package/lib/node/accounts/{userStatsAccount/pollingUserStatsAccountSubscriber.js → pollingUserStatsAccountSubscriber.js} +1 -1
- package/lib/node/accounts/testBulkAccountLoader.d.ts.map +1 -0
- package/lib/node/accounts/types.d.ts +11 -0
- package/lib/node/accounts/types.d.ts.map +1 -1
- package/lib/node/accounts/{baseSubscribers/webSocketAccountSubscriber.d.ts → webSocketAccountSubscriber.d.ts} +1 -1
- package/lib/node/accounts/webSocketAccountSubscriber.d.ts.map +1 -0
- package/lib/{browser/accounts/baseSubscribers → node/accounts}/webSocketAccountSubscriber.js +1 -1
- package/lib/node/accounts/{driftClientAccount/webSocketDriftClientAccountSubscriber.d.ts → webSocketDriftClientAccountSubscriber.d.ts} +4 -4
- package/lib/node/accounts/webSocketDriftClientAccountSubscriber.d.ts.map +1 -0
- package/lib/node/accounts/{driftClientAccount/webSocketDriftClientAccountSubscriber.js → webSocketDriftClientAccountSubscriber.js} +9 -9
- package/lib/node/accounts/{highLeverageModeConfigAccount/webSocketHighLeverageModeConfigAccountSubscriber.d.ts → webSocketHighLeverageModeConfigAccountSubscriber.d.ts} +2 -2
- package/lib/node/accounts/webSocketHighLeverageModeConfigAccountSubscriber.d.ts.map +1 -0
- package/lib/node/accounts/{highLeverageModeConfigAccount/webSocketHighLeverageModeConfigAccountSubscriber.js → webSocketHighLeverageModeConfigAccountSubscriber.js} +2 -2
- package/lib/node/accounts/{insuranceFundStakeAccount/webSocketInsuranceFundStakeAccountSubscriber.d.ts → webSocketInsuranceFundStakeAccountSubscriber.d.ts} +2 -2
- package/lib/node/accounts/webSocketInsuranceFundStakeAccountSubscriber.d.ts.map +1 -0
- package/lib/node/accounts/{insuranceFundStakeAccount/webSocketInsuranceFundStakeAccountSubscriber.js → webSocketInsuranceFundStakeAccountSubscriber.js} +2 -2
- package/lib/node/accounts/{programAccount/webSocketProgramAccountSubscriber.d.ts → webSocketProgramAccountSubscriber.d.ts} +1 -1
- package/lib/node/accounts/webSocketProgramAccountSubscriber.d.ts.map +1 -0
- package/lib/node/accounts/{userAccount/webSocketUserAccountSubscriber.d.ts → webSocketUserAccountSubscriber.d.ts} +2 -2
- package/lib/node/accounts/webSocketUserAccountSubscriber.d.ts.map +1 -0
- package/lib/{browser/accounts/userAccount → node/accounts}/webSocketUserAccountSubscriber.js +2 -2
- package/lib/node/accounts/{userStatsAccount/webSocketUserStatsAccountSubsriber.d.ts → webSocketUserStatsAccountSubsriber.d.ts} +2 -2
- package/lib/node/accounts/webSocketUserStatsAccountSubsriber.d.ts.map +1 -0
- package/lib/node/accounts/{userStatsAccount/webSocketUserStatsAccountSubsriber.js → webSocketUserStatsAccountSubsriber.js} +2 -2
- package/lib/node/adminClient.d.ts +2 -2
- package/lib/node/adminClient.d.ts.map +1 -1
- package/lib/node/adminClient.js +14 -14
- package/lib/node/auctionSubscriber/auctionSubscriber.js +1 -1
- package/lib/node/auctionSubscriber/auctionSubscriberGrpc.js +1 -1
- package/lib/node/{config/index.d.ts → config.d.ts} +6 -6
- package/lib/node/config.d.ts.map +1 -0
- package/lib/{browser/config/index.js → node/config.js} +3 -3
- package/lib/node/constants/perpMarkets.d.ts +1 -1
- package/lib/node/constants/perpMarkets.d.ts.map +1 -1
- package/lib/node/constants/spotMarkets.d.ts +1 -1
- package/lib/node/constants/spotMarkets.d.ts.map +1 -1
- package/lib/node/dlob/DLOB.d.ts +3 -3
- package/lib/node/dlob/DLOB.d.ts.map +1 -1
- package/lib/node/dlob/DLOB.js +18 -13
- package/lib/node/dlob/DLOBNode.d.ts +5 -3
- package/lib/node/dlob/DLOBNode.d.ts.map +1 -1
- package/lib/node/dlob/DLOBNode.js +14 -13
- package/lib/node/dlob/DLOBSubscriber.d.ts.map +1 -1
- package/lib/node/dlob/DLOBSubscriber.js +1 -1
- package/lib/node/dlob/NodeList.d.ts +4 -1
- package/lib/node/dlob/NodeList.d.ts.map +1 -1
- package/lib/node/dlob/NodeList.js +11 -8
- package/lib/node/dlob/orderBookLevels.d.ts +6 -0
- package/lib/node/dlob/orderBookLevels.d.ts.map +1 -1
- package/lib/node/dlob/orderBookLevels.js +5 -2
- package/lib/node/driftClient.d.ts +1 -1
- package/lib/node/driftClient.d.ts.map +1 -1
- package/lib/node/driftClient.js +18 -5
- package/lib/node/driftClientConfig.d.ts +2 -2
- package/lib/node/driftClientConfig.d.ts.map +1 -1
- package/lib/node/idl/drift.json +82 -11
- package/lib/node/index.d.ts +14 -21
- package/lib/node/index.d.ts.map +1 -1
- package/lib/node/index.js +14 -21
- package/lib/node/math/amm.d.ts +4 -0
- package/lib/node/math/amm.d.ts.map +1 -1
- package/lib/node/math/amm.js +25 -9
- package/lib/node/math/margin.js +1 -1
- package/lib/node/math/market.d.ts +10 -0
- package/lib/node/math/market.d.ts.map +1 -1
- package/lib/node/math/market.js +76 -1
- package/lib/node/math/orders.d.ts +1 -0
- package/lib/node/math/orders.d.ts.map +1 -1
- package/lib/node/math/orders.js +13 -1
- package/lib/node/math/state.d.ts +1 -0
- package/lib/node/math/state.d.ts.map +1 -1
- package/lib/node/math/state.js +6 -1
- package/lib/node/openbook/openbookV2Subscriber.d.ts +1 -1
- package/lib/node/openbook/openbookV2Subscriber.d.ts.map +1 -1
- package/lib/node/oracles/types.d.ts +1 -0
- package/lib/node/oracles/types.d.ts.map +1 -1
- package/lib/node/oracles/utils.d.ts.map +1 -1
- package/lib/node/oracles/utils.js +1 -3
- 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 +10 -3
- package/lib/node/orderSubscriber/WebsocketSubscription.js +1 -1
- package/lib/node/orderSubscriber/grpcSubscription.js +1 -1
- package/lib/node/phoenix/phoenixSubscriber.d.ts +1 -1
- package/lib/node/phoenix/phoenixSubscriber.d.ts.map +1 -1
- package/lib/node/serum/serumSubscriber.d.ts +1 -1
- package/lib/node/serum/serumSubscriber.d.ts.map +1 -1
- package/lib/node/serum/types.d.ts +1 -1
- package/lib/node/serum/types.d.ts.map +1 -1
- package/lib/node/swift/grpcSignedMsgUserAccountSubscriber.d.ts +1 -1
- package/lib/node/swift/grpcSignedMsgUserAccountSubscriber.d.ts.map +1 -1
- package/lib/node/swift/grpcSignedMsgUserAccountSubscriber.js +1 -1
- package/lib/node/swift/signedMsgUserAccountSubscriber.d.ts +1 -1
- package/lib/node/swift/signedMsgUserAccountSubscriber.d.ts.map +1 -1
- package/lib/node/swift/signedMsgUserAccountSubscriber.js +1 -1
- package/lib/node/swift/swiftOrderSubscriber.d.ts +1 -1
- package/lib/node/swift/swiftOrderSubscriber.d.ts.map +1 -1
- package/lib/node/types.d.ts +7 -0
- package/lib/node/types.d.ts.map +1 -1
- package/lib/node/types.js +6 -1
- package/lib/node/user.js +3 -3
- package/lib/node/userConfig.d.ts +1 -1
- package/lib/node/userConfig.d.ts.map +1 -1
- package/lib/node/userMap/PollingSubscription.d.ts +2 -2
- package/lib/node/userMap/PollingSubscription.d.ts.map +1 -1
- package/lib/node/userMap/WebsocketSubscription.d.ts +2 -2
- package/lib/node/userMap/WebsocketSubscription.d.ts.map +1 -1
- package/lib/node/userMap/WebsocketSubscription.js +1 -1
- package/lib/node/userMap/grpcSubscription.d.ts +2 -2
- package/lib/node/userMap/grpcSubscription.d.ts.map +1 -1
- package/lib/node/userMap/grpcSubscription.js +1 -1
- package/lib/node/userMap/userMap.d.ts +18 -3
- package/lib/node/userMap/userMap.d.ts.map +1 -1
- package/lib/node/userMap/userMap.js +1 -1
- 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 +1 -1
- package/lib/node/userStats.js +3 -3
- package/lib/node/userStatsConfig.d.ts +1 -1
- package/lib/node/userStatsConfig.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/accounts/{userAccount/basicUserAccountSubscriber.ts → basicUserAccountSubscriber.ts} +2 -6
- package/src/accounts/{bulkAccountLoader/bulkAccountLoader.ts → bulkAccountLoader.ts} +4 -4
- package/src/accounts/bulkUserStatsSubscription.ts +2 -2
- package/src/accounts/bulkUserSubscription.ts +2 -2
- package/src/accounts/{bulkAccountLoader/customizedCadenceBulkAccountLoader.ts → customizedCadenceBulkAccountLoader.ts} +1 -1
- package/src/accounts/{baseSubscribers/grpcAccountSubscriber.ts → grpcAccountSubscriber.ts} +26 -13
- package/src/accounts/{driftClientAccount/grpcDriftClientAccountSubscriber.ts → grpcDriftClientAccountSubscriber.ts} +7 -11
- package/src/accounts/{insuranceFundStakeAccount/grpcInsuranceFundStakeAccountSubscriber.ts → grpcInsuranceFundStakeAccountSubscriber.ts} +3 -3
- package/src/accounts/{programAccount/grpcProgramAccountSubscriber.ts → grpcProgramAccountSubscriber.ts} +28 -13
- package/src/accounts/{userAccount/grpcUserAccountSubscriber.ts → grpcUserAccountSubscriber.ts} +3 -3
- package/src/accounts/{userStatsAccount/grpcUserStatsAccountSubscriber.ts → grpcUserStatsAccountSubscriber.ts} +3 -3
- package/src/accounts/{userAccount/oneShotUserAccountSubscriber.ts → oneShotUserAccountSubscriber.ts} +2 -2
- package/src/accounts/{driftClientAccount/pollingDriftClientAccountSubscriber.ts → pollingDriftClientAccountSubscriber.ts} +10 -10
- package/src/accounts/{highLeverageModeConfigAccount/pollingHighLeverageModeConfigAccountSubscriber.ts → pollingHighLeverageModeConfigAccountSubscriber.ts} +3 -3
- package/src/accounts/{insuranceFundStakeAccount/pollingInsuranceFundStakeAccountSubscriber.ts → pollingInsuranceFundStakeAccountSubscriber.ts} +3 -3
- package/src/accounts/{oracleAccount/pollingOracleAccountSubscriber.ts → pollingOracleAccountSubscriber.ts} +3 -3
- package/src/accounts/{tokenAccount/pollingTokenAccountSubscriber.ts → pollingTokenAccountSubscriber.ts} +3 -3
- package/src/accounts/{userAccount/pollingUserAccountSubscriber.ts → pollingUserAccountSubscriber.ts} +4 -4
- package/src/accounts/{userStatsAccount/pollingUserStatsAccountSubscriber.ts → pollingUserStatsAccountSubscriber.ts} +3 -3
- package/src/accounts/types.ts +12 -0
- package/src/accounts/{baseSubscribers/webSocketAccountSubscriber.ts → webSocketAccountSubscriber.ts} +2 -2
- package/src/accounts/{driftClientAccount/webSocketDriftClientAccountSubscriber.ts → webSocketDriftClientAccountSubscriber.ts} +11 -15
- package/src/accounts/{highLeverageModeConfigAccount/webSocketHighLeverageModeConfigAccountSubscriber.ts → webSocketHighLeverageModeConfigAccountSubscriber.ts} +3 -3
- package/src/accounts/{insuranceFundStakeAccount/webSocketInsuranceFundStakeAccountSubscriber.ts → webSocketInsuranceFundStakeAccountSubscriber.ts} +3 -3
- package/src/accounts/{programAccount/webSocketProgramAccountSubscriber.ts → webSocketProgramAccountSubscriber.ts} +1 -1
- package/src/accounts/{userAccount/webSocketUserAccountSubscriber.ts → webSocketUserAccountSubscriber.ts} +3 -3
- package/src/accounts/{userStatsAccount/webSocketUserStatsAccountSubsriber.ts → webSocketUserStatsAccountSubsriber.ts} +3 -3
- package/src/adminClient.ts +29 -27
- package/src/auctionSubscriber/auctionSubscriber.ts +1 -1
- package/src/auctionSubscriber/auctionSubscriberGrpc.ts +2 -2
- package/src/{config/index.ts → config.ts} +7 -6
- package/src/constants/perpMarkets.ts +1 -1
- package/src/constants/spotMarkets.ts +1 -1
- package/src/dlob/DLOB.ts +31 -8
- package/src/dlob/DLOBNode.ts +22 -11
- package/src/dlob/DLOBSubscriber.ts +2 -1
- package/src/dlob/NodeList.ts +12 -3
- package/src/dlob/orderBookLevels.ts +8 -2
- package/src/driftClient.ts +22 -8
- package/src/driftClientConfig.ts +2 -2
- package/src/idl/drift.json +83 -12
- package/src/index.ts +14 -26
- package/src/math/amm.ts +49 -10
- package/src/math/margin.ts +1 -1
- package/src/math/market.ts +105 -0
- package/src/math/orders.ts +18 -0
- package/src/math/state.ts +7 -1
- package/src/openbook/openbookV2Subscriber.ts +1 -1
- package/src/oracles/types.ts +1 -0
- package/src/oracles/utils.ts +1 -3
- package/src/orderSubscriber/OrderSubscriber.ts +16 -2
- package/src/orderSubscriber/WebsocketSubscription.ts +1 -1
- package/src/orderSubscriber/grpcSubscription.ts +1 -1
- package/src/phoenix/phoenixSubscriber.ts +1 -1
- package/src/serum/serumSubscriber.ts +1 -1
- package/src/serum/types.ts +1 -1
- package/src/swift/grpcSignedMsgUserAccountSubscriber.ts +1 -1
- package/src/swift/signedMsgUserAccountSubscriber.ts +1 -1
- package/src/swift/swiftOrderSubscriber.ts +1 -1
- package/src/testClient.ts +1 -1
- package/src/types.ts +9 -0
- package/src/user.ts +3 -3
- package/src/userConfig.ts +1 -1
- package/src/userMap/PollingSubscription.ts +3 -3
- package/src/userMap/WebsocketSubscription.ts +4 -4
- package/src/userMap/grpcSubscription.ts +5 -5
- package/src/userMap/userMap.ts +31 -4
- package/src/userMap/userStatsMap.ts +2 -2
- package/src/userStats.ts +3 -3
- package/src/userStatsConfig.ts +1 -1
- package/tests/accounts/customizedCadenceBulkAccountLoader.test.ts +1 -1
- package/lib/browser/config/types.d.ts +0 -1
- package/lib/browser/config/types.js +0 -2
- package/lib/browser/dlob/utils.d.ts +0 -1
- package/lib/browser/dlob/utils.js +0 -7
- package/lib/browser/userMap/events.d.ts +0 -6
- package/lib/browser/userMap/events.js +0 -2
- package/lib/browser/userMap/types.d.ts +0 -32
- package/lib/browser/userMap/types.js +0 -2
- package/lib/node/accounts/baseSubscribers/grpcAccountSubscriber.d.ts.map +0 -1
- package/lib/node/accounts/baseSubscribers/webSocketAccountSubscriber.d.ts.map +0 -1
- package/lib/node/accounts/bulkAccountLoader/bulkAccountLoader.d.ts.map +0 -1
- package/lib/node/accounts/bulkAccountLoader/customizedCadenceBulkAccountLoader.d.ts.map +0 -1
- package/lib/node/accounts/bulkAccountLoader/testBulkAccountLoader.d.ts.map +0 -1
- package/lib/node/accounts/driftClientAccount/grpcDriftClientAccountSubscriber.d.ts.map +0 -1
- package/lib/node/accounts/driftClientAccount/pollingDriftClientAccountSubscriber.d.ts.map +0 -1
- package/lib/node/accounts/driftClientAccount/webSocketDriftClientAccountSubscriber.d.ts.map +0 -1
- package/lib/node/accounts/highLeverageModeConfigAccount/pollingHighLeverageModeConfigAccountSubscriber.d.ts.map +0 -1
- package/lib/node/accounts/highLeverageModeConfigAccount/webSocketHighLeverageModeConfigAccountSubscriber.d.ts.map +0 -1
- package/lib/node/accounts/insuranceFundStakeAccount/grpcInsuranceFundStakeAccountSubscriber.d.ts.map +0 -1
- package/lib/node/accounts/insuranceFundStakeAccount/pollingInsuranceFundStakeAccountSubscriber.d.ts.map +0 -1
- package/lib/node/accounts/insuranceFundStakeAccount/webSocketInsuranceFundStakeAccountSubscriber.d.ts.map +0 -1
- package/lib/node/accounts/oracleAccount/pollingOracleAccountSubscriber.d.ts.map +0 -1
- package/lib/node/accounts/programAccount/grpcProgramAccountSubscriber.d.ts.map +0 -1
- package/lib/node/accounts/programAccount/webSocketProgramAccountSubscriber.d.ts.map +0 -1
- package/lib/node/accounts/tokenAccount/pollingTokenAccountSubscriber.d.ts.map +0 -1
- package/lib/node/accounts/userAccount/basicUserAccountSubscriber.d.ts.map +0 -1
- package/lib/node/accounts/userAccount/grpcUserAccountSubscriber.d.ts.map +0 -1
- package/lib/node/accounts/userAccount/oneShotUserAccountSubscriber.d.ts.map +0 -1
- package/lib/node/accounts/userAccount/pollingUserAccountSubscriber.d.ts.map +0 -1
- package/lib/node/accounts/userAccount/webSocketUserAccountSubscriber.d.ts.map +0 -1
- package/lib/node/accounts/userStatsAccount/grpcUserStatsAccountSubscriber.d.ts.map +0 -1
- package/lib/node/accounts/userStatsAccount/pollingUserStatsAccountSubscriber.d.ts.map +0 -1
- package/lib/node/accounts/userStatsAccount/webSocketUserStatsAccountSubsriber.d.ts.map +0 -1
- package/lib/node/config/index.d.ts.map +0 -1
- package/lib/node/config/types.d.ts +0 -2
- package/lib/node/config/types.d.ts.map +0 -1
- package/lib/node/config/types.js +0 -2
- package/lib/node/dlob/utils.d.ts +0 -2
- package/lib/node/dlob/utils.d.ts.map +0 -1
- package/lib/node/dlob/utils.js +0 -7
- package/lib/node/userMap/events.d.ts +0 -7
- package/lib/node/userMap/events.d.ts.map +0 -1
- package/lib/node/userMap/events.js +0 -2
- package/lib/node/userMap/types.d.ts +0 -33
- package/lib/node/userMap/types.d.ts.map +0 -1
- package/lib/node/userMap/types.js +0 -2
- package/src/config/types.ts +0 -1
- package/src/dlob/utils.ts +0 -6
- package/src/userMap/events.ts +0 -7
- package/src/userMap/types.ts +0 -47
- /package/lib/browser/accounts/{userAccount/basicUserAccountSubscriber.js → basicUserAccountSubscriber.js} +0 -0
- /package/lib/browser/accounts/{bulkAccountLoader/customizedCadenceBulkAccountLoader.d.ts → customizedCadenceBulkAccountLoader.d.ts} +0 -0
- /package/lib/browser/accounts/{userAccount/oneShotUserAccountSubscriber.js → oneShotUserAccountSubscriber.js} +0 -0
- /package/lib/browser/accounts/{bulkAccountLoader/testBulkAccountLoader.d.ts → testBulkAccountLoader.d.ts} +0 -0
- /package/lib/browser/accounts/{bulkAccountLoader/testBulkAccountLoader.js → testBulkAccountLoader.js} +0 -0
- /package/lib/browser/accounts/{programAccount/webSocketProgramAccountSubscriber.js → webSocketProgramAccountSubscriber.js} +0 -0
- /package/lib/node/accounts/{userAccount/basicUserAccountSubscriber.js → basicUserAccountSubscriber.js} +0 -0
- /package/lib/node/accounts/{bulkAccountLoader/customizedCadenceBulkAccountLoader.d.ts → customizedCadenceBulkAccountLoader.d.ts} +0 -0
- /package/lib/node/accounts/{userAccount/oneShotUserAccountSubscriber.js → oneShotUserAccountSubscriber.js} +0 -0
- /package/lib/node/accounts/{bulkAccountLoader/testBulkAccountLoader.d.ts → testBulkAccountLoader.d.ts} +0 -0
- /package/lib/node/accounts/{bulkAccountLoader/testBulkAccountLoader.js → testBulkAccountLoader.js} +0 -0
- /package/lib/node/accounts/{programAccount/webSocketProgramAccountSubscriber.js → webSocketProgramAccountSubscriber.js} +0 -0
- /package/src/accounts/{bulkAccountLoader/testBulkAccountLoader.ts → testBulkAccountLoader.ts} +0 -0
package/lib/node/math/market.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.calculatePerpMarketBaseLiquidatorFee = exports.calculateAvailablePerpLiquidity = exports.calculateNetUserPnlImbalance = exports.calculateNetUserPnl = exports.calculateMarketMaxAvailableInsurance = exports.calculateMarketAvailablePNL = exports.calculateUnrealizedAssetWeight = exports.calculateMarketMarginRatio = exports.calculateOracleSpread = exports.calculateOracleReserveSpread = exports.calculateNewMarketAfterTrade = exports.calculateAskPrice = exports.calculateBidPrice = exports.calculateReservePrice = void 0;
|
|
3
|
+
exports.getTriggerPrice = exports.calculatePerpMarketBaseLiquidatorFee = exports.calculateAvailablePerpLiquidity = exports.calculateNetUserPnlImbalance = exports.calculateNetUserPnl = exports.calculateMarketMaxAvailableInsurance = exports.calculateMarketAvailablePNL = exports.calculateUnrealizedAssetWeight = exports.calculateMarketMarginRatio = exports.calculateOracleSpread = exports.calculateOracleReserveSpread = exports.calculateNewMarketAfterTrade = exports.calculateAskPrice = exports.calculateBidPrice = exports.calculateReservePrice = void 0;
|
|
4
4
|
const anchor_1 = require("@coral-xyz/anchor");
|
|
5
5
|
const types_1 = require("../types");
|
|
6
6
|
const amm_1 = require("./amm");
|
|
@@ -172,3 +172,78 @@ function calculatePerpMarketBaseLiquidatorFee(market, userHighLeverageMode) {
|
|
|
172
172
|
}
|
|
173
173
|
}
|
|
174
174
|
exports.calculatePerpMarketBaseLiquidatorFee = calculatePerpMarketBaseLiquidatorFee;
|
|
175
|
+
/**
|
|
176
|
+
* Calculates trigger price for a perp market based on oracle price and current time
|
|
177
|
+
* Implements the same logic as the Rust get_trigger_price function
|
|
178
|
+
*
|
|
179
|
+
* @param market - The perp market account
|
|
180
|
+
* @param oraclePrice - Current oracle price (precision: PRICE_PRECISION)
|
|
181
|
+
* @param now - Current timestamp in seconds
|
|
182
|
+
* @returns trigger price (precision: PRICE_PRECISION)
|
|
183
|
+
*/
|
|
184
|
+
function getTriggerPrice(market, oraclePrice, now, useMedianPrice) {
|
|
185
|
+
if (!useMedianPrice) {
|
|
186
|
+
return oraclePrice.abs();
|
|
187
|
+
}
|
|
188
|
+
const lastFillPrice = market.lastFillPrice;
|
|
189
|
+
// Calculate 5-minute basis
|
|
190
|
+
const markPrice5minTwap = market.amm.lastMarkPriceTwap5Min;
|
|
191
|
+
const lastOraclePriceTwap5min = market.amm.historicalOracleData.lastOraclePriceTwap5Min;
|
|
192
|
+
const basis5min = markPrice5minTwap.sub(lastOraclePriceTwap5min);
|
|
193
|
+
const oraclePlusBasis5min = oraclePrice.add(basis5min);
|
|
194
|
+
// Calculate funding basis
|
|
195
|
+
const lastFundingBasis = getLastFundingBasis(market, oraclePrice, now);
|
|
196
|
+
const oraclePlusFundingBasis = oraclePrice.add(lastFundingBasis);
|
|
197
|
+
const prices = [
|
|
198
|
+
lastFillPrice.gt(numericConstants_1.ZERO) ? lastFillPrice : oraclePrice,
|
|
199
|
+
oraclePlusFundingBasis,
|
|
200
|
+
oraclePlusBasis5min,
|
|
201
|
+
].sort((a, b) => a.cmp(b));
|
|
202
|
+
const medianPrice = prices[1];
|
|
203
|
+
return clampTriggerPrice(market, oraclePrice.abs(), medianPrice);
|
|
204
|
+
}
|
|
205
|
+
exports.getTriggerPrice = getTriggerPrice;
|
|
206
|
+
/**
|
|
207
|
+
* Calculates the last funding basis for trigger price calculation
|
|
208
|
+
* Implements the same logic as the Rust get_last_funding_basis function
|
|
209
|
+
*/
|
|
210
|
+
function getLastFundingBasis(market, oraclePrice, now) {
|
|
211
|
+
if (market.amm.lastFundingOracleTwap.gt(numericConstants_1.ZERO)) {
|
|
212
|
+
const lastFundingRate = market.amm.lastFundingRate
|
|
213
|
+
.mul(numericConstants_1.PRICE_PRECISION)
|
|
214
|
+
.div(market.amm.lastFundingOracleTwap)
|
|
215
|
+
.muln(24);
|
|
216
|
+
const lastFundingRatePreAdj = lastFundingRate.sub(numericConstants_1.FUNDING_RATE_PRECISION.div(new anchor_1.BN(5000)) // FUNDING_RATE_OFFSET_PERCENTAGE
|
|
217
|
+
);
|
|
218
|
+
const timeLeftUntilFundingUpdate = anchor_1.BN.min(anchor_1.BN.max(now.sub(market.amm.lastFundingRateTs), numericConstants_1.ZERO), market.amm.fundingPeriod);
|
|
219
|
+
const lastFundingBasis = oraclePrice
|
|
220
|
+
.mul(lastFundingRatePreAdj)
|
|
221
|
+
.div(numericConstants_1.PERCENTAGE_PRECISION)
|
|
222
|
+
.mul(market.amm.fundingPeriod.sub(timeLeftUntilFundingUpdate))
|
|
223
|
+
.div(market.amm.fundingPeriod)
|
|
224
|
+
.div(new anchor_1.BN(1000)); // FUNDING_RATE_BUFFER
|
|
225
|
+
return lastFundingBasis;
|
|
226
|
+
}
|
|
227
|
+
else {
|
|
228
|
+
return numericConstants_1.ZERO;
|
|
229
|
+
}
|
|
230
|
+
}
|
|
231
|
+
/**
|
|
232
|
+
* Clamps trigger price based on contract tier
|
|
233
|
+
* Implements the same logic as the Rust clamp_trigger_price function
|
|
234
|
+
*/
|
|
235
|
+
function clampTriggerPrice(market, oraclePrice, medianPrice) {
|
|
236
|
+
let maxBpsDiff;
|
|
237
|
+
const tier = market.contractTier;
|
|
238
|
+
if ((0, types_1.isVariant)(tier, 'a') || (0, types_1.isVariant)(tier, 'b')) {
|
|
239
|
+
maxBpsDiff = new anchor_1.BN(500); // 20 BPS
|
|
240
|
+
}
|
|
241
|
+
else if ((0, types_1.isVariant)(tier, 'c')) {
|
|
242
|
+
maxBpsDiff = new anchor_1.BN(100); // 100 BPS
|
|
243
|
+
}
|
|
244
|
+
else {
|
|
245
|
+
maxBpsDiff = new anchor_1.BN(40); // 250 BPS
|
|
246
|
+
}
|
|
247
|
+
const maxOracleDiff = oraclePrice.div(maxBpsDiff);
|
|
248
|
+
return anchor_1.BN.min(anchor_1.BN.max(medianPrice, oraclePrice.sub(maxOracleDiff)), oraclePrice.add(maxOracleDiff));
|
|
249
|
+
}
|
|
@@ -23,4 +23,5 @@ export declare function isTriggered(order: Order): boolean;
|
|
|
23
23
|
export declare function isRestingLimitOrder(order: Order, slot: number): boolean;
|
|
24
24
|
export declare function isTakingOrder(order: Order, slot: number): boolean;
|
|
25
25
|
export declare function isSignedMsgOrder(order: Order): boolean;
|
|
26
|
+
export declare function calculateOrderBaseAssetAmount(order: Order, existingBaseAssetAmount: BN): BN;
|
|
26
27
|
//# sourceMappingURL=orders.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"orders.d.ts","sourceRoot":"","sources":["../../../src/math/orders.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAC/B,OAAO,EAGN,iBAAiB,EACjB,GAAG,EACH,KAAK,EACL,iBAAiB,EACjB,oBAAoB,EACpB,MAAM,UAAU,CAAC;AAElB,OAAO,EAAE,EAAE,EAAE,MAAM,mBAAmB,CAAC;AACvC,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAYnD,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,GAAG,OAAO,CAoCvE;AAED,wBAAgB,oCAAoC,CACnD,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,KAAK,GACV,OAAO,CA4BT;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,GAAG,OAAO,CA0BnE;AAED,wBAAgB,0BAA0B,CACzC,eAAe,EAAE,EAAE,EACnB,QAAQ,EAAE,EAAE,GACV,EAAE,CAGJ;AAED,wBAAgB,gBAAgB,CAC/B,KAAK,EAAE,EAAE,EACT,QAAQ,EAAE,EAAE,EACZ,SAAS,EAAE,iBAAiB,GAC1B,EAAE,CAgBJ;AAED,wBAAgB,aAAa,CAC5B,KAAK,EAAE,KAAK,EACZ,eAAe,EAAE,eAAe,EAChC,IAAI,EAAE,MAAM,EACZ,aAAa,CAAC,EAAE,EAAE,EAClB,oBAAoB,CAAC,EAAE,oBAAoB,GACzC,EAAE,GAAG,SAAS,CAwBhB;AAED,wBAAgB,yBAAyB,CACxC,UAAU,EAAE,EAAE,EACd,SAAS,EAAE,iBAAiB,EAC5B,oBAAoB,EAAE,oBAAoB,GACxC,EAAE,CAyBJ;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAMjE;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAKnE;AAED,wBAAgB,gBAAgB,CAC/B,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,iBAAiB,EACzB,eAAe,EAAE,eAAe,EAChC,IAAI,EAAE,MAAM,EACZ,EAAE,EAAE,MAAM,EACV,kBAAkB,EAAE,MAAM,GACxB,OAAO,CAWT;AAED,wBAAgB,uCAAuC,CACtD,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,iBAAiB,EACzB,eAAe,EAAE,eAAe,EAChC,IAAI,EAAE,MAAM,GACV,EAAE,CA0BJ;AAED,wBAAgB,4CAA4C,CAC3D,KAAK,EAAE,KAAK,EACZ,GAAG,EAAE,GAAG,EACR,UAAU,EAAE,EAAE,EACd,eAAe,EAAE,eAAe,GAC9B,EAAE,CA6BJ;AAYD,wBAAgB,cAAc,CAC7B,KAAK,EAAE,KAAK,EACZ,EAAE,EAAE,MAAM,EACV,aAAa,UAAQ,EACrB,aAAa,SAAK,GAChB,OAAO,CAiBT;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAEnD;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAElD;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAErD;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAKjD;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAMvE;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAEjE;AAGD,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAEtD"}
|
|
1
|
+
{"version":3,"file":"orders.d.ts","sourceRoot":"","sources":["../../../src/math/orders.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAC/B,OAAO,EAGN,iBAAiB,EACjB,GAAG,EACH,KAAK,EACL,iBAAiB,EACjB,oBAAoB,EACpB,MAAM,UAAU,CAAC;AAElB,OAAO,EAAE,EAAE,EAAE,MAAM,mBAAmB,CAAC;AACvC,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAYnD,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,GAAG,OAAO,CAoCvE;AAED,wBAAgB,oCAAoC,CACnD,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,KAAK,GACV,OAAO,CA4BT;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,GAAG,OAAO,CA0BnE;AAED,wBAAgB,0BAA0B,CACzC,eAAe,EAAE,EAAE,EACnB,QAAQ,EAAE,EAAE,GACV,EAAE,CAGJ;AAED,wBAAgB,gBAAgB,CAC/B,KAAK,EAAE,EAAE,EACT,QAAQ,EAAE,EAAE,EACZ,SAAS,EAAE,iBAAiB,GAC1B,EAAE,CAgBJ;AAED,wBAAgB,aAAa,CAC5B,KAAK,EAAE,KAAK,EACZ,eAAe,EAAE,eAAe,EAChC,IAAI,EAAE,MAAM,EACZ,aAAa,CAAC,EAAE,EAAE,EAClB,oBAAoB,CAAC,EAAE,oBAAoB,GACzC,EAAE,GAAG,SAAS,CAwBhB;AAED,wBAAgB,yBAAyB,CACxC,UAAU,EAAE,EAAE,EACd,SAAS,EAAE,iBAAiB,EAC5B,oBAAoB,EAAE,oBAAoB,GACxC,EAAE,CAyBJ;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAMjE;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAKnE;AAED,wBAAgB,gBAAgB,CAC/B,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,iBAAiB,EACzB,eAAe,EAAE,eAAe,EAChC,IAAI,EAAE,MAAM,EACZ,EAAE,EAAE,MAAM,EACV,kBAAkB,EAAE,MAAM,GACxB,OAAO,CAWT;AAED,wBAAgB,uCAAuC,CACtD,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,iBAAiB,EACzB,eAAe,EAAE,eAAe,EAChC,IAAI,EAAE,MAAM,GACV,EAAE,CA0BJ;AAED,wBAAgB,4CAA4C,CAC3D,KAAK,EAAE,KAAK,EACZ,GAAG,EAAE,GAAG,EACR,UAAU,EAAE,EAAE,EACd,eAAe,EAAE,eAAe,GAC9B,EAAE,CA6BJ;AAYD,wBAAgB,cAAc,CAC7B,KAAK,EAAE,KAAK,EACZ,EAAE,EAAE,MAAM,EACV,aAAa,UAAQ,EACrB,aAAa,SAAK,GAChB,OAAO,CAiBT;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAEnD;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAElD;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAErD;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAKjD;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAMvE;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAEjE;AAGD,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAEtD;AAED,wBAAgB,6BAA6B,CAC5C,KAAK,EAAE,KAAK,EACZ,uBAAuB,EAAE,EAAE,GACzB,EAAE,CAaJ"}
|
package/lib/node/math/orders.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.isSignedMsgOrder = exports.isTakingOrder = exports.isRestingLimitOrder = exports.isTriggered = exports.mustBeTriggered = exports.isLimitOrder = exports.isMarketOrder = exports.isOrderExpired = exports.calculateBaseAssetAmountToFillUpToLimitPrice = exports.calculateBaseAssetAmountForAmmToFulfill = exports.isFillableByVAMM = exports.hasAuctionPrice = exports.hasLimitPrice = exports.applyProtectedMakerParams = exports.getLimitPrice = exports.standardizePrice = exports.standardizeBaseAssetAmount = exports.isOrderReduceOnly = exports.isOrderRiskIncreasingInSameDirection = exports.isOrderRiskIncreasing = void 0;
|
|
3
|
+
exports.calculateOrderBaseAssetAmount = exports.isSignedMsgOrder = exports.isTakingOrder = exports.isRestingLimitOrder = exports.isTriggered = exports.mustBeTriggered = exports.isLimitOrder = exports.isMarketOrder = exports.isOrderExpired = exports.calculateBaseAssetAmountToFillUpToLimitPrice = exports.calculateBaseAssetAmountForAmmToFulfill = exports.isFillableByVAMM = exports.hasAuctionPrice = exports.hasLimitPrice = exports.applyProtectedMakerParams = exports.getLimitPrice = exports.standardizePrice = exports.standardizeBaseAssetAmount = exports.isOrderReduceOnly = exports.isOrderRiskIncreasingInSameDirection = exports.isOrderRiskIncreasing = void 0;
|
|
4
4
|
const types_1 = require("../types");
|
|
5
5
|
const numericConstants_1 = require("../constants/numericConstants");
|
|
6
6
|
const anchor_1 = require("@coral-xyz/anchor");
|
|
@@ -240,3 +240,15 @@ function isSignedMsgOrder(order) {
|
|
|
240
240
|
return (order.bitFlags & FLAG_IS_SIGNED_MSG) !== 0;
|
|
241
241
|
}
|
|
242
242
|
exports.isSignedMsgOrder = isSignedMsgOrder;
|
|
243
|
+
function calculateOrderBaseAssetAmount(order, existingBaseAssetAmount) {
|
|
244
|
+
if (!order.reduceOnly) {
|
|
245
|
+
return order.baseAssetAmount;
|
|
246
|
+
}
|
|
247
|
+
if ((0, types_1.isVariant)(order.direction, 'long')) {
|
|
248
|
+
return anchor_1.BN.min(anchor_1.BN.min(existingBaseAssetAmount, numericConstants_1.ZERO).abs(), order.baseAssetAmount);
|
|
249
|
+
}
|
|
250
|
+
else {
|
|
251
|
+
return anchor_1.BN.min(anchor_1.BN.max(existingBaseAssetAmount, numericConstants_1.ZERO), order.baseAssetAmount);
|
|
252
|
+
}
|
|
253
|
+
}
|
|
254
|
+
exports.calculateOrderBaseAssetAmount = calculateOrderBaseAssetAmount;
|
package/lib/node/math/state.d.ts
CHANGED
|
@@ -3,4 +3,5 @@ import { BN } from '@coral-xyz/anchor';
|
|
|
3
3
|
import { StateAccount } from '../types';
|
|
4
4
|
export declare function calculateInitUserFee(stateAccount: StateAccount): BN;
|
|
5
5
|
export declare function getMaxNumberOfSubAccounts(stateAccount: StateAccount): BN;
|
|
6
|
+
export declare function useMedianTriggerPrice(stateAccount: StateAccount): boolean;
|
|
6
7
|
//# sourceMappingURL=state.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../../src/math/state.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,mBAAmB,CAAC;AAMvC,OAAO,
|
|
1
|
+
{"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../../src/math/state.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,mBAAmB,CAAC;AAMvC,OAAO,EAAmB,YAAY,EAAE,MAAM,UAAU,CAAC;AAEzD,wBAAgB,oBAAoB,CAAC,YAAY,EAAE,YAAY,GAAG,EAAE,CAkBnE;AAED,wBAAgB,yBAAyB,CAAC,YAAY,EAAE,YAAY,GAAG,EAAE,CAKxE;AAED,wBAAgB,qBAAqB,CAAC,YAAY,EAAE,YAAY,GAAG,OAAO,CAIzE"}
|
package/lib/node/math/state.js
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getMaxNumberOfSubAccounts = exports.calculateInitUserFee = void 0;
|
|
3
|
+
exports.useMedianTriggerPrice = exports.getMaxNumberOfSubAccounts = exports.calculateInitUserFee = void 0;
|
|
4
4
|
const anchor_1 = require("@coral-xyz/anchor");
|
|
5
5
|
const numericConstants_1 = require("../constants/numericConstants");
|
|
6
|
+
const types_1 = require("../types");
|
|
6
7
|
function calculateInitUserFee(stateAccount) {
|
|
7
8
|
const maxInitFee = new anchor_1.BN(stateAccount.maxInitializeUserFee)
|
|
8
9
|
.mul(numericConstants_1.LAMPORTS_PRECISION)
|
|
@@ -29,3 +30,7 @@ function getMaxNumberOfSubAccounts(stateAccount) {
|
|
|
29
30
|
return new anchor_1.BN(stateAccount.maxNumberOfSubAccounts).muln(100);
|
|
30
31
|
}
|
|
31
32
|
exports.getMaxNumberOfSubAccounts = getMaxNumberOfSubAccounts;
|
|
33
|
+
function useMedianTriggerPrice(stateAccount) {
|
|
34
|
+
return ((stateAccount.featureBitFlags & types_1.FeatureBitFlags.MEDIAN_TRIGGER_PRICE) > 0);
|
|
35
|
+
}
|
|
36
|
+
exports.useMedianTriggerPrice = useMedianTriggerPrice;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/// <reference types="bn.js" />
|
|
2
2
|
import { Connection, PublicKey } from '@solana/web3.js';
|
|
3
|
-
import { BulkAccountLoader } from '../accounts/bulkAccountLoader
|
|
3
|
+
import { BulkAccountLoader } from '../accounts/bulkAccountLoader';
|
|
4
4
|
import { BN } from '@coral-xyz/anchor';
|
|
5
5
|
import { L2Level, L2OrderBookGenerator } from '../dlob/orderBookLevels';
|
|
6
6
|
import { Market, OpenBookV2Client } from '@openbook-dex/openbook-v2';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openbookV2Subscriber.d.ts","sourceRoot":"","sources":["../../../src/openbook/openbookV2Subscriber.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAW,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"openbookV2Subscriber.d.ts","sourceRoot":"","sources":["../../../src/openbook/openbookV2Subscriber.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAW,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAElE,OAAO,EAAkB,EAAE,EAAwB,MAAM,mBAAmB,CAAC;AAC7E,OAAO,EAAE,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AACxE,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAGrE,MAAM,MAAM,0BAA0B,GAAG;IACxC,UAAU,EAAE,UAAU,CAAC;IACvB,SAAS,EAAE,SAAS,CAAC;IACrB,aAAa,EAAE,SAAS,CAAC;IACzB,mBAAmB,EAChB;QAEA,IAAI,EAAE,SAAS,CAAC;QAChB,aAAa,EAAE,iBAAiB,CAAC;KAChC,GACD;QACA,IAAI,EAAE,WAAW,CAAC;KACjB,CAAC;CACL,CAAC;AAEF,qBAAa,oBAAqB,YAAW,oBAAoB;IAChE,UAAU,EAAE,UAAU,CAAC;IACvB,SAAS,EAAE,SAAS,CAAC;IACrB,aAAa,EAAE,SAAS,CAAC;IACzB,gBAAgB,EAAE,SAAS,GAAG,WAAW,CAAC;IAC1C,aAAa,EAAE,iBAAiB,GAAG,SAAS,CAAC;IAC7C,UAAU,EAAE,OAAO,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,gBAAgB,EAAE,MAAM,GAAG,MAAM,CAAC;IAClC,MAAM,EAAE,gBAAgB,CAAC;gBAEN,MAAM,EAAE,0BAA0B;IAaxC,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAkDhC,UAAU,IAAI,EAAE,GAAG,SAAS;IAU5B,UAAU,IAAI,EAAE,GAAG,SAAS;IAU5B,SAAS,IAAI,SAAS,CAAC,OAAO,CAAC;IAI/B,SAAS,IAAI,SAAS,CAAC,OAAO,CAAC;IAI/B,sCAAsC,CAAC,UAAU,EAAE,EAAE,GAAG,EAAE;IAI1D,kCAAkC,CAAC,WAAW,EAAE,EAAE,GAAG,EAAE;IAY7D,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC;IAe1C,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;CAkBzC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/oracles/types.ts"],"names":[],"mappings":";;;AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,mBAAmB,CAAC;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAExC,MAAM,MAAM,iBAAiB,GAAG;IAC/B,aAAa,EAAE,EAAE,CAAC;IAClB,YAAY,EAAE,EAAE,CAAC;IACjB,eAAe,EAAE,eAAe,CAAC;CACjC,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC7B,KAAK,EAAE,EAAE,CAAC;IACV,IAAI,EAAE,EAAE,CAAC;IACT,UAAU,EAAE,EAAE,CAAC;IACf,+BAA+B,EAAE,OAAO,CAAC;IACzC,IAAI,CAAC,EAAE,EAAE,CAAC;IACV,cAAc,CAAC,EAAE,EAAE,CAAC;IACpB,QAAQ,CAAC,EAAE,EAAE,CAAC;IACd,mBAAmB,CAAC,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/oracles/types.ts"],"names":[],"mappings":";;;AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,mBAAmB,CAAC;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAExC,MAAM,MAAM,iBAAiB,GAAG;IAC/B,aAAa,EAAE,EAAE,CAAC;IAClB,YAAY,EAAE,EAAE,CAAC;IACjB,eAAe,EAAE,eAAe,CAAC;CACjC,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC7B,KAAK,EAAE,EAAE,CAAC;IACV,IAAI,EAAE,EAAE,CAAC;IACT,UAAU,EAAE,EAAE,CAAC;IACf,+BAA+B,EAAE,OAAO,CAAC;IACzC,IAAI,CAAC,EAAE,EAAE,CAAC;IACV,cAAc,CAAC,EAAE,EAAE,CAAC;IACpB,QAAQ,CAAC,EAAE,EAAE,CAAC;IACd,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG;IACxB,SAAS,EAAE,SAAS,CAAC;IACrB,MAAM,EAAE,YAAY,CAAC;CACrB,CAAC;AAEF,MAAM,WAAW,YAAY;IAC5B,4BAA4B,CAAC,MAAM,EAAE,MAAM,GAAG,eAAe,CAAC;IAC9D,kBAAkB,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;CACnE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/oracles/utils.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,mBAAmB,CAAC;AACvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/oracles/utils.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,mBAAmB,CAAC;AACvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAE5C,wBAAgB,mCAAmC,CAClD,YAAY,EAAE,iBAAiB,GAC7B,EAAE,CAKJ"}
|
|
@@ -1,12 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.getOracleConfidenceFromMMOracleData = void 0;
|
|
4
|
-
const numericConstants_1 = require("../constants/numericConstants");
|
|
5
4
|
function getOracleConfidenceFromMMOracleData(mmOracleData) {
|
|
6
5
|
const mmOracleDiffPremium = mmOracleData.mmOraclePrice
|
|
7
6
|
.sub(mmOracleData.oraclePriceData.price)
|
|
8
|
-
.abs()
|
|
9
|
-
.div(numericConstants_1.FIVE);
|
|
7
|
+
.abs();
|
|
10
8
|
return mmOracleData.oraclePriceData.confidence.add(mmOracleDiffPremium);
|
|
11
9
|
}
|
|
12
10
|
exports.getOracleConfidenceFromMMOracleData = getOracleConfidenceFromMMOracleData;
|
|
@@ -11,7 +11,7 @@ import { PollingSubscription } from './PollingSubscription';
|
|
|
11
11
|
import { WebsocketSubscription } from './WebsocketSubscription';
|
|
12
12
|
import StrictEventEmitter from 'strict-event-emitter-types';
|
|
13
13
|
import { EventEmitter } from 'events';
|
|
14
|
-
import { ProtectMakerParamsMap } from '../
|
|
14
|
+
import { ProtectMakerParamsMap } from '../dlob/types';
|
|
15
15
|
import { grpcSubscription } from './grpcSubscription';
|
|
16
16
|
export declare class OrderSubscriber {
|
|
17
17
|
driftClient: DriftClient;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OrderSubscriber.d.ts","sourceRoot":"","sources":["../../../src/orderSubscriber/OrderSubscriber.ts"],"names":[],"mappings":";;;AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAMvC,OAAO,EAAE,UAAU,EAAE,SAAS,EAAyB,MAAM,iBAAiB,CAAC;AAC/E,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AACpC,OAAO,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AACvE,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,kBAAkB,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"OrderSubscriber.d.ts","sourceRoot":"","sources":["../../../src/orderSubscriber/OrderSubscriber.ts"],"names":[],"mappings":";;;AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAMvC,OAAO,EAAE,UAAU,EAAE,SAAS,EAAyB,MAAM,iBAAiB,CAAC;AAC/E,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AACpC,OAAO,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AACvE,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,kBAAkB,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAGtC,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAEtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAGtD,qBAAa,eAAe;IAC3B,WAAW,EAAE,WAAW,CAAC;IACzB,aAAa;cAA2B,MAAM;qBAAe,WAAW;OAAM;IAC9E,YAAY,EAAE,mBAAmB,GAAG,qBAAqB,GAAG,gBAAgB,CAAC;IAC7E,UAAU,EAAE,UAAU,CAAC;IACvB,YAAY,EAAE,kBAAkB,CAAC,YAAY,EAAE,qBAAqB,CAAC,CAAC;IAEtE,YAAY,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7B,oBAAoB,EAAE,MAAM,IAAI,CAAC;IAEjC,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,WAAW,CAAC;IACtD,UAAU,CAAC,EAAE,OAAO,CAAC;IAErB,oBAAoB,CAAC,EAAE,OAAO,CAAC;gBAEnB,MAAM,EAAE,qBAAqB;IA6C5B,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAIjC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IA6D5B,oBAAoB,CACnB,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,KAAK,GAAG,SAAS,GAAG,QAAQ,EACtC,IAAI,EAAE,MAAM,EAAE,GAAG,WAAW,GAAG,MAAM,EACrC,IAAI,EAAE,MAAM,GACV,IAAI;IAgFP;;;;OAIG;IACH,SAAS,CAAC,UAAU,CAAC,uBAAuB,CAAC,EAAE,qBAAqB,GAAG,IAAI;IAI9D,OAAO,CACnB,IAAI,EAAE,MAAM,EACZ,uBAAuB,CAAC,EAAE,qBAAqB,GAC7C,OAAO,CAAC,IAAI,CAAC;IAuBT,OAAO,IAAI,MAAM;IAIX,SAAS,CAAC,oBAAoB,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAgBzD,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAOrD,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;CAIzC"}
|
|
@@ -9,6 +9,7 @@ const PollingSubscription_1 = require("./PollingSubscription");
|
|
|
9
9
|
const WebsocketSubscription_1 = require("./WebsocketSubscription");
|
|
10
10
|
const events_1 = require("events");
|
|
11
11
|
const index_1 = require("../index");
|
|
12
|
+
const anchor_1 = require("@coral-xyz/anchor");
|
|
12
13
|
const user_1 = require("../decode/user");
|
|
13
14
|
const grpcSubscription_1 = require("./grpcSubscription");
|
|
14
15
|
const userStatus_1 = require("../math/userStatus");
|
|
@@ -115,7 +116,7 @@ class OrderSubscriber {
|
|
|
115
116
|
if (dataType === 'raw') {
|
|
116
117
|
// @ts-ignore
|
|
117
118
|
const buffer = buffer_1.Buffer.from(data[0], data[1]);
|
|
118
|
-
const newLastActiveSlot = new
|
|
119
|
+
const newLastActiveSlot = new anchor_1.BN(buffer.subarray(4328, 4328 + 8), undefined, 'le');
|
|
119
120
|
if (slotAndUserAccount &&
|
|
120
121
|
slotAndUserAccount.userAccount.lastActiveSlot.gt(newLastActiveSlot)) {
|
|
121
122
|
return;
|
|
@@ -124,7 +125,7 @@ class OrderSubscriber {
|
|
|
124
125
|
}
|
|
125
126
|
else if (dataType === 'buffer') {
|
|
126
127
|
const buffer = data;
|
|
127
|
-
const newLastActiveSlot = new
|
|
128
|
+
const newLastActiveSlot = new anchor_1.BN(buffer.subarray(4328, 4328 + 8), undefined, 'le');
|
|
128
129
|
if (slotAndUserAccount &&
|
|
129
130
|
slotAndUserAccount.userAccount.lastActiveSlot.gt(newLastActiveSlot)) {
|
|
130
131
|
return;
|
|
@@ -155,11 +156,17 @@ class OrderSubscriber {
|
|
|
155
156
|
return new DLOB_1.DLOB(protectedMakerParamsMap);
|
|
156
157
|
}
|
|
157
158
|
async getDLOB(slot, protectedMakerParamsMap) {
|
|
159
|
+
var _a;
|
|
158
160
|
const dlob = this.createDLOB(protectedMakerParamsMap);
|
|
159
161
|
for (const [key, { userAccount }] of this.usersAccounts.entries()) {
|
|
160
162
|
const protectedMaker = (0, userStatus_1.isUserProtectedMaker)(userAccount);
|
|
161
163
|
for (const order of userAccount.orders) {
|
|
162
|
-
|
|
164
|
+
let baseAssetAmount = order.baseAssetAmount;
|
|
165
|
+
if (order.reduceOnly) {
|
|
166
|
+
const existingBaseAmount = ((_a = userAccount.perpPositions.find((pos) => pos.marketIndex === order.marketIndex && pos.openOrders > 0)) === null || _a === void 0 ? void 0 : _a.baseAssetAmount) || index_1.ZERO;
|
|
167
|
+
baseAssetAmount = (0, index_1.calculateOrderBaseAssetAmount)(order, existingBaseAmount);
|
|
168
|
+
}
|
|
169
|
+
dlob.insertOrder(order, key, slot, protectedMaker, baseAssetAmount);
|
|
163
170
|
}
|
|
164
171
|
}
|
|
165
172
|
return dlob;
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.WebsocketSubscription = void 0;
|
|
4
4
|
const memcmp_1 = require("../memcmp");
|
|
5
|
-
const webSocketProgramAccountSubscriber_1 = require("../accounts/
|
|
5
|
+
const webSocketProgramAccountSubscriber_1 = require("../accounts/webSocketProgramAccountSubscriber");
|
|
6
6
|
class WebsocketSubscription {
|
|
7
7
|
constructor({ orderSubscriber, commitment, skipInitialLoad = false, resubOpts, resyncIntervalMs, decoded = true, }) {
|
|
8
8
|
this.orderSubscriber = orderSubscriber;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.grpcSubscription = void 0;
|
|
4
|
-
const grpcProgramAccountSubscriber_1 = require("../accounts/
|
|
4
|
+
const grpcProgramAccountSubscriber_1 = require("../accounts/grpcProgramAccountSubscriber");
|
|
5
5
|
const memcmp_1 = require("../memcmp");
|
|
6
6
|
class grpcSubscription {
|
|
7
7
|
constructor({ grpcConfigs, orderSubscriber, skipInitialLoad = false, resubOpts, resyncIntervalMs, decoded = true, }) {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/// <reference types="bn.js" />
|
|
2
2
|
import { Connection, PublicKey } from '@solana/web3.js';
|
|
3
|
-
import { BulkAccountLoader } from '../accounts/bulkAccountLoader
|
|
3
|
+
import { BulkAccountLoader } from '../accounts/bulkAccountLoader';
|
|
4
4
|
import { Client, Market } from '@ellipsis-labs/phoenix-sdk';
|
|
5
5
|
import { BN } from '@coral-xyz/anchor';
|
|
6
6
|
import { L2Level, L2OrderBookGenerator } from '../dlob/orderBookLevels';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"phoenixSubscriber.d.ts","sourceRoot":"","sources":["../../../src/phoenix/phoenixSubscriber.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAuB,MAAM,iBAAiB,CAAC;AAC7E,OAAO,EAAE,iBAAiB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"phoenixSubscriber.d.ts","sourceRoot":"","sources":["../../../src/phoenix/phoenixSubscriber.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAuB,MAAM,iBAAiB,CAAC;AAC7E,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EACN,MAAM,EAGN,MAAM,EAEN,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EAAE,EAAE,EAAE,MAAM,mBAAmB,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAGxE,MAAM,MAAM,6BAA6B,GAAG;IAC3C,UAAU,EAAE,UAAU,CAAC;IACvB,SAAS,EAAE,SAAS,CAAC;IACrB,aAAa,EAAE,SAAS,CAAC;IACzB,mBAAmB,EAChB;QAEA,IAAI,EAAE,SAAS,CAAC;QAChB,aAAa,EAAE,iBAAiB,CAAC;KAChC,GACD;QACA,IAAI,EAAE,WAAW,CAAC;KACjB,CAAC;IACL,UAAU,CAAC,EAAE,OAAO,CAAC;CACrB,CAAC;AAEF,qBAAa,iBAAkB,YAAW,oBAAoB;IAC7D,UAAU,EAAE,UAAU,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,SAAS,CAAC;IACrB,aAAa,EAAE,SAAS,CAAC;IACzB,gBAAgB,EAAE,SAAS,GAAG,WAAW,CAAC;IAC1C,aAAa,EAAE,iBAAiB,GAAG,SAAS,CAAC;IAC7C,MAAM,EAAE,MAAM,CAAC;IACf,gBAAgB,EAAE,MAAM,GAAG,MAAM,CAAC;IAClC,eAAe,EAAE,MAAM,GAAG,MAAM,CAAC;IAEjC,UAAU,EAAE,OAAO,CAAC;IACpB,UAAU,EAAE,OAAO,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,iBAAiB,EAAE,MAAM,CAAC;gBAEP,MAAM,EAAE,6BAA6B;IAe3C,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IA8EhC,UAAU,IAAI,EAAE,GAAG,SAAS;IAc5B,UAAU,IAAI,EAAE,GAAG,SAAS;IAe5B,mCAAmC,CAAC,YAAY,EAAE,EAAE,GAAG,EAAE;IAazD,sCAAsC,CAAC,cAAc,EAAE,EAAE,GAAG,EAAE;IAI9D,SAAS,IAAI,SAAS,CAAC,OAAO,CAAC;IAI/B,SAAS,IAAI,SAAS,CAAC,OAAO,CAAC;IAIrC,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC;IA2B1C,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;CA0BzC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/// <reference types="bn.js" />
|
|
2
2
|
import { Connection, PublicKey } from '@solana/web3.js';
|
|
3
|
-
import { BulkAccountLoader } from '../accounts/bulkAccountLoader
|
|
3
|
+
import { BulkAccountLoader } from '../accounts/bulkAccountLoader';
|
|
4
4
|
import { Market, Orderbook } from '@project-serum/serum';
|
|
5
5
|
import { SerumMarketSubscriberConfig } from './types';
|
|
6
6
|
import { BN } from '@coral-xyz/anchor';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"serumSubscriber.d.ts","sourceRoot":"","sources":["../../../src/serum/serumSubscriber.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"serumSubscriber.d.ts","sourceRoot":"","sources":["../../../src/serum/serumSubscriber.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,2BAA2B,EAAE,MAAM,SAAS,CAAC;AACtD,OAAO,EAAE,EAAE,EAAE,MAAM,mBAAmB,CAAC;AAEvC,OAAO,EAAE,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAExE,qBAAa,eAAgB,YAAW,oBAAoB;IAC3D,UAAU,EAAE,UAAU,CAAC;IACvB,SAAS,EAAE,SAAS,CAAC;IACrB,aAAa,EAAE,SAAS,CAAC;IACzB,gBAAgB,EAAE,SAAS,GAAG,WAAW,CAAC;IAC1C,aAAa,EAAE,iBAAiB,GAAG,SAAS,CAAC;IAC7C,MAAM,EAAE,MAAM,CAAC;IAEf,UAAU,EAAE,OAAO,CAAC;IAEpB,WAAW,EAAE,SAAS,CAAC;IACvB,IAAI,EAAE,SAAS,CAAC;IAChB,cAAc,EAAE,MAAM,GAAG,MAAM,CAAC;IAChC,YAAY,EAAE,MAAM,CAAC;IAErB,WAAW,EAAE,SAAS,CAAC;IACvB,IAAI,EAAE,SAAS,CAAC;IAChB,cAAc,EAAE,MAAM,GAAG,MAAM,CAAC;IAChC,YAAY,EAAE,MAAM,CAAC;gBAEF,MAAM,EAAE,2BAA2B;IAYzC,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAyDhC,UAAU,IAAI,EAAE,GAAG,SAAS;IAS5B,UAAU,IAAI,EAAE,GAAG,SAAS;IAS5B,SAAS,IAAI,SAAS,CAAC,OAAO,CAAC;IAI/B,SAAS,IAAI,SAAS,CAAC,OAAO,CAAC;IAIrC,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC;IAmB1C,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;CA0BzC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Connection, PublicKey } from '@solana/web3.js';
|
|
2
|
-
import { BulkAccountLoader } from '../accounts/bulkAccountLoader
|
|
2
|
+
import { BulkAccountLoader } from '../accounts/bulkAccountLoader';
|
|
3
3
|
export type SerumMarketSubscriberConfig = {
|
|
4
4
|
connection: Connection;
|
|
5
5
|
programId: PublicKey;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/serum/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/serum/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAElE,MAAM,MAAM,2BAA2B,GAAG;IACzC,UAAU,EAAE,UAAU,CAAC;IACvB,SAAS,EAAE,SAAS,CAAC;IACrB,aAAa,EAAE,SAAS,CAAC;IACzB,mBAAmB,EAChB;QAEA,IAAI,EAAE,SAAS,CAAC;QAChB,aAAa,EAAE,iBAAiB,CAAC;KAChC,GACD;QACA,IAAI,EAAE,WAAW,CAAC;KACjB,CAAC;CACL,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
2
|
/// <reference types="node" />
|
|
3
3
|
import { Commitment } from '@solana/web3.js';
|
|
4
|
-
import { grpcProgramAccountSubscriber } from '../accounts/
|
|
4
|
+
import { grpcProgramAccountSubscriber } from '../accounts/grpcProgramAccountSubscriber';
|
|
5
5
|
import { GrpcConfigs, ResubOpts } from '../accounts/types';
|
|
6
6
|
import { SignedMsgUserOrdersAccount } from '../types';
|
|
7
7
|
import { SignedMsgUserOrdersAccountSubscriber } from './signedMsgUserAccountSubscriber';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"grpcSignedMsgUserAccountSubscriber.d.ts","sourceRoot":"","sources":["../../../src/swift/grpcSignedMsgUserAccountSubscriber.ts"],"names":[],"mappings":";;AAAA,OAAO,EAAE,UAAU,EAAsB,MAAM,iBAAiB,CAAC;AACjE,OAAO,EAAE,4BAA4B,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"grpcSignedMsgUserAccountSubscriber.d.ts","sourceRoot":"","sources":["../../../src/swift/grpcSignedMsgUserAccountSubscriber.ts"],"names":[],"mappings":";;AAAA,OAAO,EAAE,UAAU,EAAsB,MAAM,iBAAiB,CAAC;AACjE,OAAO,EAAE,4BAA4B,EAAE,MAAM,0CAA0C,CAAC;AACxF,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAAE,0BAA0B,EAAE,MAAM,UAAU,CAAC;AAEtD,OAAO,EAAE,oCAAoC,EAAE,MAAM,kCAAkC,CAAC;AACxF,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,qBAAa,wCAAyC,SAAQ,oCAAoC;IACjG,OAAO,CAAC,WAAW,CAAc;IACxB,UAAU,EAAE,4BAA4B,CAAC,0BAA0B,CAAC,CAAC;gBAElE,EACX,WAAW,EACX,WAAW,EACX,UAAU,EACV,SAAS,EACT,QAAQ,EACR,gBAAgB,GAChB,EAAE;QACF,WAAW,EAAE,WAAW,CAAC;QACzB,WAAW,EAAE,WAAW,CAAC;QACzB,UAAU,CAAC,EAAE,UAAU,CAAC;QACxB,SAAS,CAAC,EAAE,SAAS,CAAC;QACtB,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,0BAA0B,CAAC;QACtE,gBAAgB,CAAC,EAAE,MAAM,CAAC;KAC1B;IAWY,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAgD1B,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;CASzC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.grpcSignedMsgUserOrdersAccountSubscriber = void 0;
|
|
4
|
-
const grpcProgramAccountSubscriber_1 = require("../accounts/
|
|
4
|
+
const grpcProgramAccountSubscriber_1 = require("../accounts/grpcProgramAccountSubscriber");
|
|
5
5
|
const memcmp_1 = require("../memcmp");
|
|
6
6
|
const signedMsgUserAccountSubscriber_1 = require("./signedMsgUserAccountSubscriber");
|
|
7
7
|
class grpcSignedMsgUserOrdersAccountSubscriber extends signedMsgUserAccountSubscriber_1.SignedMsgUserOrdersAccountSubscriber {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
2
|
/// <reference types="node" />
|
|
3
3
|
/// <reference types="node" />
|
|
4
|
-
import { WebSocketProgramAccountSubscriber } from '../accounts/
|
|
4
|
+
import { WebSocketProgramAccountSubscriber } from '../accounts/webSocketProgramAccountSubscriber';
|
|
5
5
|
import { SignedMsgOrderId, SignedMsgUserOrdersAccount } from '../types';
|
|
6
6
|
import { Commitment, PublicKey } from '@solana/web3.js';
|
|
7
7
|
import { ResubOpts } from '../accounts/types';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"signedMsgUserAccountSubscriber.d.ts","sourceRoot":"","sources":["../../../src/swift/signedMsgUserAccountSubscriber.ts"],"names":[],"mappings":";;;AACA,OAAO,EAAE,iCAAiC,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"signedMsgUserAccountSubscriber.d.ts","sourceRoot":"","sources":["../../../src/swift/signedMsgUserAccountSubscriber.ts"],"names":[],"mappings":";;;AACA,OAAO,EAAE,iCAAiC,EAAE,MAAM,+CAA+C,CAAC;AAClG,OAAO,EAAE,gBAAgB,EAAE,0BAA0B,EAAE,MAAM,UAAU,CAAC;AACxE,OAAO,EAAE,UAAU,EAAW,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACjE,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,kBAAkB,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAEtC,MAAM,WAAW,0CAA0C;IAC1D,eAAe,EAAE,CAChB,uBAAuB,EAAE,gBAAgB,EAAE,EAC3C,eAAe,EAAE,SAAS,EAC1B,IAAI,EAAE,MAAM,KACR,IAAI,CAAC;IAEV,oBAAoB,EAAE,CACrB,oBAAoB,EAAE,gBAAgB,EAAE,EACxC,eAAe,EAAE,SAAS,EAC1B,IAAI,EAAE,MAAM,KACR,IAAI,CAAC;CACV;AAED,qBAAa,oCAAoC;IAChD,SAAS,CAAC,WAAW,EAAE,WAAW,CAAC;IACnC,SAAS,CAAC,UAAU,EAAE,UAAU,CAAC;IACjC,SAAS,CAAC,SAAS,CAAC,EAAE,SAAS,CAAC;IAChC,SAAS,CAAC,eAAe,CAAC,EAAE,UAAU,CAAC,OAAO,UAAU,CAAC,CAAC;IAC1D,SAAS,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IACpC,SAAS,CAAC,QAAQ,EAAE,CACnB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,KACR,0BAA0B,CAAC;IACzB,0BAA0B;cAExB,MAAM;oCAA8B,0BAA0B;OACnE;IACJ,cAAc,EAAE,MAAM,CAAC;IAEvB,YAAY,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7B,oBAAoB,EAAE,MAAM,IAAI,CAAC;IAEjC,SAAS,CAAC,UAAU,EAAE,iCAAiC,CAAC,0BAA0B,CAAC,CAAC;IAC7E,YAAY,EAAE,kBAAkB,CACtC,YAAY,EACZ,0CAA0C,CAC1C,CAAC;gBAEU,EACX,WAAW,EACX,UAAU,EACV,SAAS,EACT,QAAQ,EACR,gBAAgB,GAChB,EAAE;QACF,WAAW,EAAE,WAAW,CAAC;QACzB,UAAU,CAAC,EAAE,UAAU,CAAC;QACxB,SAAS,CAAC,EAAE,SAAS,CAAC;QACtB,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,0BAA0B,CAAC;QACtE,gBAAgB,CAAC,EAAE,MAAM,CAAC;KAC1B;IAcY,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAmDjC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IA0C5B,mCAAmC,CAClC,IAAI,EAAE,MAAM,GAAG,0BAA0B,EACzC,QAAQ,EAAE,QAAQ,GAAG,SAAS,EAC9B,IAAI,EAAE,MAAM,EACZ,iBAAiB,UAAQ,GACvB,IAAI;IAwDM,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;CASzC"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.SignedMsgUserOrdersAccountSubscriber = void 0;
|
|
4
4
|
const memcmp_1 = require("../memcmp");
|
|
5
|
-
const webSocketProgramAccountSubscriber_1 = require("../accounts/
|
|
5
|
+
const webSocketProgramAccountSubscriber_1 = require("../accounts/webSocketProgramAccountSubscriber");
|
|
6
6
|
const events_1 = require("events");
|
|
7
7
|
class SignedMsgUserOrdersAccountSubscriber {
|
|
8
8
|
constructor({ driftClient, commitment, resubOpts, decodeFn, resyncIntervalMs, }) {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { DriftClient } from '../driftClient';
|
|
2
|
-
import { DriftEnv } from '../config
|
|
2
|
+
import { DriftEnv } from '../config';
|
|
3
3
|
import { OptionalOrderParams, SignedMsgOrderParamsDelegateMessage, SignedMsgOrderParamsMessage, UserAccount } from '../types';
|
|
4
4
|
import { Keypair, TransactionInstruction } from '@solana/web3.js';
|
|
5
5
|
export interface AccountGetter {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"swiftOrderSubscriber.d.ts","sourceRoot":"","sources":["../../../src/swift/swiftOrderSubscriber.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"swiftOrderSubscriber.d.ts","sourceRoot":"","sources":["../../../src/swift/swiftOrderSubscriber.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAKrC,OAAO,EAEN,mBAAmB,EAEnB,mCAAmC,EACnC,2BAA2B,EAC3B,WAAW,EACX,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,OAAO,EAAa,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAO7E,MAAM,WAAW,aAAa;IAC7B,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;CAC5D;AAED,MAAM,MAAM,0BAA0B,GAAG;IACxC,WAAW,EAAE,WAAW,CAAC;IACzB,iBAAiB,CAAC,EAAE,aAAa,CAAC;IAClC,QAAQ,EAAE,QAAQ,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB;;;;MAIE;IACF,OAAO,EAAE,OAAO,CAAC;CACjB,CAAC;AAEF,qBAAa,oBAAoB;IAgBpB,OAAO,CAAC,MAAM;IAf1B,OAAO,CAAC,gBAAgB,CAA8C;IACtE,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAS;IAC7C,OAAO,CAAC,EAAE,CAA0B;IACpC,OAAO,CAAC,WAAW,CAAc;IAC1B,iBAAiB,CAAC,EAAE,aAAa,CAAC;IAClC,OAAO,EAAE,CACf,eAAe,EAAE,GAAG,EACpB,aAAa,EACV,2BAA2B,GAC3B,mCAAmC,EACtC,gBAAgB,CAAC,EAAE,OAAO,KACtB,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnB,UAAU,UAAS;gBAEC,MAAM,EAAE,0BAA0B;IAKtD,WAAW;IASX,uBAAuB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM;IAQpD,yBAAyB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAUhD,iBAAiB,CAAC,OAAO,EAAE,GAAG,GAAG,IAAI;IA6B/B,SAAS,CACd,OAAO,EAAE,CACR,eAAe,EAAE,GAAG,EACpB,aAAa,EACV,2BAA2B,GAC3B,mCAAmC,EACtC,gBAAgB,CAAC,EAAE,OAAO,KACtB,OAAO,CAAC,IAAI,CAAC,EAClB,eAAe,UAAQ,GACrB,OAAO,CAAC,IAAI,CAAC;IAgGV,gCAAgC,CACrC,eAAe,EAAE,GAAG,EACpB,2BAA2B,EACxB,2BAA2B,GAC3B,mCAAmC,EACtC,gBAAgB,EAAE,mBAAmB,GACnC,OAAO,CAAC,sBAAsB,EAAE,CAAC;IAiEpC,OAAO,CAAC,mBAAmB;IAa3B,OAAO,CAAC,SAAS;CAWjB"}
|
package/lib/node/types.d.ts
CHANGED
|
@@ -18,6 +18,10 @@ export declare enum ExchangeStatus {
|
|
|
18
18
|
AMM_IMMEDIATE_FILL_PAUSED = 128,
|
|
19
19
|
PAUSED = 255
|
|
20
20
|
}
|
|
21
|
+
export declare enum FeatureBitFlags {
|
|
22
|
+
MM_ORACLE_UPDATE = 1,
|
|
23
|
+
MEDIAN_TRIGGER_PRICE = 2
|
|
24
|
+
}
|
|
21
25
|
export declare class MarketStatus {
|
|
22
26
|
static readonly INITIALIZED: {
|
|
23
27
|
initialized: {};
|
|
@@ -860,6 +864,7 @@ export type StateAccount = {
|
|
|
860
864
|
initialPctToLiquidate: number;
|
|
861
865
|
liquidationDuration: number;
|
|
862
866
|
maxInitializeUserFee: number;
|
|
867
|
+
featureBitFlags: number;
|
|
863
868
|
};
|
|
864
869
|
export type PerpMarketAccount = {
|
|
865
870
|
status: MarketStatus;
|
|
@@ -903,6 +908,7 @@ export type PerpMarketAccount = {
|
|
|
903
908
|
highLeverageMarginRatioMaintenance: number;
|
|
904
909
|
protectedMakerLimitPriceDivisor: number;
|
|
905
910
|
protectedMakerDynamicDivisor: number;
|
|
911
|
+
lastFillPrice: BN;
|
|
906
912
|
};
|
|
907
913
|
export type HistoricalOracleData = {
|
|
908
914
|
lastOraclePrice: BN;
|
|
@@ -1081,6 +1087,7 @@ export type AMM = {
|
|
|
1081
1087
|
takerSpeedBumpOverride: number;
|
|
1082
1088
|
ammSpreadAdjustment: number;
|
|
1083
1089
|
ammInventorySpreadAdjustment: number;
|
|
1090
|
+
lastFundingOracleTwap: BN;
|
|
1084
1091
|
};
|
|
1085
1092
|
export type PerpPosition = {
|
|
1086
1093
|
baseAssetAmount: BN;
|