@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
|
@@ -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;
|
|
@@ -3,3 +3,4 @@ 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;
|
|
@@ -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,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;
|
|
@@ -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,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,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,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,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';
|
|
@@ -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 {
|
package/lib/browser/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;
|
package/lib/browser/types.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.SwapReduceOnly = exports.PlaceAndTakeOrderSuccessCondition = exports.FuelOverflowStatus = exports.ReferrerStatus = exports.DefaultOrderParams = exports.ModifyOrderPolicy = exports.OrderParamsBitFlag = exports.PostOnlyParams = exports.LiquidationType = exports.LPAction = exports.TradeSide = exports.getVariant = exports.isOneOfVariant = exports.isVariant = exports.SettlePnlMode = exports.StakeAction = exports.SpotFulfillmentConfigStatus = exports.SettlePnlExplanation = exports.DepositExplanation = exports.SpotFulfillmentStatus = exports.SpotFulfillmentType = exports.OrderTriggerCondition = exports.OrderActionExplanation = exports.OrderAction = exports.OrderBitFlag = exports.OrderStatus = exports.MarketType = exports.OrderType = exports.OracleSourceNum = exports.OracleSource = exports.DepositDirection = exports.PositionDirection = exports.SpotBalanceType = exports.SwapDirection = exports.TokenProgramFlag = exports.AssetTier = exports.ContractTier = exports.ContractType = exports.MarginMode = exports.UserStatus = exports.InsuranceFundOperation = exports.SpotOperation = exports.PerpOperation = exports.MarketStatus = exports.ExchangeStatus = void 0;
|
|
3
|
+
exports.SwapReduceOnly = exports.PlaceAndTakeOrderSuccessCondition = exports.FuelOverflowStatus = exports.ReferrerStatus = exports.DefaultOrderParams = exports.ModifyOrderPolicy = exports.OrderParamsBitFlag = exports.PostOnlyParams = exports.LiquidationType = exports.LPAction = exports.TradeSide = exports.getVariant = exports.isOneOfVariant = exports.isVariant = exports.SettlePnlMode = exports.StakeAction = exports.SpotFulfillmentConfigStatus = exports.SettlePnlExplanation = exports.DepositExplanation = exports.SpotFulfillmentStatus = exports.SpotFulfillmentType = exports.OrderTriggerCondition = exports.OrderActionExplanation = exports.OrderAction = exports.OrderBitFlag = exports.OrderStatus = exports.MarketType = exports.OrderType = exports.OracleSourceNum = exports.OracleSource = exports.DepositDirection = exports.PositionDirection = exports.SpotBalanceType = exports.SwapDirection = exports.TokenProgramFlag = exports.AssetTier = exports.ContractTier = exports.ContractType = exports.MarginMode = exports.UserStatus = exports.InsuranceFundOperation = exports.SpotOperation = exports.PerpOperation = exports.MarketStatus = exports.FeatureBitFlags = exports.ExchangeStatus = void 0;
|
|
4
4
|
const numericConstants_1 = require("./constants/numericConstants");
|
|
5
5
|
// # Utility Types / Enums / Constants
|
|
6
6
|
var ExchangeStatus;
|
|
@@ -16,6 +16,11 @@ var ExchangeStatus;
|
|
|
16
16
|
ExchangeStatus[ExchangeStatus["AMM_IMMEDIATE_FILL_PAUSED"] = 128] = "AMM_IMMEDIATE_FILL_PAUSED";
|
|
17
17
|
ExchangeStatus[ExchangeStatus["PAUSED"] = 255] = "PAUSED";
|
|
18
18
|
})(ExchangeStatus || (exports.ExchangeStatus = ExchangeStatus = {}));
|
|
19
|
+
var FeatureBitFlags;
|
|
20
|
+
(function (FeatureBitFlags) {
|
|
21
|
+
FeatureBitFlags[FeatureBitFlags["MM_ORACLE_UPDATE"] = 1] = "MM_ORACLE_UPDATE";
|
|
22
|
+
FeatureBitFlags[FeatureBitFlags["MEDIAN_TRIGGER_PRICE"] = 2] = "MEDIAN_TRIGGER_PRICE";
|
|
23
|
+
})(FeatureBitFlags || (exports.FeatureBitFlags = FeatureBitFlags = {}));
|
|
19
24
|
class MarketStatus {
|
|
20
25
|
}
|
|
21
26
|
exports.MarketStatus = MarketStatus;
|
package/lib/browser/user.js
CHANGED
|
@@ -18,14 +18,14 @@ const orders_1 = require("./math/orders");
|
|
|
18
18
|
const spotBalance_2 = require("./math/spotBalance");
|
|
19
19
|
const amm_1 = require("./math/amm");
|
|
20
20
|
const margin_2 = require("./math/margin");
|
|
21
|
-
const pollingUserAccountSubscriber_1 = require("./accounts/
|
|
22
|
-
const webSocketUserAccountSubscriber_1 = require("./accounts/
|
|
21
|
+
const pollingUserAccountSubscriber_1 = require("./accounts/pollingUserAccountSubscriber");
|
|
22
|
+
const webSocketUserAccountSubscriber_1 = require("./accounts/webSocketUserAccountSubscriber");
|
|
23
23
|
const spotPosition_1 = require("./math/spotPosition");
|
|
24
24
|
const oracles_1 = require("./math/oracles");
|
|
25
25
|
const tiers_1 = require("./math/tiers");
|
|
26
26
|
const strictOraclePrice_1 = require("./oracles/strictOraclePrice");
|
|
27
27
|
const fuel_1 = require("./math/fuel");
|
|
28
|
-
const grpcUserAccountSubscriber_1 = require("./accounts/
|
|
28
|
+
const grpcUserAccountSubscriber_1 = require("./accounts/grpcUserAccountSubscriber");
|
|
29
29
|
class User {
|
|
30
30
|
get isSubscribed() {
|
|
31
31
|
return this._isSubscribed && this.accountSubscriber.isSubscribed;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { DriftClient } from './driftClient';
|
|
2
2
|
import { Commitment, PublicKey } from '@solana/web3.js';
|
|
3
|
-
import { BulkAccountLoader } from './accounts/bulkAccountLoader
|
|
3
|
+
import { BulkAccountLoader } from './accounts/bulkAccountLoader';
|
|
4
4
|
import { GrpcConfigs, UserAccountSubscriber } from './accounts/types';
|
|
5
5
|
export type UserConfig = {
|
|
6
6
|
accountSubscription?: UserSubscriptionConfig;
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { UserMap } from './userMap';
|
|
2
2
|
export declare class PollingSubscription {
|
|
3
3
|
private userMap;
|
|
4
4
|
private frequency;
|
|
5
5
|
private skipInitialLoad;
|
|
6
6
|
intervalId?: ReturnType<typeof setTimeout>;
|
|
7
7
|
constructor({ userMap, frequency, skipInitialLoad, }: {
|
|
8
|
-
userMap:
|
|
8
|
+
userMap: UserMap;
|
|
9
9
|
frequency: number;
|
|
10
10
|
skipInitialLoad?: boolean;
|
|
11
11
|
includeIdle?: boolean;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
2
|
/// <reference types="node" />
|
|
3
|
+
import { UserMap } from './userMap';
|
|
3
4
|
import { UserAccount } from '../types';
|
|
4
5
|
import { Commitment, MemcmpFilter } from '@solana/web3.js';
|
|
5
6
|
import { ResubOpts } from '../accounts/types';
|
|
6
|
-
import { UserMapInterface } from './types';
|
|
7
7
|
export declare class WebsocketSubscription {
|
|
8
8
|
private userMap;
|
|
9
9
|
private commitment;
|
|
@@ -14,7 +14,7 @@ export declare class WebsocketSubscription {
|
|
|
14
14
|
private decodeFn;
|
|
15
15
|
private subscriber;
|
|
16
16
|
constructor({ userMap, commitment, skipInitialLoad, resubOpts, includeIdle, decodeFn, additionalFilters, }: {
|
|
17
|
-
userMap:
|
|
17
|
+
userMap: UserMap;
|
|
18
18
|
commitment: Commitment;
|
|
19
19
|
skipInitialLoad?: boolean;
|
|
20
20
|
resubOpts?: ResubOpts;
|
|
@@ -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({ userMap, commitment, skipInitialLoad = false, resubOpts, includeIdle = false, decodeFn, additionalFilters = undefined, }) {
|
|
8
8
|
this.userMap = userMap;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
2
|
/// <reference types="node" />
|
|
3
|
+
import { UserMap } from './userMap';
|
|
3
4
|
import { UserAccount } from '../types';
|
|
4
5
|
import { MemcmpFilter } from '@solana/web3.js';
|
|
5
6
|
import { GrpcConfigs, ResubOpts } from '../accounts/types';
|
|
6
|
-
import { UserMapInterface } from './types';
|
|
7
7
|
export declare class grpcSubscription {
|
|
8
8
|
private grpcConfigs;
|
|
9
9
|
private userMap;
|
|
@@ -15,7 +15,7 @@ export declare class grpcSubscription {
|
|
|
15
15
|
private subscriber;
|
|
16
16
|
constructor({ grpcConfigs, userMap, skipInitialLoad, resubOpts, includeIdle, decodeFn, additionalFilters, }: {
|
|
17
17
|
grpcConfigs: GrpcConfigs;
|
|
18
|
-
userMap:
|
|
18
|
+
userMap: UserMap;
|
|
19
19
|
skipInitialLoad?: boolean;
|
|
20
20
|
resubOpts?: ResubOpts;
|
|
21
21
|
includeIdle?: boolean;
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.grpcSubscription = void 0;
|
|
4
4
|
const memcmp_1 = require("../memcmp");
|
|
5
|
-
const grpcProgramAccountSubscriber_1 = require("../accounts/
|
|
5
|
+
const grpcProgramAccountSubscriber_1 = require("../accounts/grpcProgramAccountSubscriber");
|
|
6
6
|
class grpcSubscription {
|
|
7
7
|
constructor({ grpcConfigs, userMap, skipInitialLoad = false, resubOpts, includeIdle = false, decodeFn, additionalFilters = undefined, }) {
|
|
8
8
|
this.userMap = userMap;
|
|
@@ -5,14 +5,29 @@ import { UserAccount, OrderRecord } from '../types';
|
|
|
5
5
|
import { WrappedEvent } from '../events/types';
|
|
6
6
|
import { DLOB } from '../dlob/DLOB';
|
|
7
7
|
import { UserSubscriptionConfig } from '../userConfig';
|
|
8
|
-
import { DataAndSlot } from '../accounts/types';
|
|
8
|
+
import { DataAndSlot, UserEvents } from '../accounts/types';
|
|
9
9
|
import { ProtectMakerParamsMap } from '../dlob/types';
|
|
10
10
|
import { PublicKey } from '@solana/web3.js';
|
|
11
11
|
import { UserAccountFilterCriteria as UserFilterCriteria, UserMapConfig } from './userMapConfig';
|
|
12
12
|
import StrictEventEmitter from 'strict-event-emitter-types';
|
|
13
13
|
import { EventEmitter } from 'events';
|
|
14
|
-
|
|
15
|
-
|
|
14
|
+
export interface UserMapInterface {
|
|
15
|
+
eventEmitter: StrictEventEmitter<EventEmitter, UserEvents>;
|
|
16
|
+
subscribe(): Promise<void>;
|
|
17
|
+
unsubscribe(): Promise<void>;
|
|
18
|
+
addPubkey(userAccountPublicKey: PublicKey, userAccount?: UserAccount, slot?: number, accountSubscription?: UserSubscriptionConfig): Promise<void>;
|
|
19
|
+
has(key: string): boolean;
|
|
20
|
+
get(key: string): User | undefined;
|
|
21
|
+
getWithSlot(key: string): DataAndSlot<User> | undefined;
|
|
22
|
+
mustGet(key: string, accountSubscription?: UserSubscriptionConfig): Promise<User>;
|
|
23
|
+
mustGetWithSlot(key: string, accountSubscription?: UserSubscriptionConfig): Promise<DataAndSlot<User>>;
|
|
24
|
+
getUserAuthority(key: string): PublicKey | undefined;
|
|
25
|
+
updateWithOrderRecord(record: OrderRecord): Promise<void>;
|
|
26
|
+
values(): IterableIterator<User>;
|
|
27
|
+
valuesWithSlot(): IterableIterator<DataAndSlot<User>>;
|
|
28
|
+
entries(): IterableIterator<[string, User]>;
|
|
29
|
+
entriesWithSlot(): IterableIterator<[string, DataAndSlot<User>]>;
|
|
30
|
+
}
|
|
16
31
|
export declare class UserMap implements UserMapInterface {
|
|
17
32
|
private userMap;
|
|
18
33
|
driftClient: DriftClient;
|
|
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.UserMap = void 0;
|
|
4
4
|
const user_1 = require("../user");
|
|
5
5
|
const DLOB_1 = require("../dlob/DLOB");
|
|
6
|
-
const oneShotUserAccountSubscriber_1 = require("../accounts/
|
|
6
|
+
const oneShotUserAccountSubscriber_1 = require("../accounts/oneShotUserAccountSubscriber");
|
|
7
7
|
const web3_js_1 = require("@solana/web3.js");
|
|
8
8
|
const buffer_1 = require("buffer");
|
|
9
9
|
const zstddec_1 = require("zstddec");
|
|
@@ -2,7 +2,7 @@ import { DriftClient } from '../driftClient';
|
|
|
2
2
|
import { OrderRecord, UserStatsAccount } from '../types';
|
|
3
3
|
import { UserStats } from '../userStats';
|
|
4
4
|
import { WrappedEvent } from '../events/types';
|
|
5
|
-
import { BulkAccountLoader } from '../accounts/bulkAccountLoader
|
|
5
|
+
import { BulkAccountLoader } from '../accounts/bulkAccountLoader';
|
|
6
6
|
import { SyncConfig } from './userMapConfig';
|
|
7
7
|
import { PublicKey } from '@solana/web3.js';
|
|
8
8
|
import { UserMap } from './userMap';
|
|
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.UserStatsMap = void 0;
|
|
4
4
|
const pda_1 = require("../addresses/pda");
|
|
5
5
|
const userStats_1 = require("../userStats");
|
|
6
|
-
const bulkAccountLoader_1 = require("../accounts/bulkAccountLoader
|
|
6
|
+
const bulkAccountLoader_1 = require("../accounts/bulkAccountLoader");
|
|
7
7
|
const memcmp_1 = require("../memcmp");
|
|
8
8
|
const web3_js_1 = require("@solana/web3.js");
|
|
9
9
|
class UserStatsMap {
|
package/lib/browser/userStats.js
CHANGED
|
@@ -2,10 +2,10 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.UserStats = void 0;
|
|
4
4
|
const web3_js_1 = require("@solana/web3.js");
|
|
5
|
-
const pollingUserStatsAccountSubscriber_1 = require("./accounts/
|
|
6
|
-
const webSocketUserStatsAccountSubsriber_1 = require("./accounts/
|
|
5
|
+
const pollingUserStatsAccountSubscriber_1 = require("./accounts/pollingUserStatsAccountSubscriber");
|
|
6
|
+
const webSocketUserStatsAccountSubsriber_1 = require("./accounts/webSocketUserStatsAccountSubsriber");
|
|
7
7
|
const pda_1 = require("./addresses/pda");
|
|
8
|
-
const grpcUserStatsAccountSubscriber_1 = require("./accounts/
|
|
8
|
+
const grpcUserStatsAccountSubscriber_1 = require("./accounts/grpcUserStatsAccountSubscriber");
|
|
9
9
|
const numericConstants_1 = require("./constants/numericConstants");
|
|
10
10
|
const numericConstants_2 = require("./constants/numericConstants");
|
|
11
11
|
const numericConstants_3 = require("./constants/numericConstants");
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { DriftClient } from './driftClient';
|
|
2
2
|
import { Commitment, PublicKey } from '@solana/web3.js';
|
|
3
|
-
import { BulkAccountLoader } from './accounts/bulkAccountLoader
|
|
3
|
+
import { BulkAccountLoader } from './accounts/bulkAccountLoader';
|
|
4
4
|
import { GrpcConfigs } from './accounts/types';
|
|
5
5
|
export type UserStatsConfig = {
|
|
6
6
|
accountSubscription?: UserStatsSubscriptionConfig;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
|
-
import { DataAndSlot, UserAccountEvents, UserAccountSubscriber } from '
|
|
2
|
+
import { DataAndSlot, UserAccountEvents, UserAccountSubscriber } from './types';
|
|
3
3
|
import { PublicKey } from '@solana/web3.js';
|
|
4
4
|
import StrictEventEmitter from 'strict-event-emitter-types';
|
|
5
5
|
import { EventEmitter } from 'events';
|
|
6
|
-
import { UserAccount } from '
|
|
6
|
+
import { UserAccount } from '../types';
|
|
7
7
|
/**
|
|
8
8
|
* Basic implementation of UserAccountSubscriber. It will only take in UserAccount
|
|
9
9
|
* data during initialization and will not fetch or subscribe to updates.
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"basicUserAccountSubscriber.d.ts","sourceRoot":"","sources":["../../../src/accounts/basicUserAccountSubscriber.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAChF,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,kBAAkB,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAEvC;;;GAGG;AACH,qBAAa,0BAA2B,YAAW,qBAAqB;IACvE,YAAY,EAAE,OAAO,CAAC;IACtB,YAAY,EAAE,kBAAkB,CAAC,YAAY,EAAE,iBAAiB,CAAC,CAAC;IAClE,oBAAoB,EAAE,SAAS,CAAC;IAEhC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB,IAAI,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC;gBAG9B,oBAAoB,EAAE,SAAS,EAC/B,IAAI,CAAC,EAAE,WAAW,EAClB,IAAI,CAAC,EAAE,MAAM;IAQR,SAAS,CAAC,YAAY,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC;IAIvD,kBAAkB,IAAI,OAAO,CAAC,IAAI,CAAC;IAEnC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAE5B,gBAAgB,IAAI,OAAO;IAIrB,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;IAElC,kBAAkB,IAAI,IAAI;IAEnB,qBAAqB,IAAI,WAAW,CAAC,WAAW,CAAC;IAIjD,UAAU,CAAC,WAAW,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;CAO/D"}
|
package/lib/node/accounts/{bulkAccountLoader/bulkAccountLoader.d.ts → bulkAccountLoader.d.ts}
RENAMED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
2
|
/// <reference types="node" />
|
|
3
3
|
import { Commitment, PublicKey } from '@solana/web3.js';
|
|
4
|
-
import { BufferAndSlot } from '
|
|
5
|
-
import { Connection } from '
|
|
4
|
+
import { BufferAndSlot } from './types';
|
|
5
|
+
import { Connection } from '../bankrun/bankrunConnection';
|
|
6
6
|
export type AccountToLoad = {
|
|
7
7
|
publicKey: PublicKey;
|
|
8
8
|
callbacks: Map<string, (buffer: Buffer, slot: number) => void>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bulkAccountLoader.d.ts","sourceRoot":"","sources":["../../../src/accounts/bulkAccountLoader.ts"],"names":[],"mappings":";;AAAA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAExD,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAExC,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAG1D,MAAM,MAAM,aAAa,GAAG;IAC3B,SAAS,EAAE,SAAS,CAAC;IACrB,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC,CAAC;CAC/D,CAAC;AAIF,qBAAa,iBAAiB;IAC7B,UAAU,EAAE,UAAU,CAAC;IACvB,UAAU,EAAE,UAAU,CAAC;IACvB,gBAAgB,EAAE,MAAM,CAAC;IACzB,cAAc,6BAAoC;IAClD,gBAAgB,6BAAoC;IACpD,cAAc,0BAA0B,IAAI,EAAI;IAChD,UAAU,CAAC,EAAE,UAAU,CAAC,OAAO,UAAU,CAAC,CAAC;IAE3C,WAAW,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5B,mBAAmB,EAAE,MAAM,IAAI,CAAC;IAChC,6BAA6B,SAAc;IAC3C,cAAc,SAAK;gBAGlB,UAAU,EAAE,UAAU,EACtB,UAAU,EAAE,UAAU,EACtB,gBAAgB,EAAE,MAAM;IAOZ,UAAU,CACtB,SAAS,EAAE,SAAS,EACpB,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,GAC9C,OAAO,CAAC,MAAM,CAAC;IAkCX,aAAa,CAAC,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI;IAe7D,iBAAiB,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,GAAG,MAAM;IAM3D,oBAAoB,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI;IAIrD,MAAM,CAAC,CAAC,EAAE,KAAK,EAAE,SAAS,CAAC,EAAE,EAAE,IAAI,EAAE,MAAM,GAAG,CAAC,EAAE,EAAE;IAOtC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAyC5B,SAAS,CAAC,oBAAoB,EAAE,aAAa,EAAE,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAsFvE,sBAAsB,CACrB,aAAa,EAAE,aAAa,EAC5B,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,GACV,IAAI;IAgBA,gBAAgB,CAAC,SAAS,EAAE,SAAS,GAAG,aAAa,GAAG,SAAS;IAIjE,OAAO,IAAI,MAAM;IAIjB,YAAY,IAAI,IAAI;IAYpB,WAAW,IAAI,IAAI;IAOnB,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAItB,sBAAsB,CAAC,gBAAgB,EAAE,MAAM,GAAG,IAAI;CAO7D"}
|
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.BulkAccountLoader = void 0;
|
|
4
4
|
const uuid_1 = require("uuid");
|
|
5
|
-
const promiseTimeout_1 = require("
|
|
6
|
-
const numericConstants_1 = require("
|
|
5
|
+
const promiseTimeout_1 = require("../util/promiseTimeout");
|
|
6
|
+
const numericConstants_1 = require("../constants/numericConstants");
|
|
7
7
|
const oneMinute = 60 * 1000;
|
|
8
8
|
class BulkAccountLoader {
|
|
9
9
|
constructor(connection, commitment, pollingFrequency) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bulkUserStatsSubscription.d.ts","sourceRoot":"","sources":["../../../src/accounts/bulkUserStatsSubscription.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"bulkUserStatsSubscription.d.ts","sourceRoot":"","sources":["../../../src/accounts/bulkUserStatsSubscription.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAGxD;;;GAGG;AACH,wBAAsB,6BAA6B,CAClD,SAAS,EAAE,SAAS,EAAE,EACtB,aAAa,EAAE,iBAAiB,GAC9B,OAAO,CAAC,IAAI,CAAC,CAqBf"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bulkUserSubscription.d.ts","sourceRoot":"","sources":["../../../src/accounts/bulkUserSubscription.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAC/B,OAAO,EAAE,iBAAiB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"bulkUserSubscription.d.ts","sourceRoot":"","sources":["../../../src/accounts/bulkUserSubscription.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAC/B,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAGxD;;;GAGG;AACH,wBAAsB,wBAAwB,CAC7C,KAAK,EAAE,IAAI,EAAE,EACb,aAAa,EAAE,iBAAiB,GAC9B,OAAO,CAAC,IAAI,CAAC,CAqBf"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"customizedCadenceBulkAccountLoader.d.ts","sourceRoot":"","sources":["../../../src/accounts/customizedCadenceBulkAccountLoader.ts"],"names":[],"mappings":";;AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAGpE,qBAAa,kCAAmC,SAAQ,iBAAiB;IACxE,OAAO,CAAC,gBAAgB,CAAwB;IAChD,OAAO,CAAC,uBAAuB,CAAgB;IAC/C,OAAO,CAAC,kBAAkB,CAAsB;IAChD,OAAO,CAAC,gBAAgB,CAAsB;IAC9C,OAAO,CAAC,uBAAuB,CAAS;gBAGvC,UAAU,EAAE,UAAU,EACtB,UAAU,EAAE,UAAU,EACtB,uBAAuB,EAAE,MAAM;IAUhC,OAAO,CAAC,iBAAiB;IAwBZ,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;YAIpB,oBAAoB;IAiBlC;;;;;OAKG;IACI,yBAAyB,CAC/B,SAAS,EAAE,SAAS,EACpB,YAAY,EAAE,MAAM,GAClB,IAAI;IAOP,OAAO,CAAC,sBAAsB;IAW9B;;;;;;;;;;;;;;OAcG;IACU,UAAU,CACtB,SAAS,EAAE,SAAS,EACpB,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,EAChD,sBAAsB,CAAC,EAAE,MAAM,GAC7B,OAAO,CAAC,MAAM,CAAC;IAmCX,aAAa,CAAC,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI;IAuB7D,iBAAiB,CAAC,SAAS,EAAE,SAAS,GAAG,MAAM,GAAG,IAAI;IAKtD,YAAY,IAAI,IAAI;IAmBpB,WAAW,IAAI,IAAI;IAWnB,uBAAuB,IAAI,IAAI;CAGtC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.CustomizedCadenceBulkAccountLoader = void 0;
|
|
4
|
-
const numericConstants_1 = require("
|
|
4
|
+
const numericConstants_1 = require("../constants/numericConstants");
|
|
5
5
|
const bulkAccountLoader_1 = require("./bulkAccountLoader");
|
|
6
6
|
const uuid_1 = require("uuid");
|
|
7
7
|
class CustomizedCadenceBulkAccountLoader extends bulkAccountLoader_1.BulkAccountLoader {
|
package/lib/node/accounts/{baseSubscribers/grpcAccountSubscriber.d.ts → grpcAccountSubscriber.d.ts}
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
2
|
/// <reference types="node" />
|
|
3
|
-
import { ResubOpts, GrpcConfigs } from '
|
|
3
|
+
import { ResubOpts, GrpcConfigs } from './types';
|
|
4
4
|
import { Program } from '@coral-xyz/anchor';
|
|
5
5
|
import { PublicKey } from '@solana/web3.js';
|
|
6
6
|
import { WebSocketAccountSubscriber } from './webSocketAccountSubscriber';
|
|
@@ -9,6 +9,7 @@ export declare class grpcAccountSubscriber<T> extends WebSocketAccountSubscriber
|
|
|
9
9
|
private stream;
|
|
10
10
|
private commitmentLevel;
|
|
11
11
|
listenerId?: number;
|
|
12
|
+
private enableReconnect;
|
|
12
13
|
private constructor();
|
|
13
14
|
static create<U>(grpcConfigs: GrpcConfigs, accountName: string, program: Program, accountPublicKey: PublicKey, decodeBuffer?: (buffer: Buffer) => U, resubOpts?: ResubOpts): Promise<grpcAccountSubscriber<U>>;
|
|
14
15
|
subscribe(onChange: (data: T) => void): Promise<void>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"grpcAccountSubscriber.d.ts","sourceRoot":"","sources":["../../../src/accounts/grpcAccountSubscriber.ts"],"names":[],"mappings":";;AAAA,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAG5C,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAU1E,qBAAa,qBAAqB,CAAC,CAAC,CAAE,SAAQ,0BAA0B,CAAC,CAAC,CAAC;IAC1E,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,MAAM,CAAwD;IACtE,OAAO,CAAC,eAAe,CAAkB;IAClC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC3B,OAAO,CAAC,eAAe,CAAU;IAEjC,OAAO;WAgBa,MAAM,CAAC,CAAC,EAC3B,WAAW,EAAE,WAAW,EACxB,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,OAAO,EAChB,gBAAgB,EAAE,SAAS,EAC3B,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,CAAC,EACpC,SAAS,CAAC,EAAE,SAAS,GACnB,OAAO,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;IAsBrB,SAAS,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAsGrD,WAAW,CAAC,OAAO,UAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;CAwC1D"}
|