btcpayserver/BTCPayServer/Components
Andrew Camilleri 6049fa23a7
Support pluginable rate providers (#5777)
* Support pluginable rate providers

This PR allows plugins to provide custom rate providers, that can be contextual to a store. For example, if you use the upcoming fiat offramp plugin, or the Blink plugin, you'll probably want to configure the fetch the rates from them since they are determining the actual fiat rrate to you. However, they require API keys. This PR enables these scenarios, even much more advanced ones, but for example:
* Install fiat offramp plugin
* Configure it
* You can now use the fiat offramp rate provider (no additional config steps beyond selecting the rate source from the select, or maybe the plugin would automatically set it for you once configured)

* Apply suggestions from code review

* Simplify

* Do not use BackgroundFetcherRateProvider for contextual rate prov

---------

Co-authored-by: nicolas.dorier <nicolas.dorier@gmail.com>
2024-04-30 18:31:15 +09:00
..
AppSales Remove unused variables (#5669) 2024-01-18 09:47:39 +09:00
AppTopItems Dashboard: Show revenue data for keypad (#5317) 2023-09-14 09:26:47 +09:00
Icon Add presets in the checkout appearance (#4756) 2023-04-04 10:45:40 +09:00
InvoiceStatus The Big Cleanup: Refactor BTCPay internals (#5809) 2024-04-04 16:31:04 +09:00
LabelManager Wallet: Delete custom labels (#5324) 2023-09-19 09:55:04 +09:00
MainLogo Minor cleanups (#5460) 2023-11-20 11:18:19 +01:00
MainNav Show Lightning node availability in navigation (#5951) 2024-04-26 08:30:34 +02:00
Pager Fix typos (#5529) 2023-12-02 10:13:28 +01:00
QRCode Optimizing receipt printing, now works on POS terminal 2023-11-21 06:49:17 -08:00
StoreLightningBalance The Big Cleanup: Refactor BTCPay internals (#5809) 2024-04-04 16:31:04 +09:00
StoreLightningServices Code formatting updates (#4502) 2023-01-06 22:18:07 +09:00
StoreNumbers Remove CurrentRefund property in InvoiceData (#5494) 2023-11-21 12:52:40 +09:00
StoreRecentInvoices Invoice: Unify status display and functionality (#5360) 2023-10-11 23:12:45 +09:00
StoreRecentTransactions The Big Cleanup: Refactor BTCPay internals (#5809) 2024-04-04 16:31:04 +09:00
StoreSelector The Big Cleanup: Refactor BTCPay internals (#5809) 2024-04-04 16:31:04 +09:00
StoreWalletBalance The Big Cleanup: Refactor BTCPay internals (#5809) 2024-04-04 16:31:04 +09:00
ThemeSwitch Theme Switch: Refactor and add system option (#5473) 2023-11-21 09:56:10 +01:00
TruncateCenter Reporting: UI improvements (#5432) 2023-11-09 10:26:00 +01:00
UiExtensionPoint Plugins: Pass the current Model to the Ui extension points 2021-09-27 14:16:38 +02:00
WalletNav Support pluginable rate providers (#5777) 2024-04-30 18:31:15 +09:00