update to haveno 1.6.2 (#1)

add ui poc screenshot
separate instructions to update protobuf client
This commit is contained in:
woodser 2021-05-05 14:03:43 -04:00 committed by GitHub
parent da818b8709
commit 4dd6fab818
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
7 changed files with 18152 additions and 1080 deletions

View File

@ -4,13 +4,21 @@ A proof of concept to fetch and render data from Haveno's daemon in ReactJS.
This application is a basic [create-react-app](https://github.com/facebook/create-react-app) with typescript using [grpc-web](https://github.com/grpc/grpc-web) and a proxy ([envoy](https://www.envoyproxy.io/)) for Haveno's gRPC daemon.
# How to Run in a Browser
## How to Run in a Browser
1. [Run a local Haveno test network](https://github.com/woodser/haveno#running-a-local-haveno-test-network) except replace `./bisq-desktop` with `./bisq-daemon` when starting the arbitrator, Alice, and Bob.
1. [Run a local Haveno test network](https://github.com/woodser/haveno#running-a-local-haveno-test-network) except replace `./bisq-desktop` with `./bisq-daemon` when starting Alice at port 9999.
2. `git clone https://github.com/haveno-dex/haveno-ui-poc`
3. `./bin/build_protobuf.sh`
4. Start envoy with the config in ./config/envoy.yaml<br>
Example: `docker run --rm -it -v ~/git/haveno-ui-poc/config/envoy.yaml:/envoy.yaml -p 8080:8080 envoyproxy/envoy-dev:8a2143613d43d17d1eb35a24b4a4a4c432215606 -c /envoy.yaml`
5. `npm install`
6. `npm start` to open http://localhost:3000 in a browser
7. Confirm that the Haveno daemon version is displayed (1.3.9).
7. Confirm that the Haveno daemon version is displayed (1.6.2)
<p align="center">
<img src="haveno-ui-poc.png" width="400" height="400"/><br>
</p>
## How to Update the Protobuf Client
1. Copy grpc.proto and pb.proto from Haveno's [protobuf definitions](https://github.com/haveno-dex/haveno/tree/master/proto/src/main/proto) to ./config.
2. `./bin/build_protobuf.sh`

View File

@ -40,15 +40,56 @@ message RegisterDisputeAgentRequest {
message RegisterDisputeAgentReply {
}
///////////////////////////////////////////////////////////////////////////////////////////
// Help
///////////////////////////////////////////////////////////////////////////////////////////
service Help {
rpc GetMethodHelp (GetMethodHelpRequest) returns (GetMethodHelpReply) {
}
}
message GetMethodHelpRequest {
string methodName = 1;
}
message GetMethodHelpReply {
string methodHelp = 1;
}
///////////////////////////////////////////////////////////////////////////////////////////
// Offers
///////////////////////////////////////////////////////////////////////////////////////////
service Offers {
rpc GetOffer (GetOfferRequest) returns (GetOfferReply) {
}
rpc GetMyOffer (GetMyOfferRequest) returns (GetMyOfferReply) {
}
rpc GetOffers (GetOffersRequest) returns (GetOffersReply) {
}
rpc GetMyOffers (GetMyOffersRequest) returns (GetMyOffersReply) {
}
rpc CreateOffer (CreateOfferRequest) returns (CreateOfferReply) {
}
rpc CancelOffer (CancelOfferRequest) returns (CancelOfferReply) {
}
}
message GetOfferRequest {
string id = 1;
}
message GetOfferReply {
OfferInfo offer = 1;
}
message GetMyOfferRequest {
string id = 1;
}
message GetMyOfferReply {
OfferInfo offer = 1;
}
message GetOffersRequest {
@ -60,6 +101,15 @@ message GetOffersReply {
repeated OfferInfo offers = 1;
}
message GetMyOffersRequest {
string direction = 1;
string currencyCode = 2;
}
message GetMyOffersReply {
repeated OfferInfo offers = 1;
}
message CreateOfferRequest {
string currencyCode = 1;
string direction = 2;
@ -69,13 +119,22 @@ message CreateOfferRequest {
uint64 amount = 6;
uint64 minAmount = 7;
double buyerSecurityDeposit = 8;
string paymentAccountId = 9;
uint64 triggerPrice = 9;
string paymentAccountId = 10;
string makerFeeCurrencyCode = 11;
}
message CreateOfferReply {
OfferInfo offer = 1;
}
message CancelOfferRequest {
string id = 1;
}
message CancelOfferReply {
}
message OfferInfo {
string id = 1;
string direction = 2;
@ -87,12 +146,24 @@ message OfferInfo {
uint64 volume = 8;
uint64 minVolume = 9;
uint64 buyerSecurityDeposit = 10;
string paymentAccountId = 11; // only used when creating offer
string paymentMethodId = 12;
string paymentMethodShortName = 13;
string baseCurrencyCode = 14;
string counterCurrencyCode = 15;
uint64 date = 16;
uint64 triggerPrice = 11;
bool isCurrencyForMakerFeeBtc = 12;
string paymentAccountId = 13;
string paymentMethodId = 14;
string paymentMethodShortName = 15;
string baseCurrencyCode = 16;
string counterCurrencyCode = 17;
uint64 date = 18;
string state = 19;
uint64 sellerSecurityDeposit = 20;
string offerFeePaymentTxId = 21;
uint64 txFee = 22;
uint64 makerFee = 23;
}
message AvailabilityResultWithDescription {
AvailabilityResult availabilityResult = 1;
string description = 2;
}
///////////////////////////////////////////////////////////////////////////////////////////
@ -104,17 +175,22 @@ service PaymentAccounts {
}
rpc GetPaymentAccounts (GetPaymentAccountsRequest) returns (GetPaymentAccountsReply) {
}
rpc GetPaymentMethods (GetPaymentMethodsRequest) returns (GetPaymentMethodsReply) {
}
rpc GetPaymentAccountForm (GetPaymentAccountFormRequest) returns (GetPaymentAccountFormReply) {
}
rpc CreateCryptoCurrencyPaymentAccount (CreateCryptoCurrencyPaymentAccountRequest) returns (CreateCryptoCurrencyPaymentAccountReply) {
}
rpc GetCryptoCurrencyPaymentMethods (GetCryptoCurrencyPaymentMethodsRequest) returns (GetCryptoCurrencyPaymentMethodsReply) {
}
}
message CreatePaymentAccountRequest {
string paymentMethodId = 1;
string accountName = 2;
string accountNumber = 3;
// TODO Support all currencies. Maybe add a repeated and if only one is used its a singletonList.
string currencyCode = 4;
string paymentAccountForm = 1;
}
message CreatePaymentAccountReply {
PaymentAccount paymentAccount = 1;
}
message GetPaymentAccountsRequest {
@ -124,6 +200,39 @@ message GetPaymentAccountsReply {
repeated PaymentAccount paymentAccounts = 1;
}
message GetPaymentMethodsRequest {
}
message GetPaymentMethodsReply {
repeated PaymentMethod paymentMethods = 1;
}
message GetPaymentAccountFormRequest {
string paymentMethodId = 1;
}
message GetPaymentAccountFormReply {
string paymentAccountFormJson = 1;
}
message CreateCryptoCurrencyPaymentAccountRequest {
string accountName = 1;
string currencyCode = 2;
string address = 3;
bool tradeInstant = 4;
}
message CreateCryptoCurrencyPaymentAccountReply {
PaymentAccount paymentAccount = 1;
}
message GetCryptoCurrencyPaymentMethodsRequest {
}
message GetCryptoCurrencyPaymentMethodsReply {
repeated PaymentMethod paymentMethods = 1;
}
///////////////////////////////////////////////////////////////////////////////////////////
// Price
///////////////////////////////////////////////////////////////////////////////////////////
@ -154,7 +263,165 @@ message GetTradeStatisticsRequest {
}
message GetTradeStatisticsReply {
repeated TradeStatistics2 TradeStatistics = 1;
repeated TradeStatistics3 TradeStatistics = 1;
}
///////////////////////////////////////////////////////////////////////////////////////////
// Shutdown
///////////////////////////////////////////////////////////////////////////////////////////
service ShutdownServer {
rpc Stop (StopRequest) returns (StopReply) {
}
}
message StopRequest {
}
message StopReply {
}
///////////////////////////////////////////////////////////////////////////////////////////
// Trades
///////////////////////////////////////////////////////////////////////////////////////////
service Trades {
rpc GetTrade (GetTradeRequest) returns (GetTradeReply) {
}
rpc TakeOffer (TakeOfferRequest) returns (TakeOfferReply) {
}
rpc ConfirmPaymentStarted (ConfirmPaymentStartedRequest) returns (ConfirmPaymentStartedReply) {
}
rpc ConfirmPaymentReceived (ConfirmPaymentReceivedRequest) returns (ConfirmPaymentReceivedReply) {
}
rpc KeepFunds (KeepFundsRequest) returns (KeepFundsReply) {
}
rpc WithdrawFunds (WithdrawFundsRequest) returns (WithdrawFundsReply) {
}
}
message TakeOfferRequest {
string offerId = 1;
string paymentAccountId = 2;
string takerFeeCurrencyCode = 3;
}
message TakeOfferReply {
TradeInfo trade = 1;
AvailabilityResultWithDescription failureReason = 2;
}
message ConfirmPaymentStartedRequest {
string tradeId = 1;
}
message ConfirmPaymentStartedReply {
}
message ConfirmPaymentReceivedRequest {
string tradeId = 1;
}
message ConfirmPaymentReceivedReply {
}
message GetTradeRequest {
string tradeId = 1;
}
message GetTradeReply {
TradeInfo trade = 1;
}
message KeepFundsRequest {
string tradeId = 1;
}
message KeepFundsReply {
}
message WithdrawFundsRequest {
string tradeId = 1;
string address = 2;
string memo = 3;
}
message WithdrawFundsReply {
}
message TradeInfo {
OfferInfo offer = 1;
string tradeId = 2;
string shortId = 3;
uint64 date = 4;
string role = 5;
uint64 txFeeAsLong = 7;
uint64 takerFeeAsLong = 8;
string takerFeeTxId = 9;
reserved 10; // was depositTxId
string payoutTxId = 11;
uint64 tradeAmountAsLong = 12;
uint64 tradePrice = 13;
string tradingPeerNodeAddress = 14;
string state = 15;
string phase = 16;
string tradePeriodState = 17;
bool isDepositPublished = 18;
bool isDepositConfirmed = 19;
bool isFiatSent = 20;
bool isFiatReceived = 21;
bool isPayoutPublished = 22;
bool isWithdrawn = 23;
string contractAsJson = 24;
ContractInfo contract = 25;
string makerDepositTxId = 100;
string takerDepositTxId = 101;
}
message ContractInfo {
string buyerNodeAddress = 1;
string sellerNodeAddress = 2;
reserved 3; // was mediatorNodeAddress
reserved 4; // was refundAgendNodeAddress
bool isBuyerMakerAndSellerTaker = 5;
string makerAccountId = 6;
string takerAccountId = 7;
PaymentAccountPayloadInfo makerPaymentAccountPayload = 8;
PaymentAccountPayloadInfo takerPaymentAccountPayload = 9;
string makerPayoutAddressString = 10;
string takerPayoutAddressString = 11;
uint64 lockTime = 12;
string arbitratorNodeAddress = 100;
}
message PaymentAccountPayloadInfo {
string id = 1;
string paymentMethodId = 2;
string address = 3;
}
///////////////////////////////////////////////////////////////////////////////////////////
// Transactions
///////////////////////////////////////////////////////////////////////////////////////////
message TxFeeRateInfo {
bool useCustomTxFeeRate = 1;
uint64 customTxFeeRate = 2;
uint64 feeServiceRate = 3;
uint64 lastFeeServiceRequestTs = 4;
uint64 minFeeServiceRate = 5;
}
message TxInfo {
string txId = 1;
uint64 inputSum = 2;
uint64 outputSum = 3;
uint64 fee = 4;
int32 size = 5;
bool isPending = 6;
string memo = 7;
}
///////////////////////////////////////////////////////////////////////////////////////////
@ -162,10 +429,26 @@ message GetTradeStatisticsReply {
///////////////////////////////////////////////////////////////////////////////////////////
service Wallets {
rpc GetBalance (GetBalanceRequest) returns (GetBalanceReply) {
rpc GetBalances (GetBalancesRequest) returns (GetBalancesReply) {
}
rpc GetAddressBalance (GetAddressBalanceRequest) returns (GetAddressBalanceReply) {
}
rpc GetUnusedBsqAddress (GetUnusedBsqAddressRequest) returns (GetUnusedBsqAddressReply) {
}
rpc SendBsq (SendBsqRequest) returns (SendBsqReply) {
}
rpc SendBtc (SendBtcRequest) returns (SendBtcReply) {
}
rpc VerifyBsqSentToAddress (VerifyBsqSentToAddressRequest) returns (VerifyBsqSentToAddressReply) {
}
rpc GetTxFeeRate (GetTxFeeRateRequest) returns (GetTxFeeRateReply) {
}
rpc SetTxFeeRatePreference (SetTxFeeRatePreferenceRequest) returns (SetTxFeeRatePreferenceReply) {
}
rpc UnsetTxFeeRatePreference (UnsetTxFeeRatePreferenceRequest) returns (UnsetTxFeeRatePreferenceReply) {
}
rpc GetTransaction (GetTransactionRequest) returns (GetTransactionReply) {
}
rpc GetFundingAddresses (GetFundingAddressesRequest) returns (GetFundingAddressesReply) {
}
rpc SetWalletPassword (SetWalletPasswordRequest) returns (SetWalletPasswordReply) {
@ -178,11 +461,12 @@ service Wallets {
}
}
message GetBalanceRequest {
message GetBalancesRequest {
string currencyCode = 1;
}
message GetBalanceReply {
uint64 balance = 1;
message GetBalancesReply {
BalancesInfo balances = 1;
}
message GetAddressBalanceRequest {
@ -193,6 +477,73 @@ message GetAddressBalanceReply {
AddressBalanceInfo addressBalanceInfo = 1;
}
message GetUnusedBsqAddressRequest {
}
message GetUnusedBsqAddressReply {
string address = 1;
}
message SendBsqRequest {
string address = 1;
string amount = 2;
string txFeeRate = 3;
}
message SendBsqReply {
TxInfo txInfo = 1;
}
message SendBtcRequest {
string address = 1;
string amount = 2;
string txFeeRate = 3;
string memo = 4;
}
message SendBtcReply {
TxInfo txInfo = 1;
}
message VerifyBsqSentToAddressRequest {
string address = 1;
string amount = 2;
}
message VerifyBsqSentToAddressReply {
bool isAmountReceived = 1;
}
message GetTxFeeRateRequest {
}
message GetTxFeeRateReply {
TxFeeRateInfo txFeeRateInfo = 1;
}
message SetTxFeeRatePreferenceRequest {
uint64 txFeeRatePreference = 1;
}
message SetTxFeeRatePreferenceReply {
TxFeeRateInfo txFeeRateInfo = 1;
}
message UnsetTxFeeRatePreferenceRequest {
}
message UnsetTxFeeRatePreferenceReply {
TxFeeRateInfo txFeeRateInfo = 1;
}
message GetTransactionRequest {
string txId = 1;
}
message GetTransactionReply {
TxInfo txInfo = 1;
}
message GetFundingAddressesRequest {
}
@ -229,10 +580,35 @@ message UnlockWalletRequest {
message UnlockWalletReply {
}
message BalancesInfo {
// Field names are shortened for readability's sake, i.e.,
// balancesInfo.getBtc().getAvailableBalance() is cleaner than
// balancesInfo.getBtcBalanceInfo().getAvailableBalance().
BsqBalanceInfo bsq = 1;
BtcBalanceInfo btc = 2;
}
message BsqBalanceInfo {
uint64 availableConfirmedBalance = 1;
uint64 unverifiedBalance = 2;
uint64 unconfirmedChangeBalance = 3;
uint64 lockedForVotingBalance = 4;
uint64 lockupBondsBalance = 5;
uint64 unlockingBondsBalance = 6;
}
message BtcBalanceInfo {
uint64 availableBalance = 1;
uint64 reservedBalance = 2;
uint64 totalAvailableBalance = 3;
uint64 lockedBalance = 4;
}
message AddressBalanceInfo {
string address = 1;
int64 balance = 2;
int64 numConfirmations = 3;
bool isAddressUnused = 4;
}
///////////////////////////////////////////////////////////////////////////////////////////
@ -250,4 +626,3 @@ message GetVersionRequest {
message GetVersionReply {
string version = 1;
}

View File

@ -79,6 +79,9 @@ message NetworkEnvelope {
RefreshTradeStateRequest refresh_trade_state_request = 50 [deprecated = true];
TraderSignedWitnessMessage trader_signed_witness_message = 51 [deprecated = true];
GetInventoryRequest get_inventory_request = 52;
GetInventoryResponse get_inventory_response = 53;
InitTradeRequest init_trade_request = 1001;
MakerReadyToFundMultisigRequest maker_ready_to_fund_multisig_request = 1002;
MakerReadyToFundMultisigResponse maker_ready_to_fund_multisig_response = 1003;
@ -146,6 +149,16 @@ message Pong {
int32 request_nonce = 1;
}
// Inventory
message GetInventoryRequest {
string version = 1;
}
message GetInventoryResponse {
map<string, string> inventory = 1;
}
// offer
message OfferAvailabilityRequest {
@ -154,6 +167,7 @@ message OfferAvailabilityRequest {
int64 takers_trade_price = 3;
repeated int32 supported_capabilities = 4;
string uid = 5;
bool is_taker_api_user = 6;
}
message OfferAvailabilityResponse {
@ -334,13 +348,15 @@ message DelayedPayoutTxSignatureRequest {
string trade_id = 2;
NodeAddress sender_node_address = 3;
bytes delayed_payout_tx = 4;
bytes delayed_payout_tx_seller_signature = 5;
}
message DelayedPayoutTxSignatureResponse {
string uid = 1;
string trade_id = 2;
NodeAddress sender_node_address = 3;
bytes delayed_payout_tx_signature = 4;
bytes delayed_payout_tx_buyer_signature = 4;
bytes deposit_tx = 5;
}
message DepositTxAndDelayedPayoutTxMessage {
@ -355,10 +371,11 @@ message DepositTxMessage {
string uid = 1;
string trade_id = 2;
NodeAddress sender_node_address = 3;
PubKeyRing pub_key_ring = 4;
reserved 5; // WAS: bytes deposit_tx = 5;
string trade_fee_tx_id = 6;
string deposit_tx_id = 7;
bytes deposit_tx_without_witnesses = 4;
PubKeyRing pub_key_ring = 100;
reserved 5; // WAS: bytes deposit_tx = 101;
string trade_fee_tx_id = 102;
string deposit_tx_id = 103;
}
message PeerPublishedDelayedPayoutTxMessage {
@ -608,9 +625,7 @@ message StoragePayload {
Mediator mediator = 3;
Filter filter = 4;
// not used anymore from v0.6 on. But leave it for receiving TradeStatistics objects from older
// versions and convert it to TradeStatistics2 objects.
TradeStatistics trade_statistics = 5 [deprecated = true];
// TradeStatistics trade_statistics = 5 [deprecated = true]; Removed in v.1.4.0
MailboxStoragePayload mailbox_storage_payload = 6;
OfferPayload offer_payload = 7;
@ -622,10 +637,11 @@ message StoragePayload {
message PersistableNetworkPayload {
oneof message {
AccountAgeWitness account_age_witness = 1;
TradeStatistics2 trade_statistics2 = 2;
TradeStatistics2 trade_statistics2 = 2 [deprecated = true];
ProposalPayload proposal_payload = 3;
BlindVotePayload blind_vote_payload = 4;
SignedWitness signed_witness = 5;
TradeStatistics3 trade_statistics3 = 6;
}
}
@ -656,6 +672,28 @@ message DataAndSeqNrPair {
int32 sequence_number = 2;
}
message MailboxMessageList {
repeated MailboxItem mailbox_item = 1;
}
message RemovedPayloadsMap {
map<string, uint64> date_by_hashes = 1;
}
message IgnoredMailboxMap {
map<string, uint64> data = 1;
}
message MailboxItem {
ProtectedMailboxStorageEntry protected_mailbox_storage_entry = 1;
DecryptedMessageWithPubKey decrypted_message_with_pub_key = 2;
}
message DecryptedMessageWithPubKey {
NetworkEnvelope network_envelope = 1;
bytes signature_pub_key_bytes = 2;
}
// misc
message PrivateNotificationPayload {
@ -681,6 +719,7 @@ message Alert {
string signature_as_base64 = 4;
bytes owner_pub_key_bytes = 5;
map<string, string> extra_data = 6;
bool is_pre_release_info = 7;
}
message Arbitrator {
@ -722,7 +761,7 @@ message RefundAgent {
}
message Filter {
repeated string banned_node_address = 1;
repeated string node_addresses_banned_from_trading = 1;
repeated string banned_offer_ids = 2;
repeated PaymentAccountFilter banned_payment_accounts = 3;
string signature_as_base64 = 4;
@ -746,48 +785,48 @@ message Filter {
string signer_pub_key_as_hex = 22;
repeated string bannedPrivilegedDevPubKeys = 23;
bool disable_auto_conf = 24;
repeated string banned_auto_conf_explorers = 25;
repeated string node_addresses_banned_from_network = 26;
bool disable_api = 27;
bool disable_mempool_validation = 28;
}
// not used anymore from v0.6 on. But leave it for receiving TradeStatistics objects from older
// versions and convert it to TradeStatistics2 objects.
message TradeStatistics {
string base_currency = 1;
string counter_currency = 2;
OfferPayload.Direction direction = 3;
int64 trade_price = 4;
int64 trade_amount = 5;
int64 trade_date = 6;
string payment_method_id = 7;
int64 offer_date = 8;
bool offer_use_market_based_price = 9;
double offer_market_price_margin = 10;
int64 offer_amount = 11;
int64 offer_min_amount = 12;
string offer_id = 13;
string deposit_tx_id = 14; // Old - string deposit_tx_id = 14;
bytes signature_pub_key_bytes = 15;
map<string, string> extra_data = 16;
}
// Deprecated
message TradeStatistics2 {
string base_currency = 1;
string counter_currency = 2;
OfferPayload.Direction direction = 3;
int64 trade_price = 4;
int64 trade_amount = 5;
int64 trade_date = 6;
string payment_method_id = 7;
int64 offer_date = 8;
bool offer_use_market_based_price = 9;
double offer_market_price_margin = 10;
int64 offer_amount = 11;
int64 offer_min_amount = 12;
string offer_id = 13;
reserved 14; // Old - string deposit_tx_id = 14;
bytes hash = 15;
map<string, string> extra_data = 16;
string maker_deposit_tx_id = 1000;
string taker_deposit_tx_id = 1001;
string base_currency = 1 [deprecated = true];
string counter_currency = 2 [deprecated = true];
OfferPayload.Direction direction = 3 [deprecated = true];
int64 trade_price = 4 [deprecated = true];
int64 trade_amount = 5 [deprecated = true];
int64 trade_date = 6 [deprecated = true];
string payment_method_id = 7 [deprecated = true];
int64 offer_date = 8 [deprecated = true];
bool offer_use_market_based_price = 9 [deprecated = true];
double offer_market_price_margin = 10 [deprecated = true];
int64 offer_amount = 11 [deprecated = true];
int64 offer_min_amount = 12 [deprecated = true];
string offer_id = 13 [deprecated = true];
string deposit_tx_id = 14 [deprecated = true];
bytes hash = 15 [deprecated = true];
map<string, string> extra_data = 16 [deprecated = true];
string maker_deposit_tx_id = 100;
string taker_deposit_tx_id = 101;
}
message TradeStatistics3 {
string currency = 1;
int64 price = 2;
int64 amount = 3;
string payment_method = 4;
int64 date = 5;
reserved 6; // was string mediator = 6;
reserved 7; // was string refund_agent = 7;
bytes hash = 8;
map<string, string> extra_data = 9;
string arbitrator = 100;
string maker_deposit_tx_id = 101;
string taker_deposit_tx_id = 102;
}
message MailboxStoragePayload {
@ -871,6 +910,13 @@ message SignedWitness {
message Dispute {
enum State {
NEEDS_UPGRADE = 0;
NEW = 1;
OPEN = 2;
REOPENED = 3;
CLOSED = 4;
}
string trade_id = 1;
string id = 2;
int32 trader_id = 3;
@ -898,7 +944,10 @@ message Dispute {
string mediators_dispute_result = 25;
string delayed_payout_tx_id = 26;
string donation_address_of_delayed_payout_tx = 27;
bool is_opener = 28;
State state = 28;
int64 trade_period_end = 29;
map<string, string> extra_data = 30;
bool is_opener = 100;
}
message Attachment {
@ -991,6 +1040,9 @@ enum AvailabilityResult {
USER_IGNORED = 8;
MISSING_MANDATORY_CAPABILITY = 9;
NO_REFUND_AGENTS = 10;
UNCONF_TX_LIMIT_HIT = 11;
MAKER_DENIED_API_USER = 12;
PRICE_CHECK_FAILED = 13;
}
///////////////////////////////////////////////////////////////////////////////////////////
@ -1027,6 +1079,10 @@ message PaymentAccountPayload {
AdvancedCashAccountPayload advanced_cash_account_payload = 26;
InstantCryptoCurrencyAccountPayload instant_crypto_currency_account_payload = 27;
JapanBankAccountPayload japan_bank_account_payload = 28;
TransferwiseAccountPayload Transferwise_account_payload = 29;
AustraliaPayidPayload australia_payid_payload = 30;
AmazonGiftCardAccountPayload amazon_gift_card_account_payload = 31;
CashByMailAccountPayload cash_by_mail_account_payload = 32;
}
map<string, string> exclude_from_json_data = 15;
}
@ -1094,6 +1150,11 @@ message JapanBankAccountPayload {
string bank_account_number = 7;
}
message AustraliaPayidPayload {
string bank_account_name = 1;
string payid = 2;
}
message SpecificBanksAccountPayload {
repeated string accepted_banks = 1;
}
@ -1129,6 +1190,11 @@ message WesternUnionAccountPayload {
string email = 4;
}
message AmazonGiftCardAccountPayload {
string email_or_mobile_nr = 1;
string country_code = 2;
}
message SepaAccountPayload {
string holder_name = 1;
string iban = 2;
@ -1219,6 +1285,12 @@ message F2FAccountPayload {
string extra_info = 3;
}
message CashByMailAccountPayload {
string postal_address = 1;
string contact = 2;
string extra_info = 3;
}
message PromptPayAccountPayload {
string prompt_pay_id = 1;
}
@ -1227,6 +1299,10 @@ message AdvancedCashAccountPayload {
string account_nr = 1;
}
message TransferwiseAccountPayload {
string email = 1;
}
///////////////////////////////////////////////////////////////////////////////////////////
// PersistableEnvelope
///////////////////////////////////////////////////////////////////////////////////////////
@ -1252,7 +1328,7 @@ message PersistableEnvelope {
// BsqState bsq_state = 12; // not used but as other non-dao data have a higher index number we leave it to make clear that we cannot change following indexes
AccountAgeWitnessStore account_age_witness_store = 13;
TradeStatistics2Store trade_statistics2_store = 14;
TradeStatistics2Store trade_statistics2_store = 14 [deprecated = true];
// PersistableNetworkPayloadList persistable_network_payload_list = 15; // long deprecated & migration away from it is already done
@ -1271,8 +1347,12 @@ message PersistableEnvelope {
SignedWitnessStore signed_witness_store = 28;
MediationDisputeList mediation_dispute_list = 29;
RefundDisputeList refund_dispute_list = 30;
TradeStatistics3Store trade_statistics3_store = 31;
MailboxMessageList mailbox_message_list = 32;
IgnoredMailboxMap ignored_mailbox_map = 33;
RemovedPayloadsMap removed_payloads_map = 34;
XmrAddressEntryList xmr_address_entry_list = 31;
XmrAddressEntryList xmr_address_entry_list = 100;
}
}
@ -1313,8 +1393,13 @@ message SignedWitnessStore {
}
// We use a list not a hash map to save disc space. The hash can be calculated from the payload anyway
// Deprecated
message TradeStatistics2Store {
repeated TradeStatistics2 items = 1;
repeated TradeStatistics2 items = 1 [deprecated = true];
}
message TradeStatistics3Store {
repeated TradeStatistics3 items = 1;
}
message PeerList {
@ -1341,6 +1426,7 @@ message AddressEntry {
bytes pub_key = 9;
bytes pub_key_hash = 10;
int64 coin_locked_in_multi_sig = 11;
bool segwit = 12;
}
message XmrAddressEntryList {
@ -1410,6 +1496,7 @@ message OpenOffer {
NodeAddress arbitrator_node_address = 3;
NodeAddress mediator_node_address = 4;
NodeAddress refund_agent_node_address = 5;
int64 trigger_price = 6;
}
message Tradable {
@ -1529,13 +1616,14 @@ message Trade {
int64 last_refresh_request_date = 36 [deprecated = true];
string counter_currency_extra_data = 37;
string asset_tx_proof_result = 38; // name of AssetTxProofResult enum
string uid = 39;
NodeAddress taker_node_address = 1000; // TODO (woodser): re-order? need to reset trades
PubKeyRing taker_pub_key_ring = 1001;
string taker_deposit_tx_id = 1002;
NodeAddress maker_node_address = 1003;
PubKeyRing maker_pub_key_ring = 1004;
string maker_deposit_tx_id = 1005;
NodeAddress taker_node_address = 100;
PubKeyRing taker_pub_key_ring = 101;
string taker_deposit_tx_id = 102;
NodeAddress maker_node_address = 103;
PubKeyRing maker_pub_key_ring = 104;
string maker_deposit_tx_id = 105;
}
message BuyerAsMakerTrade {
@ -1675,7 +1763,7 @@ message PreferencesPayload {
bool use_tor_for_bitcoin_j = 12;
bool show_own_offers_in_offer_book = 13;
TradeCurrency preferred_trade_currency = 14;
int64 withdrawal_tx_fee_in_bytes = 15;
int64 withdrawal_tx_fee_in_vbytes = 15;
bool use_custom_withdrawal_tx_fee = 16;
double max_price_distance_in_percent = 17;
string offer_book_chart_screen_currency_code = 18;
@ -1717,6 +1805,11 @@ message PreferencesPayload {
int32 css_theme = 54;
bool tac_accepted_v120 = 55;
repeated AutoConfirmSettings auto_confirm_settings = 56;
double bsq_average_trim_threshold = 57;
bool hide_non_account_payment_methods = 58;
bool show_offers_matching_my_accounts = 59;
bool deny_api_taker = 60;
bool notify_on_pre_release = 61;
}
message AutoConfirmSettings {
@ -1747,6 +1840,7 @@ message UserPayload {
repeated MarketAlertFilter market_alert_filters = 13;
repeated RefundAgent accepted_refund_agents = 14;
RefundAgent registered_refund_agent = 15;
map<string, string> cookie = 16;
}
///////////////////////////////////////////////////////////////////////////////////////////
@ -1895,6 +1989,8 @@ enum ScriptType {
WITNESS_V0_KEYHASH = 6;
WITNESS_V0_SCRIPTHASH = 7;
NONSTANDARD = 8;
WITNESS_UNKNOWN = 9;
WITNESS_V1_TAPROOT = 10;
}
message PubKeyScript {

BIN
haveno-ui-poc.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 116 KiB

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff