* Auto label utxos based on invoice and payjoin
This PR introduces automatic labelling to transactions.
* If it is an incoming tx to an invoice, it will tag it as such.
* If it was a payjoin tx , it will tag it as such.
* If a transaction's inputs were exposed to a payjoin sender, we tag it as such.
* wip
* wip
* support in coinselection
* remove ugly hack
* support wallet transactions page
* remove messy loop
* better label template helpers
* add tests and susbcribe to event
* simplify data
* fix test
* fix label + color
* fix remove label
* renove useless call
* add toString
* fix potential crash by txid
* trim json keyword in manual label
* format file
* WIP: Add Tor Http Client Factory
This PR adds a Tor Http Client Factory so that we can do HTTP requests over socks5( which we usually use tor's socks5).
Using it for payjoin when possible.
Currently have an issue where a 503 is always returned. Must be something wrong with my tor config or the socks proxy lib Im using
* fix
* remove external dependency
* make payjoin client use tor client if available
* fix docker test
* use tor client only if available and necessary
* remove bip 79 mention
This PR allows you to use the pay button generator to create buttons that target apps. This means that you can generate an invoice that is linked to an item on the POS/Crowdfund (targeting the item is optional). The POS/Crowdfund item amount -> invoice creation amount validation works too so that the user cannot modify the amount of a perk using just html ( fixes#1392 )
* BPU Prep Work Part2
* Adjust tests to use the hot wallet when registering deriv scheme
* Add amount to payment data view for onchain payments
* Make zone limits higher when in dev mode (for tests in next PR)
* Make IPaymentMethodDetails serialize/deserialize through payment type using the network
* Allow named settings through settings repo
* Refactor some extensions for next PR
* pr changes
* use json convert for now